rugged 0.27.7 → 0.27.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +99 -51
- data/vendor/libgit2/COPYING +28 -0
- data/vendor/libgit2/cmake/Modules/AddCFlagIfSupported.cmake +15 -1
- data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.c.in +29 -0
- data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.cmake +96 -0
- data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +9 -8
- data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
- data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +28 -0
- data/vendor/libgit2/cmake/Modules/FindIconv.cmake +11 -6
- data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +38 -0
- data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +37 -0
- data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +6 -0
- data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +110 -0
- data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +53 -0
- data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +124 -0
- data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +66 -0
- data/vendor/libgit2/deps/http-parser/http_parser.c +11 -6
- data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +21 -0
- data/vendor/libgit2/deps/ntlmclient/compat.h +33 -0
- data/vendor/libgit2/deps/ntlmclient/crypt.h +64 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +120 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +18 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +145 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +18 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +130 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +21 -0
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +1420 -0
- data/vendor/libgit2/deps/ntlmclient/ntlm.h +174 -0
- data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +320 -0
- data/vendor/libgit2/deps/ntlmclient/unicode.h +36 -0
- data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +445 -0
- data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +201 -0
- data/vendor/libgit2/deps/ntlmclient/utf8.h +1257 -0
- data/vendor/libgit2/deps/ntlmclient/util.c +21 -0
- data/vendor/libgit2/deps/ntlmclient/util.h +14 -0
- data/vendor/libgit2/deps/pcre/CMakeLists.txt +140 -0
- data/vendor/libgit2/deps/pcre/COPYING +5 -0
- data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +22 -0
- data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +17 -0
- data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +58 -0
- data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +29 -0
- data/vendor/libgit2/deps/pcre/config.h.in +57 -0
- data/vendor/libgit2/deps/pcre/pcre.h +641 -0
- data/vendor/libgit2/deps/pcre/pcre_byte_order.c +319 -0
- data/vendor/libgit2/deps/pcre/pcre_chartables.c +198 -0
- data/vendor/libgit2/deps/pcre/pcre_compile.c +9800 -0
- data/vendor/libgit2/deps/pcre/pcre_config.c +190 -0
- data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +3676 -0
- data/vendor/libgit2/deps/pcre/pcre_exec.c +7173 -0
- data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +245 -0
- data/vendor/libgit2/deps/pcre/pcre_get.c +669 -0
- data/vendor/libgit2/deps/pcre/pcre_globals.c +86 -0
- data/vendor/libgit2/deps/pcre/pcre_internal.h +2787 -0
- data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +11913 -0
- data/vendor/libgit2/deps/pcre/pcre_maketables.c +156 -0
- data/vendor/libgit2/deps/pcre/pcre_newline.c +210 -0
- data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +94 -0
- data/vendor/libgit2/deps/pcre/pcre_printint.c +834 -0
- data/vendor/libgit2/deps/pcre/pcre_refcount.c +92 -0
- data/vendor/libgit2/deps/pcre/pcre_string_utils.c +211 -0
- data/vendor/libgit2/deps/pcre/pcre_study.c +1686 -0
- data/vendor/libgit2/deps/pcre/pcre_tables.c +727 -0
- data/vendor/libgit2/deps/pcre/pcre_ucd.c +3644 -0
- data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +301 -0
- data/vendor/libgit2/deps/pcre/pcre_version.c +98 -0
- data/vendor/libgit2/deps/pcre/pcre_xclass.c +268 -0
- data/vendor/libgit2/deps/pcre/pcreposix.c +421 -0
- data/vendor/libgit2/deps/pcre/pcreposix.h +117 -0
- data/vendor/libgit2/deps/pcre/ucp.h +224 -0
- data/vendor/libgit2/deps/winhttp/COPYING.GPL +993 -0
- data/vendor/libgit2/deps/winhttp/COPYING.LGPL +502 -0
- data/vendor/libgit2/deps/zlib/CMakeLists.txt +1 -0
- data/vendor/libgit2/deps/zlib/COPYING +27 -0
- data/vendor/libgit2/deps/zlib/adler32.c +0 -7
- data/vendor/libgit2/deps/zlib/crc32.c +0 -7
- data/vendor/libgit2/include/git2/annotated_commit.h +9 -0
- data/vendor/libgit2/include/git2/apply.h +149 -0
- data/vendor/libgit2/include/git2/attr.h +20 -13
- data/vendor/libgit2/include/git2/blame.h +4 -4
- data/vendor/libgit2/include/git2/blob.h +44 -12
- data/vendor/libgit2/include/git2/buffer.h +20 -26
- data/vendor/libgit2/include/git2/cert.h +135 -0
- data/vendor/libgit2/include/git2/checkout.h +53 -21
- data/vendor/libgit2/include/git2/cherrypick.h +3 -3
- data/vendor/libgit2/include/git2/clone.h +5 -5
- data/vendor/libgit2/include/git2/commit.h +25 -3
- data/vendor/libgit2/include/git2/common.h +35 -10
- data/vendor/libgit2/include/git2/config.h +29 -19
- data/vendor/libgit2/include/git2/cred.h +308 -0
- data/vendor/libgit2/include/git2/deprecated.h +493 -0
- data/vendor/libgit2/include/git2/describe.h +4 -4
- data/vendor/libgit2/include/git2/diff.h +177 -135
- data/vendor/libgit2/include/git2/errors.h +53 -46
- data/vendor/libgit2/include/git2/filter.h +8 -0
- data/vendor/libgit2/include/git2/index.h +74 -52
- data/vendor/libgit2/include/git2/indexer.h +76 -6
- data/vendor/libgit2/include/git2/merge.h +25 -10
- data/vendor/libgit2/include/git2/net.h +0 -5
- data/vendor/libgit2/include/git2/notes.h +1 -1
- data/vendor/libgit2/include/git2/object.h +17 -29
- data/vendor/libgit2/include/git2/odb.h +12 -11
- data/vendor/libgit2/include/git2/odb_backend.h +10 -9
- data/vendor/libgit2/include/git2/oid.h +2 -2
- data/vendor/libgit2/include/git2/pack.h +14 -3
- data/vendor/libgit2/include/git2/proxy.h +5 -3
- data/vendor/libgit2/include/git2/rebase.h +46 -2
- data/vendor/libgit2/include/git2/refs.h +34 -16
- data/vendor/libgit2/include/git2/remote.h +111 -14
- data/vendor/libgit2/include/git2/repository.h +69 -34
- data/vendor/libgit2/include/git2/revert.h +1 -1
- data/vendor/libgit2/include/git2/revwalk.h +7 -7
- data/vendor/libgit2/include/git2/signature.h +2 -2
- data/vendor/libgit2/include/git2/stash.h +5 -5
- data/vendor/libgit2/include/git2/status.h +26 -17
- data/vendor/libgit2/include/git2/submodule.h +23 -6
- data/vendor/libgit2/include/git2/sys/alloc.h +18 -18
- data/vendor/libgit2/include/git2/sys/commit.h +1 -1
- data/vendor/libgit2/include/git2/sys/config.h +13 -13
- data/vendor/libgit2/include/git2/sys/cred.h +90 -0
- data/vendor/libgit2/include/git2/sys/filter.h +6 -6
- data/vendor/libgit2/include/git2/sys/merge.h +3 -3
- data/vendor/libgit2/include/git2/sys/odb_backend.h +66 -22
- data/vendor/libgit2/include/git2/sys/path.h +14 -5
- data/vendor/libgit2/include/git2/sys/refdb_backend.h +76 -40
- data/vendor/libgit2/include/git2/sys/repository.h +5 -1
- data/vendor/libgit2/include/git2/sys/stream.h +92 -12
- data/vendor/libgit2/include/git2/sys/transport.h +129 -83
- data/vendor/libgit2/include/git2/tag.h +13 -4
- data/vendor/libgit2/include/git2/trace.h +2 -2
- data/vendor/libgit2/include/git2/transport.h +11 -311
- data/vendor/libgit2/include/git2/tree.h +4 -4
- data/vendor/libgit2/include/git2/types.h +25 -106
- data/vendor/libgit2/include/git2/version.h +3 -3
- data/vendor/libgit2/include/git2/worktree.h +5 -5
- data/vendor/libgit2/include/git2.h +4 -0
- data/vendor/libgit2/src/CMakeLists.txt +104 -235
- data/vendor/libgit2/src/alloc.c +14 -18
- data/vendor/libgit2/src/{stdalloc.c → allocators/stdalloc.c} +7 -8
- data/vendor/libgit2/src/{stdalloc.h → allocators/stdalloc.h} +4 -4
- data/vendor/libgit2/src/allocators/win32_crtdbg.c +118 -0
- data/vendor/libgit2/src/{transports/cred.h → allocators/win32_crtdbg.h} +5 -4
- data/vendor/libgit2/src/annotated_commit.c +18 -11
- data/vendor/libgit2/src/apply.c +535 -28
- data/vendor/libgit2/src/apply.h +3 -1
- data/vendor/libgit2/src/array.h +2 -2
- data/vendor/libgit2/src/attr.c +77 -71
- data/vendor/libgit2/src/attr_file.c +203 -117
- data/vendor/libgit2/src/attr_file.h +9 -9
- data/vendor/libgit2/src/attrcache.c +49 -51
- data/vendor/libgit2/src/attrcache.h +2 -1
- data/vendor/libgit2/src/blame.c +38 -18
- data/vendor/libgit2/src/blame.h +1 -1
- data/vendor/libgit2/src/blame_git.c +29 -15
- data/vendor/libgit2/src/blob.c +123 -37
- data/vendor/libgit2/src/blob.h +19 -2
- data/vendor/libgit2/src/branch.c +47 -23
- data/vendor/libgit2/src/buf_text.c +7 -6
- data/vendor/libgit2/src/buffer.c +60 -53
- data/vendor/libgit2/src/cache.c +38 -45
- data/vendor/libgit2/src/cache.h +3 -3
- data/vendor/libgit2/src/cc-compat.h +20 -3
- data/vendor/libgit2/src/checkout.c +77 -67
- data/vendor/libgit2/src/cherrypick.c +12 -6
- data/vendor/libgit2/src/clone.c +36 -14
- data/vendor/libgit2/src/clone.h +4 -0
- data/vendor/libgit2/src/commit.c +103 -48
- data/vendor/libgit2/src/commit.h +7 -0
- data/vendor/libgit2/src/commit_list.c +36 -78
- data/vendor/libgit2/src/commit_list.h +2 -2
- data/vendor/libgit2/src/common.h +24 -90
- data/vendor/libgit2/src/config.c +203 -176
- data/vendor/libgit2/src/config.h +8 -20
- data/vendor/libgit2/src/config_backend.h +96 -0
- data/vendor/libgit2/src/config_cache.c +41 -35
- data/vendor/libgit2/src/config_entries.c +229 -0
- data/vendor/libgit2/src/config_entries.h +24 -0
- data/vendor/libgit2/src/config_file.c +422 -680
- data/vendor/libgit2/src/config_mem.c +220 -0
- data/vendor/libgit2/src/config_parse.c +96 -68
- data/vendor/libgit2/src/config_parse.h +15 -14
- data/vendor/libgit2/src/config_snapshot.c +206 -0
- data/vendor/libgit2/src/crlf.c +219 -196
- data/vendor/libgit2/src/delta.c +25 -18
- data/vendor/libgit2/src/describe.c +42 -41
- data/vendor/libgit2/src/diff.c +52 -67
- data/vendor/libgit2/src/diff.h +2 -1
- data/vendor/libgit2/src/diff_driver.c +44 -46
- data/vendor/libgit2/src/diff_file.c +16 -14
- data/vendor/libgit2/src/diff_file.h +1 -1
- data/vendor/libgit2/src/diff_generate.c +158 -103
- data/vendor/libgit2/src/diff_generate.h +3 -3
- data/vendor/libgit2/src/diff_parse.c +4 -4
- data/vendor/libgit2/src/diff_print.c +34 -22
- data/vendor/libgit2/src/diff_stats.c +22 -7
- data/vendor/libgit2/src/diff_tform.c +18 -16
- data/vendor/libgit2/src/diff_xdiff.c +3 -3
- data/vendor/libgit2/src/errors.c +51 -39
- data/vendor/libgit2/src/errors.h +81 -0
- data/vendor/libgit2/src/features.h.in +9 -3
- data/vendor/libgit2/src/fetch.c +8 -3
- data/vendor/libgit2/src/fetchhead.c +12 -12
- data/vendor/libgit2/src/filebuf.c +28 -32
- data/vendor/libgit2/src/filebuf.h +2 -2
- data/vendor/libgit2/src/filter.c +47 -33
- data/vendor/libgit2/src/filter.h +0 -10
- data/vendor/libgit2/src/{fileops.c → futils.c} +70 -63
- data/vendor/libgit2/src/{fileops.h → futils.h} +6 -6
- data/vendor/libgit2/src/global.c +35 -55
- data/vendor/libgit2/src/global.h +0 -2
- data/vendor/libgit2/src/hash/sha1/collisiondetect.c +48 -0
- data/vendor/libgit2/src/hash/sha1/collisiondetect.h +19 -0
- data/vendor/libgit2/src/hash/{hash_common_crypto.h → sha1/common_crypto.c} +17 -17
- data/vendor/libgit2/src/hash/sha1/common_crypto.h +19 -0
- data/vendor/libgit2/src/hash/{hash_generic.c → sha1/generic.c} +22 -10
- data/vendor/libgit2/src/hash/{hash_generic.h → sha1/generic.h} +4 -10
- data/vendor/libgit2/src/hash/{hash_mbedtls.c → sha1/mbedtls.c} +15 -7
- data/vendor/libgit2/src/hash/{hash_mbedtls.h → sha1/mbedtls.h} +6 -7
- data/vendor/libgit2/src/hash/sha1/openssl.c +59 -0
- data/vendor/libgit2/src/hash/sha1/openssl.h +19 -0
- data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.c +14 -3
- data/vendor/libgit2/src/hash/{hash_win32.c → sha1/win32.c} +47 -37
- data/vendor/libgit2/src/hash/{hash_win32.h → sha1/win32.h} +6 -19
- data/vendor/libgit2/src/hash/sha1.h +38 -0
- data/vendor/libgit2/src/hash.c +61 -0
- data/vendor/libgit2/src/hash.h +20 -21
- data/vendor/libgit2/src/hashsig.c +5 -5
- data/vendor/libgit2/src/idxmap.c +107 -61
- data/vendor/libgit2/src/idxmap.h +153 -31
- data/vendor/libgit2/src/ignore.c +38 -42
- data/vendor/libgit2/src/index.c +264 -199
- data/vendor/libgit2/src/index.h +7 -1
- data/vendor/libgit2/src/indexer.c +338 -167
- data/vendor/libgit2/src/integer.h +71 -26
- data/vendor/libgit2/src/iterator.c +134 -62
- data/vendor/libgit2/src/iterator.h +15 -0
- data/vendor/libgit2/src/mailmap.c +8 -8
- data/vendor/libgit2/src/map.h +1 -1
- data/vendor/libgit2/src/merge.c +137 -93
- data/vendor/libgit2/src/merge_driver.c +11 -11
- data/vendor/libgit2/src/merge_file.c +2 -2
- data/vendor/libgit2/src/mwindow.c +24 -29
- data/vendor/libgit2/src/mwindow.h +4 -4
- data/vendor/libgit2/src/net.c +184 -0
- data/vendor/libgit2/src/net.h +36 -0
- data/vendor/libgit2/src/netops.c +55 -156
- data/vendor/libgit2/src/netops.h +3 -23
- data/vendor/libgit2/src/notes.c +14 -9
- data/vendor/libgit2/src/object.c +120 -69
- data/vendor/libgit2/src/object.h +22 -9
- data/vendor/libgit2/src/object_api.c +8 -8
- data/vendor/libgit2/src/odb.c +111 -88
- data/vendor/libgit2/src/odb.h +8 -7
- data/vendor/libgit2/src/odb_loose.c +58 -47
- data/vendor/libgit2/src/odb_mempack.c +21 -34
- data/vendor/libgit2/src/odb_pack.c +17 -13
- data/vendor/libgit2/src/offmap.c +53 -35
- data/vendor/libgit2/src/offmap.h +108 -21
- data/vendor/libgit2/src/oid.c +12 -7
- data/vendor/libgit2/src/oidmap.c +49 -47
- data/vendor/libgit2/src/oidmap.h +101 -24
- data/vendor/libgit2/src/pack-objects.c +87 -86
- data/vendor/libgit2/src/pack-objects.h +2 -8
- data/vendor/libgit2/src/pack.c +94 -96
- data/vendor/libgit2/src/pack.h +16 -18
- data/vendor/libgit2/src/parse.c +17 -4
- data/vendor/libgit2/src/parse.h +3 -3
- data/vendor/libgit2/src/patch.c +3 -3
- data/vendor/libgit2/src/patch_generate.c +18 -18
- data/vendor/libgit2/src/patch_parse.c +147 -79
- data/vendor/libgit2/src/path.c +207 -62
- data/vendor/libgit2/src/path.h +14 -0
- data/vendor/libgit2/src/pathspec.c +18 -18
- data/vendor/libgit2/src/pool.c +26 -22
- data/vendor/libgit2/src/pool.h +7 -7
- data/vendor/libgit2/src/posix.c +10 -10
- data/vendor/libgit2/src/posix.h +12 -1
- data/vendor/libgit2/src/proxy.c +8 -3
- data/vendor/libgit2/src/push.c +35 -29
- data/vendor/libgit2/src/push.h +2 -1
- data/vendor/libgit2/src/reader.c +265 -0
- data/vendor/libgit2/src/reader.h +107 -0
- data/vendor/libgit2/src/rebase.c +97 -38
- data/vendor/libgit2/src/refdb.c +15 -3
- data/vendor/libgit2/src/refdb_fs.c +318 -222
- data/vendor/libgit2/src/reflog.c +13 -15
- data/vendor/libgit2/src/refs.c +122 -89
- data/vendor/libgit2/src/refs.h +5 -3
- data/vendor/libgit2/src/refspec.c +27 -33
- data/vendor/libgit2/src/regexp.c +221 -0
- data/vendor/libgit2/src/regexp.h +97 -0
- data/vendor/libgit2/src/remote.c +229 -178
- data/vendor/libgit2/src/remote.h +11 -2
- data/vendor/libgit2/src/repository.c +227 -172
- data/vendor/libgit2/src/repository.h +52 -40
- data/vendor/libgit2/src/reset.c +7 -7
- data/vendor/libgit2/src/revert.c +11 -6
- data/vendor/libgit2/src/revparse.c +46 -46
- data/vendor/libgit2/src/revwalk.c +89 -54
- data/vendor/libgit2/src/revwalk.h +20 -0
- data/vendor/libgit2/src/settings.c +22 -9
- data/vendor/libgit2/src/signature.c +15 -13
- data/vendor/libgit2/src/sortedcache.c +22 -36
- data/vendor/libgit2/src/sortedcache.h +1 -1
- data/vendor/libgit2/src/stash.c +56 -76
- data/vendor/libgit2/src/status.c +27 -21
- data/vendor/libgit2/src/stream.h +17 -2
- data/vendor/libgit2/src/streams/mbedtls.c +100 -80
- data/vendor/libgit2/src/streams/mbedtls.h +5 -2
- data/vendor/libgit2/src/streams/openssl.c +93 -81
- data/vendor/libgit2/src/streams/openssl.h +5 -2
- data/vendor/libgit2/src/streams/registry.c +118 -0
- data/vendor/libgit2/src/streams/registry.h +19 -0
- data/vendor/libgit2/src/streams/socket.c +55 -30
- data/vendor/libgit2/src/streams/stransport.c +57 -32
- data/vendor/libgit2/src/streams/stransport.h +5 -0
- data/vendor/libgit2/src/streams/tls.c +48 -20
- data/vendor/libgit2/src/streams/tls.h +12 -4
- data/vendor/libgit2/src/strmap.c +47 -74
- data/vendor/libgit2/src/strmap.h +108 -33
- data/vendor/libgit2/src/submodule.c +190 -169
- data/vendor/libgit2/src/submodule.h +1 -1
- data/vendor/libgit2/src/sysdir.c +25 -15
- data/vendor/libgit2/src/tag.c +39 -26
- data/vendor/libgit2/src/tag.h +2 -1
- data/vendor/libgit2/src/trace.c +2 -2
- data/vendor/libgit2/src/trace.h +2 -2
- data/vendor/libgit2/src/trailer.c +46 -32
- data/vendor/libgit2/src/transaction.c +30 -29
- data/vendor/libgit2/src/transport.c +3 -3
- data/vendor/libgit2/src/transports/auth.c +14 -10
- data/vendor/libgit2/src/transports/auth.h +10 -3
- data/vendor/libgit2/src/transports/auth_negotiate.c +31 -16
- data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
- data/vendor/libgit2/src/transports/auth_ntlm.c +223 -0
- data/vendor/libgit2/src/transports/auth_ntlm.h +35 -0
- data/vendor/libgit2/src/transports/cred.c +24 -24
- data/vendor/libgit2/src/transports/git.c +25 -30
- data/vendor/libgit2/src/transports/http.c +871 -335
- data/vendor/libgit2/src/transports/http.h +2 -0
- data/vendor/libgit2/src/transports/local.c +28 -28
- data/vendor/libgit2/src/transports/smart.c +64 -46
- data/vendor/libgit2/src/transports/smart.h +5 -6
- data/vendor/libgit2/src/transports/smart_pkt.c +162 -151
- data/vendor/libgit2/src/transports/smart_protocol.c +64 -94
- data/vendor/libgit2/src/transports/ssh.c +76 -65
- data/vendor/libgit2/src/transports/winhttp.c +328 -319
- data/vendor/libgit2/src/tree-cache.c +21 -14
- data/vendor/libgit2/src/tree.c +119 -112
- data/vendor/libgit2/src/tree.h +1 -0
- data/vendor/libgit2/src/unix/map.c +3 -3
- data/vendor/libgit2/src/unix/posix.h +1 -11
- data/vendor/libgit2/src/userdiff.h +3 -1
- data/vendor/libgit2/src/util.c +154 -93
- data/vendor/libgit2/src/util.h +19 -23
- data/vendor/libgit2/src/vector.c +15 -10
- data/vendor/libgit2/src/wildmatch.c +320 -0
- data/vendor/libgit2/src/wildmatch.h +23 -0
- data/vendor/libgit2/src/win32/dir.c +3 -3
- data/vendor/libgit2/src/win32/findfile.c +1 -1
- data/vendor/libgit2/src/win32/map.c +9 -11
- data/vendor/libgit2/src/win32/msvc-compat.h +6 -0
- data/vendor/libgit2/src/win32/path_w32.c +113 -9
- data/vendor/libgit2/src/win32/path_w32.h +18 -29
- data/vendor/libgit2/src/win32/posix.h +1 -4
- data/vendor/libgit2/src/win32/posix_w32.c +69 -44
- data/vendor/libgit2/src/win32/precompiled.h +0 -2
- data/vendor/libgit2/src/win32/thread.c +5 -10
- data/vendor/libgit2/src/win32/w32_buffer.c +9 -5
- data/vendor/libgit2/src/win32/w32_common.h +39 -0
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +2 -95
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +0 -2
- data/vendor/libgit2/src/win32/w32_stack.c +6 -11
- data/vendor/libgit2/src/win32/w32_stack.h +3 -3
- data/vendor/libgit2/src/win32/w32_util.c +27 -64
- data/vendor/libgit2/src/win32/w32_util.h +5 -49
- data/vendor/libgit2/src/worktree.c +44 -30
- data/vendor/libgit2/src/xdiff/xdiffi.c +5 -5
- data/vendor/libgit2/src/xdiff/xhistogram.c +1 -1
- data/vendor/libgit2/src/xdiff/xmerge.c +27 -15
- data/vendor/libgit2/src/xdiff/xpatience.c +3 -0
- data/vendor/libgit2/src/zstream.c +4 -4
- metadata +115 -38
- data/vendor/libgit2/deps/regex/CMakeLists.txt +0 -2
- data/vendor/libgit2/deps/regex/config.h +0 -7
- data/vendor/libgit2/deps/regex/regcomp.c +0 -3857
- data/vendor/libgit2/deps/regex/regex.c +0 -92
- data/vendor/libgit2/deps/regex/regex.h +0 -582
- data/vendor/libgit2/deps/regex/regex_internal.c +0 -1744
- data/vendor/libgit2/deps/regex/regex_internal.h +0 -819
- data/vendor/libgit2/deps/regex/regexec.c +0 -4369
- data/vendor/libgit2/include/git2/inttypes.h +0 -309
- data/vendor/libgit2/include/git2/sys/time.h +0 -31
- data/vendor/libgit2/libgit2.pc.in +0 -13
- data/vendor/libgit2/src/config_file.h +0 -73
- data/vendor/libgit2/src/fnmatch.c +0 -248
- data/vendor/libgit2/src/fnmatch.h +0 -48
- data/vendor/libgit2/src/hash/hash_collisiondetect.h +0 -47
- data/vendor/libgit2/src/hash/hash_openssl.h +0 -59
- data/vendor/libgit2/src/streams/curl.c +0 -385
- data/vendor/libgit2/src/streams/curl.h +0 -17
- /data/vendor/libgit2/deps/http-parser/{LICENSE-MIT → COPYING} +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.h +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.c +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.h +0 -0
|
@@ -33,23 +33,26 @@ typedef enum {
|
|
|
33
33
|
} git_transport_flags_t;
|
|
34
34
|
|
|
35
35
|
struct git_transport {
|
|
36
|
-
unsigned int version;
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
unsigned int version; /**< The struct version */
|
|
37
|
+
|
|
38
|
+
/** Set progress and error callbacks */
|
|
39
|
+
int GIT_CALLBACK(set_callbacks)(
|
|
39
40
|
git_transport *transport,
|
|
40
41
|
git_transport_message_cb progress_cb,
|
|
41
42
|
git_transport_message_cb error_cb,
|
|
42
43
|
git_transport_certificate_check_cb certificate_check_cb,
|
|
43
44
|
void *payload);
|
|
44
45
|
|
|
45
|
-
|
|
46
|
-
int (
|
|
46
|
+
/** Set custom headers for HTTP requests */
|
|
47
|
+
int GIT_CALLBACK(set_custom_headers)(
|
|
47
48
|
git_transport *transport,
|
|
48
49
|
const git_strarray *custom_headers);
|
|
49
50
|
|
|
50
|
-
|
|
51
|
-
*
|
|
52
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Connect the transport to the remote repository, using the given
|
|
53
|
+
* direction.
|
|
54
|
+
*/
|
|
55
|
+
int GIT_CALLBACK(connect)(
|
|
53
56
|
git_transport *transport,
|
|
54
57
|
const char *url,
|
|
55
58
|
git_cred_acquire_cb cred_acquire_cb,
|
|
@@ -58,51 +61,66 @@ struct git_transport {
|
|
|
58
61
|
int direction,
|
|
59
62
|
int flags);
|
|
60
63
|
|
|
61
|
-
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
|
|
64
|
+
/**
|
|
65
|
+
* Get the list of available references in the remote repository.
|
|
66
|
+
*
|
|
67
|
+
* This function may be called after a successful call to
|
|
68
|
+
* `connect()`. The array returned is owned by the transport and
|
|
69
|
+
* must be kept valid until the next call to one of its functions.
|
|
70
|
+
*/
|
|
71
|
+
int GIT_CALLBACK(ls)(
|
|
65
72
|
const git_remote_head ***out,
|
|
66
73
|
size_t *size,
|
|
67
74
|
git_transport *transport);
|
|
68
75
|
|
|
69
|
-
|
|
70
|
-
int(
|
|
76
|
+
/** Executes the push whose context is in the git_push object. */
|
|
77
|
+
int GIT_CALLBACK(push)(git_transport *transport, git_push *push, const git_remote_callbacks *callbacks);
|
|
71
78
|
|
|
72
|
-
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
|
|
79
|
+
/**
|
|
80
|
+
* Negotiate a fetch with the remote repository.
|
|
81
|
+
*
|
|
82
|
+
* This function may be called after a successful call to `connect()`,
|
|
83
|
+
* when the direction is GIT_DIRECTION_FETCH. The function performs a
|
|
84
|
+
* negotiation to calculate the `wants` list for the fetch.
|
|
85
|
+
*/
|
|
86
|
+
int GIT_CALLBACK(negotiate_fetch)(
|
|
76
87
|
git_transport *transport,
|
|
77
88
|
git_repository *repo,
|
|
78
89
|
const git_remote_head * const *refs,
|
|
79
90
|
size_t count);
|
|
80
91
|
|
|
81
|
-
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
|
|
92
|
+
/**
|
|
93
|
+
* Start downloading the packfile from the remote repository.
|
|
94
|
+
*
|
|
95
|
+
* This function may be called after a successful call to
|
|
96
|
+
* negotiate_fetch(), when the direction is GIT_DIRECTION_FETCH.
|
|
97
|
+
*/
|
|
98
|
+
int GIT_CALLBACK(download_pack)(
|
|
85
99
|
git_transport *transport,
|
|
86
100
|
git_repository *repo,
|
|
87
|
-
|
|
88
|
-
|
|
101
|
+
git_indexer_progress *stats,
|
|
102
|
+
git_indexer_progress_cb progress_cb,
|
|
89
103
|
void *progress_payload);
|
|
90
104
|
|
|
91
|
-
|
|
92
|
-
int (
|
|
105
|
+
/** Checks to see if the transport is connected */
|
|
106
|
+
int GIT_CALLBACK(is_connected)(git_transport *transport);
|
|
93
107
|
|
|
94
|
-
|
|
95
|
-
int (
|
|
108
|
+
/** Reads the flags value previously passed into connect() */
|
|
109
|
+
int GIT_CALLBACK(read_flags)(git_transport *transport, int *flags);
|
|
96
110
|
|
|
97
|
-
|
|
98
|
-
void (
|
|
111
|
+
/** Cancels any outstanding transport operation */
|
|
112
|
+
void GIT_CALLBACK(cancel)(git_transport *transport);
|
|
99
113
|
|
|
100
|
-
|
|
101
|
-
* connection to the remote
|
|
102
|
-
|
|
114
|
+
/**
|
|
115
|
+
* Close the connection to the remote repository.
|
|
116
|
+
*
|
|
117
|
+
* This function is the reverse of connect() -- it terminates the
|
|
118
|
+
* connection to the remote end.
|
|
119
|
+
*/
|
|
120
|
+
int GIT_CALLBACK(close)(git_transport *transport);
|
|
103
121
|
|
|
104
|
-
|
|
105
|
-
void (
|
|
122
|
+
/** Frees/destructs the git_transport object. */
|
|
123
|
+
void GIT_CALLBACK(free)(git_transport *transport);
|
|
106
124
|
};
|
|
107
125
|
|
|
108
126
|
#define GIT_TRANSPORT_VERSION 1
|
|
@@ -167,10 +185,13 @@ GIT_EXTERN(int) git_transport_register(
|
|
|
167
185
|
void *param);
|
|
168
186
|
|
|
169
187
|
/**
|
|
170
|
-
*
|
|
171
188
|
* Unregister a custom transport definition which was previously registered
|
|
172
189
|
* with git_transport_register.
|
|
173
190
|
*
|
|
191
|
+
* The caller is responsible for synchronizing calls to git_transport_register
|
|
192
|
+
* and git_transport_unregister with other calls to the library that
|
|
193
|
+
* instantiate transports.
|
|
194
|
+
*
|
|
174
195
|
* @param prefix From the previous call to git_transport_register
|
|
175
196
|
* @return 0 or an error code
|
|
176
197
|
*/
|
|
@@ -226,7 +247,10 @@ GIT_EXTERN(int) git_transport_smart(
|
|
|
226
247
|
* @param cert the certificate to pass to the caller
|
|
227
248
|
* @param valid whether we believe the certificate is valid
|
|
228
249
|
* @param hostname the hostname we connected to
|
|
229
|
-
* @return the return value of the callback
|
|
250
|
+
* @return the return value of the callback: 0 for no error, GIT_PASSTHROUGH
|
|
251
|
+
* to indicate that there is no callback registered (or the callback
|
|
252
|
+
* refused to validate the certificate and callers should behave as
|
|
253
|
+
* if no callback was set), or < 0 for an error
|
|
230
254
|
*/
|
|
231
255
|
GIT_EXTERN(int) git_transport_smart_certificate_check(git_transport *transport, git_cert *cert, int valid, const char *hostname);
|
|
232
256
|
|
|
@@ -237,7 +261,10 @@ GIT_EXTERN(int) git_transport_smart_certificate_check(git_transport *transport,
|
|
|
237
261
|
* @param transport a smart transport
|
|
238
262
|
* @param user the user we saw on the url (if any)
|
|
239
263
|
* @param methods available methods for authentication
|
|
240
|
-
* @return the return value of the callback
|
|
264
|
+
* @return the return value of the callback: 0 for no error, GIT_PASSTHROUGH
|
|
265
|
+
* to indicate that there is no callback registered (or the callback
|
|
266
|
+
* refused to provide credentials and callers should behave as if no
|
|
267
|
+
* callback was set), or < 0 for an error
|
|
241
268
|
*/
|
|
242
269
|
GIT_EXTERN(int) git_transport_smart_credentials(git_cred **out, git_transport *transport, const char *user, int methods);
|
|
243
270
|
|
|
@@ -256,20 +283,7 @@ GIT_EXTERN(int) git_transport_smart_proxy_options(git_proxy_options *out, git_tr
|
|
|
256
283
|
*** Begin interface for subtransports for the smart transport ***
|
|
257
284
|
*/
|
|
258
285
|
|
|
259
|
-
|
|
260
|
-
* knowledge of how to establish a connection between it and another endpoint,
|
|
261
|
-
* or how to move data back and forth. For this, a subtransport interface is
|
|
262
|
-
* declared, and the smart transport delegates this work to the subtransports.
|
|
263
|
-
* Three subtransports are implemented: git, http, and winhttp. (The http and
|
|
264
|
-
* winhttp transports each implement both http and https.) */
|
|
265
|
-
|
|
266
|
-
/* Subtransports can either be RPC = 0 (persistent connection) or RPC = 1
|
|
267
|
-
* (request/response). The smart transport handles the differences in its own
|
|
268
|
-
* logic. The git subtransport is RPC = 0, while http and winhttp are both
|
|
269
|
-
* RPC = 1. */
|
|
270
|
-
|
|
271
|
-
/* Actions that the smart transport can ask
|
|
272
|
-
* a subtransport to perform */
|
|
286
|
+
/** Actions that the smart transport can ask a subtransport to perform */
|
|
273
287
|
typedef enum {
|
|
274
288
|
GIT_SERVICE_UPLOADPACK_LS = 1,
|
|
275
289
|
GIT_SERVICE_UPLOADPACK = 2,
|
|
@@ -280,58 +294,91 @@ typedef enum {
|
|
|
280
294
|
typedef struct git_smart_subtransport git_smart_subtransport;
|
|
281
295
|
typedef struct git_smart_subtransport_stream git_smart_subtransport_stream;
|
|
282
296
|
|
|
283
|
-
|
|
284
|
-
*
|
|
297
|
+
/**
|
|
298
|
+
* A stream used by the smart transport to read and write data
|
|
299
|
+
* from a subtransport.
|
|
300
|
+
*
|
|
301
|
+
* This provides a customization point in case you need to
|
|
302
|
+
* support some other communication method.
|
|
303
|
+
*/
|
|
285
304
|
struct git_smart_subtransport_stream {
|
|
286
|
-
|
|
287
|
-
git_smart_subtransport *subtransport;
|
|
305
|
+
git_smart_subtransport *subtransport; /**< The owning subtransport */
|
|
288
306
|
|
|
289
|
-
|
|
307
|
+
/**
|
|
308
|
+
* Read available data from the stream.
|
|
309
|
+
*
|
|
310
|
+
* The implementation may read less than requested.
|
|
311
|
+
*/
|
|
312
|
+
int GIT_CALLBACK(read)(
|
|
290
313
|
git_smart_subtransport_stream *stream,
|
|
291
314
|
char *buffer,
|
|
292
315
|
size_t buf_size,
|
|
293
316
|
size_t *bytes_read);
|
|
294
317
|
|
|
295
|
-
|
|
318
|
+
/**
|
|
319
|
+
* Write data to the stream
|
|
320
|
+
*
|
|
321
|
+
* The implementation must write all data or return an error.
|
|
322
|
+
*/
|
|
323
|
+
int GIT_CALLBACK(write)(
|
|
296
324
|
git_smart_subtransport_stream *stream,
|
|
297
325
|
const char *buffer,
|
|
298
326
|
size_t len);
|
|
299
327
|
|
|
300
|
-
|
|
328
|
+
/** Free the stream */
|
|
329
|
+
void GIT_CALLBACK(free)(
|
|
301
330
|
git_smart_subtransport_stream *stream);
|
|
302
331
|
};
|
|
303
332
|
|
|
304
|
-
|
|
305
|
-
*
|
|
333
|
+
/**
|
|
334
|
+
* An implementation of a subtransport which carries data for the
|
|
335
|
+
* smart transport
|
|
336
|
+
*/
|
|
306
337
|
struct git_smart_subtransport {
|
|
307
|
-
|
|
338
|
+
/**
|
|
339
|
+
* Setup a subtransport stream for the requested action.
|
|
340
|
+
*/
|
|
341
|
+
int GIT_CALLBACK(action)(
|
|
308
342
|
git_smart_subtransport_stream **out,
|
|
309
343
|
git_smart_subtransport *transport,
|
|
310
344
|
const char *url,
|
|
311
345
|
git_smart_service_t action);
|
|
312
346
|
|
|
313
|
-
|
|
347
|
+
/**
|
|
348
|
+
* Close the subtransport.
|
|
349
|
+
*
|
|
350
|
+
* Subtransports are guaranteed a call to close() between
|
|
314
351
|
* calls to action(), except for the following two "natural" progressions
|
|
315
|
-
* of actions against a constant URL
|
|
352
|
+
* of actions against a constant URL:
|
|
316
353
|
*
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
|
|
354
|
+
* - UPLOADPACK_LS -> UPLOADPACK
|
|
355
|
+
* - RECEIVEPACK_LS -> RECEIVEPACK
|
|
356
|
+
*/
|
|
357
|
+
int GIT_CALLBACK(close)(git_smart_subtransport *transport);
|
|
320
358
|
|
|
321
|
-
|
|
359
|
+
/** Free the subtransport */
|
|
360
|
+
void GIT_CALLBACK(free)(git_smart_subtransport *transport);
|
|
322
361
|
};
|
|
323
362
|
|
|
324
|
-
|
|
325
|
-
typedef int (
|
|
363
|
+
/** A function which creates a new subtransport for the smart transport */
|
|
364
|
+
typedef int GIT_CALLBACK(git_smart_subtransport_cb)(
|
|
326
365
|
git_smart_subtransport **out,
|
|
327
|
-
git_transport*
|
|
328
|
-
void*
|
|
366
|
+
git_transport *owner,
|
|
367
|
+
void *param);
|
|
329
368
|
|
|
330
369
|
/**
|
|
331
370
|
* Definition for a "subtransport"
|
|
332
371
|
*
|
|
333
|
-
*
|
|
334
|
-
*
|
|
372
|
+
* The smart transport knows how to speak the git protocol, but it has no
|
|
373
|
+
* knowledge of how to establish a connection between it and another endpoint,
|
|
374
|
+
* or how to move data back and forth. For this, a subtransport interface is
|
|
375
|
+
* declared, and the smart transport delegates this work to the subtransports.
|
|
376
|
+
*
|
|
377
|
+
* Three subtransports are provided by libgit2: ssh, git, http(s).
|
|
378
|
+
*
|
|
379
|
+
* Subtransports can either be RPC = 0 (persistent connection) or RPC = 1
|
|
380
|
+
* (request/response). The smart transport handles the differences in its own
|
|
381
|
+
* logic. The git subtransport is RPC = 0, while http is RPC = 1.
|
|
335
382
|
*/
|
|
336
383
|
typedef struct git_smart_subtransport_definition {
|
|
337
384
|
/** The function to use to create the git_smart_subtransport */
|
|
@@ -343,17 +390,16 @@ typedef struct git_smart_subtransport_definition {
|
|
|
343
390
|
*/
|
|
344
391
|
unsigned rpc;
|
|
345
392
|
|
|
346
|
-
/**
|
|
347
|
-
|
|
348
|
-
void* param;
|
|
393
|
+
/** User-specified parameter passed to the callback */
|
|
394
|
+
void *param;
|
|
349
395
|
} git_smart_subtransport_definition;
|
|
350
396
|
|
|
351
397
|
/* Smart transport subtransports that come with libgit2 */
|
|
352
398
|
|
|
353
399
|
/**
|
|
354
|
-
* Create an instance of the http subtransport.
|
|
355
|
-
*
|
|
356
|
-
*
|
|
400
|
+
* Create an instance of the http subtransport.
|
|
401
|
+
*
|
|
402
|
+
* This subtransport also supports https.
|
|
357
403
|
*
|
|
358
404
|
* @param out The newly created subtransport
|
|
359
405
|
* @param owner The smart transport to own this subtransport
|
|
@@ -361,7 +407,7 @@ typedef struct git_smart_subtransport_definition {
|
|
|
361
407
|
*/
|
|
362
408
|
GIT_EXTERN(int) git_smart_subtransport_http(
|
|
363
409
|
git_smart_subtransport **out,
|
|
364
|
-
git_transport*
|
|
410
|
+
git_transport *owner,
|
|
365
411
|
void *param);
|
|
366
412
|
|
|
367
413
|
/**
|
|
@@ -373,7 +419,7 @@ GIT_EXTERN(int) git_smart_subtransport_http(
|
|
|
373
419
|
*/
|
|
374
420
|
GIT_EXTERN(int) git_smart_subtransport_git(
|
|
375
421
|
git_smart_subtransport **out,
|
|
376
|
-
git_transport*
|
|
422
|
+
git_transport *owner,
|
|
377
423
|
void *param);
|
|
378
424
|
|
|
379
425
|
/**
|
|
@@ -385,7 +431,7 @@ GIT_EXTERN(int) git_smart_subtransport_git(
|
|
|
385
431
|
*/
|
|
386
432
|
GIT_EXTERN(int) git_smart_subtransport_ssh(
|
|
387
433
|
git_smart_subtransport **out,
|
|
388
|
-
git_transport*
|
|
434
|
+
git_transport *owner,
|
|
389
435
|
void *param);
|
|
390
436
|
|
|
391
437
|
/** @} */
|
|
@@ -102,7 +102,7 @@ GIT_EXTERN(const git_oid *) git_tag_target_id(const git_tag *tag);
|
|
|
102
102
|
* @param tag a previously loaded tag.
|
|
103
103
|
* @return type of the tagged object
|
|
104
104
|
*/
|
|
105
|
-
GIT_EXTERN(
|
|
105
|
+
GIT_EXTERN(git_object_t) git_tag_target_type(const git_tag *tag);
|
|
106
106
|
|
|
107
107
|
/**
|
|
108
108
|
* Get the name of a tag
|
|
@@ -217,7 +217,7 @@ GIT_EXTERN(int) git_tag_annotation_create(
|
|
|
217
217
|
* @param force Overwrite existing tags
|
|
218
218
|
* @return 0 on success; error code otherwise
|
|
219
219
|
*/
|
|
220
|
-
GIT_EXTERN(int)
|
|
220
|
+
GIT_EXTERN(int) git_tag_create_from_buffer(
|
|
221
221
|
git_oid *oid,
|
|
222
222
|
git_repository *repo,
|
|
223
223
|
const char *buffer,
|
|
@@ -317,8 +317,17 @@ GIT_EXTERN(int) git_tag_list_match(
|
|
|
317
317
|
const char *pattern,
|
|
318
318
|
git_repository *repo);
|
|
319
319
|
|
|
320
|
-
|
|
321
|
-
|
|
320
|
+
/**
|
|
321
|
+
* Callback used to iterate over tag names
|
|
322
|
+
*
|
|
323
|
+
* @see git_tag_foreach
|
|
324
|
+
*
|
|
325
|
+
* @param name The tag name
|
|
326
|
+
* @param oid The tag's OID
|
|
327
|
+
* @param payload Payload passed to git_tag_foreach
|
|
328
|
+
* @return non-zero to terminate the iteration
|
|
329
|
+
*/
|
|
330
|
+
typedef int GIT_CALLBACK(git_tag_foreach_cb)(const char *name, git_oid *oid, void *payload);
|
|
322
331
|
|
|
323
332
|
/**
|
|
324
333
|
* Call callback `cb' for each tag in the repository
|
|
@@ -49,7 +49,7 @@ typedef enum {
|
|
|
49
49
|
/**
|
|
50
50
|
* An instance for a tracing function
|
|
51
51
|
*/
|
|
52
|
-
typedef void (
|
|
52
|
+
typedef void GIT_CALLBACK(git_trace_cb)(git_trace_level_t level, const char *msg);
|
|
53
53
|
|
|
54
54
|
/**
|
|
55
55
|
* Sets the system tracing configuration to the specified level with the
|
|
@@ -60,7 +60,7 @@ typedef void (*git_trace_callback)(git_trace_level_t level, const char *msg);
|
|
|
60
60
|
* @param cb Function to call with trace data
|
|
61
61
|
* @return 0 or an error code
|
|
62
62
|
*/
|
|
63
|
-
GIT_EXTERN(int) git_trace_set(git_trace_level_t level,
|
|
63
|
+
GIT_EXTERN(int) git_trace_set(git_trace_level_t level, git_trace_cb cb);
|
|
64
64
|
|
|
65
65
|
/** @} */
|
|
66
66
|
GIT_END_DECL
|