rugged 0.28.4 → 0.28.4.1
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 +0 -1
- data/vendor/libgit2/CMakeLists.txt +16 -36
- data/vendor/libgit2/COPYING +0 -28
- data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +1 -5
- data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
- data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +0 -6
- data/vendor/libgit2/deps/http-parser/http_parser.c +6 -11
- data/vendor/libgit2/deps/regex/CMakeLists.txt +2 -0
- data/vendor/libgit2/deps/regex/COPYING +502 -0
- data/vendor/libgit2/deps/regex/config.h +7 -0
- data/vendor/libgit2/deps/regex/regcomp.c +3857 -0
- data/vendor/libgit2/deps/regex/regex.c +92 -0
- data/vendor/libgit2/deps/regex/regex.h +582 -0
- data/vendor/libgit2/deps/regex/regex_internal.c +1744 -0
- data/vendor/libgit2/deps/regex/regex_internal.h +819 -0
- data/vendor/libgit2/deps/regex/regexec.c +4369 -0
- data/vendor/libgit2/deps/zlib/adler32.c +7 -0
- data/vendor/libgit2/deps/zlib/crc32.c +7 -0
- data/vendor/libgit2/include/git2.h +0 -2
- data/vendor/libgit2/include/git2/apply.h +2 -22
- data/vendor/libgit2/include/git2/attr.h +12 -19
- data/vendor/libgit2/include/git2/blame.h +2 -2
- data/vendor/libgit2/include/git2/blob.h +12 -44
- data/vendor/libgit2/include/git2/buffer.h +14 -20
- data/vendor/libgit2/include/git2/checkout.h +14 -46
- data/vendor/libgit2/include/git2/cherrypick.h +3 -3
- data/vendor/libgit2/include/git2/clone.h +2 -2
- data/vendor/libgit2/include/git2/commit.h +1 -23
- data/vendor/libgit2/include/git2/common.h +5 -7
- data/vendor/libgit2/include/git2/config.h +12 -12
- data/vendor/libgit2/include/git2/deprecated.h +3 -243
- data/vendor/libgit2/include/git2/describe.h +4 -4
- data/vendor/libgit2/include/git2/diff.h +14 -16
- data/vendor/libgit2/include/git2/filter.h +0 -8
- data/vendor/libgit2/include/git2/index.h +1 -2
- data/vendor/libgit2/include/git2/indexer.h +4 -48
- data/vendor/libgit2/include/git2/inttypes.h +309 -0
- data/vendor/libgit2/include/git2/merge.h +10 -6
- data/vendor/libgit2/include/git2/net.h +5 -0
- data/vendor/libgit2/include/git2/object.h +14 -2
- data/vendor/libgit2/include/git2/odb.h +2 -3
- data/vendor/libgit2/include/git2/odb_backend.h +4 -5
- data/vendor/libgit2/include/git2/oid.h +1 -1
- data/vendor/libgit2/include/git2/pack.h +1 -12
- data/vendor/libgit2/include/git2/proxy.h +3 -5
- data/vendor/libgit2/include/git2/rebase.h +2 -46
- data/vendor/libgit2/include/git2/refs.h +0 -19
- data/vendor/libgit2/include/git2/remote.h +12 -35
- data/vendor/libgit2/include/git2/repository.h +2 -24
- data/vendor/libgit2/include/git2/revert.h +1 -1
- data/vendor/libgit2/include/git2/stash.h +3 -3
- data/vendor/libgit2/include/git2/status.h +16 -25
- data/vendor/libgit2/include/git2/submodule.h +3 -20
- data/vendor/libgit2/include/git2/sys/alloc.h +9 -9
- data/vendor/libgit2/include/git2/sys/odb_backend.h +4 -48
- data/vendor/libgit2/include/git2/sys/refdb_backend.h +21 -57
- data/vendor/libgit2/include/git2/sys/repository.h +1 -5
- data/vendor/libgit2/include/git2/sys/time.h +31 -0
- data/vendor/libgit2/include/git2/sys/transport.h +2 -2
- data/vendor/libgit2/include/git2/tag.h +2 -11
- data/vendor/libgit2/include/git2/trace.h +2 -2
- data/vendor/libgit2/include/git2/transport.h +340 -11
- data/vendor/libgit2/include/git2/tree.h +1 -1
- data/vendor/libgit2/include/git2/types.h +89 -4
- data/vendor/libgit2/include/git2/version.h +2 -2
- data/vendor/libgit2/include/git2/worktree.h +5 -5
- data/vendor/libgit2/libgit2.pc.in +13 -0
- data/vendor/libgit2/src/CMakeLists.txt +222 -88
- data/vendor/libgit2/src/alloc.c +14 -2
- data/vendor/libgit2/src/apply.c +30 -60
- data/vendor/libgit2/src/attr.c +64 -70
- data/vendor/libgit2/src/attr_file.c +96 -189
- data/vendor/libgit2/src/attr_file.h +9 -9
- data/vendor/libgit2/src/attrcache.c +46 -44
- data/vendor/libgit2/src/attrcache.h +1 -2
- data/vendor/libgit2/src/blame.c +5 -17
- data/vendor/libgit2/src/blame.h +1 -1
- data/vendor/libgit2/src/blame_git.c +7 -21
- data/vendor/libgit2/src/blob.c +17 -81
- data/vendor/libgit2/src/blob.h +2 -2
- data/vendor/libgit2/src/branch.c +5 -29
- data/vendor/libgit2/src/buffer.c +7 -14
- data/vendor/libgit2/src/cache.c +33 -26
- data/vendor/libgit2/src/cache.h +1 -1
- data/vendor/libgit2/src/cc-compat.h +0 -5
- data/vendor/libgit2/src/checkout.c +16 -26
- data/vendor/libgit2/src/cherrypick.c +3 -9
- data/vendor/libgit2/src/clone.c +7 -29
- data/vendor/libgit2/src/clone.h +0 -4
- data/vendor/libgit2/src/commit.c +21 -69
- data/vendor/libgit2/src/commit.h +0 -6
- data/vendor/libgit2/src/commit_list.c +76 -28
- data/vendor/libgit2/src/commit_list.h +2 -2
- data/vendor/libgit2/src/common.h +75 -3
- data/vendor/libgit2/src/config.c +40 -31
- data/vendor/libgit2/src/config.h +6 -7
- data/vendor/libgit2/src/config_backend.h +0 -12
- data/vendor/libgit2/src/config_cache.c +39 -39
- data/vendor/libgit2/src/config_entries.c +99 -69
- data/vendor/libgit2/src/config_entries.h +0 -1
- data/vendor/libgit2/src/config_file.c +380 -337
- data/vendor/libgit2/src/config_mem.c +16 -12
- data/vendor/libgit2/src/config_parse.c +29 -49
- data/vendor/libgit2/src/config_parse.h +12 -13
- data/vendor/libgit2/src/crlf.c +14 -14
- data/vendor/libgit2/src/describe.c +20 -21
- data/vendor/libgit2/src/diff.c +58 -43
- data/vendor/libgit2/src/diff.h +1 -2
- data/vendor/libgit2/src/diff_driver.c +38 -37
- data/vendor/libgit2/src/diff_file.c +7 -9
- data/vendor/libgit2/src/diff_file.h +1 -1
- data/vendor/libgit2/src/diff_generate.c +85 -135
- data/vendor/libgit2/src/diff_generate.h +2 -2
- data/vendor/libgit2/src/diff_parse.c +1 -1
- data/vendor/libgit2/src/diff_print.c +13 -25
- data/vendor/libgit2/src/diff_stats.c +1 -1
- data/vendor/libgit2/src/diff_tform.c +4 -4
- data/vendor/libgit2/src/errors.c +22 -12
- data/vendor/libgit2/src/features.h.in +2 -9
- data/vendor/libgit2/src/fetch.c +2 -7
- data/vendor/libgit2/src/fetchhead.c +1 -1
- data/vendor/libgit2/src/filebuf.c +10 -6
- data/vendor/libgit2/src/filebuf.h +2 -2
- data/vendor/libgit2/src/{futils.c → fileops.c} +17 -21
- data/vendor/libgit2/src/{futils.h → fileops.h} +5 -5
- data/vendor/libgit2/src/filter.c +8 -16
- data/vendor/libgit2/src/fnmatch.c +248 -0
- data/vendor/libgit2/src/fnmatch.h +48 -0
- data/vendor/libgit2/src/global.c +40 -12
- data/vendor/libgit2/src/global.h +2 -0
- data/vendor/libgit2/src/hash.c +0 -61
- data/vendor/libgit2/src/hash.h +21 -19
- data/vendor/libgit2/src/hash/{sha1/collisiondetect.c → hash_collisiondetect.h} +17 -14
- data/vendor/libgit2/src/hash/{sha1/common_crypto.c → hash_common_crypto.h} +19 -15
- data/vendor/libgit2/src/hash/{sha1/generic.c → hash_generic.c} +10 -22
- data/vendor/libgit2/src/hash/{sha1/generic.h → hash_generic.h} +14 -4
- data/vendor/libgit2/src/hash/{sha1/mbedtls.c → hash_mbedtls.c} +7 -15
- data/vendor/libgit2/src/hash/{sha1/mbedtls.h → hash_mbedtls.h} +11 -6
- data/vendor/libgit2/src/hash/{sha1/openssl.c → hash_openssl.h} +18 -14
- data/vendor/libgit2/src/hash/{sha1/win32.c → hash_win32.c} +24 -34
- data/vendor/libgit2/src/hash/{sha1/win32.h → hash_win32.h} +19 -6
- data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/sha1.c +3 -14
- data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/sha1.h +0 -0
- data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/ubc_check.c +0 -0
- data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/ubc_check.h +0 -0
- data/vendor/libgit2/src/hashsig.c +1 -1
- data/vendor/libgit2/src/idxmap.c +65 -91
- data/vendor/libgit2/src/idxmap.h +15 -151
- data/vendor/libgit2/src/ignore.c +38 -32
- data/vendor/libgit2/src/index.c +43 -66
- data/vendor/libgit2/src/index.h +1 -1
- data/vendor/libgit2/src/indexer.c +70 -69
- data/vendor/libgit2/src/integer.h +4 -39
- data/vendor/libgit2/src/iterator.c +22 -27
- data/vendor/libgit2/src/map.h +1 -1
- data/vendor/libgit2/src/merge.c +44 -58
- data/vendor/libgit2/src/merge_driver.c +4 -4
- data/vendor/libgit2/src/merge_file.c +1 -1
- data/vendor/libgit2/src/mwindow.c +23 -18
- data/vendor/libgit2/src/mwindow.h +4 -4
- data/vendor/libgit2/src/netops.c +165 -55
- data/vendor/libgit2/src/netops.h +25 -3
- data/vendor/libgit2/src/notes.c +2 -2
- data/vendor/libgit2/src/object.c +2 -2
- data/vendor/libgit2/src/object.h +0 -2
- data/vendor/libgit2/src/odb.c +23 -41
- data/vendor/libgit2/src/odb.h +2 -3
- data/vendor/libgit2/src/odb_loose.c +10 -17
- data/vendor/libgit2/src/odb_mempack.c +23 -10
- data/vendor/libgit2/src/odb_pack.c +4 -4
- data/vendor/libgit2/src/offmap.c +55 -43
- data/vendor/libgit2/src/offmap.h +24 -102
- data/vendor/libgit2/src/oid.c +1 -6
- data/vendor/libgit2/src/oidmap.c +57 -39
- data/vendor/libgit2/src/oidmap.h +19 -99
- data/vendor/libgit2/src/pack-objects.c +32 -25
- data/vendor/libgit2/src/pack-objects.h +1 -1
- data/vendor/libgit2/src/pack.c +47 -45
- data/vendor/libgit2/src/pack.h +14 -12
- data/vendor/libgit2/src/parse.c +0 -10
- data/vendor/libgit2/src/parse.h +3 -3
- data/vendor/libgit2/src/patch.c +1 -1
- data/vendor/libgit2/src/patch_generate.c +2 -2
- data/vendor/libgit2/src/patch_parse.c +31 -124
- data/vendor/libgit2/src/path.c +6 -43
- data/vendor/libgit2/src/path.h +0 -2
- data/vendor/libgit2/src/pathspec.c +13 -13
- data/vendor/libgit2/src/pool.c +22 -26
- data/vendor/libgit2/src/pool.h +7 -7
- data/vendor/libgit2/src/posix.c +7 -7
- data/vendor/libgit2/src/posix.h +1 -12
- data/vendor/libgit2/src/proxy.c +2 -7
- data/vendor/libgit2/src/push.c +5 -10
- data/vendor/libgit2/src/reader.c +2 -2
- data/vendor/libgit2/src/rebase.c +7 -66
- data/vendor/libgit2/src/refdb.c +0 -12
- data/vendor/libgit2/src/refdb_fs.c +165 -214
- data/vendor/libgit2/src/reflog.c +13 -11
- data/vendor/libgit2/src/refs.c +18 -24
- data/vendor/libgit2/src/refspec.c +16 -9
- data/vendor/libgit2/src/remote.c +52 -50
- data/vendor/libgit2/src/remote.h +2 -2
- data/vendor/libgit2/src/repository.c +100 -115
- data/vendor/libgit2/src/repository.h +40 -49
- data/vendor/libgit2/src/revert.c +3 -8
- data/vendor/libgit2/src/revparse.c +19 -18
- data/vendor/libgit2/src/revwalk.c +30 -63
- data/vendor/libgit2/src/revwalk.h +0 -20
- data/vendor/libgit2/src/settings.c +0 -5
- data/vendor/libgit2/src/sortedcache.c +26 -12
- data/vendor/libgit2/src/sortedcache.h +1 -1
- data/vendor/libgit2/src/stash.c +65 -45
- data/vendor/libgit2/src/status.c +9 -15
- data/vendor/libgit2/src/{allocators/stdalloc.c → stdalloc.c} +4 -3
- data/vendor/libgit2/src/{allocators/stdalloc.h → stdalloc.h} +4 -4
- data/vendor/libgit2/src/streams/openssl.c +0 -20
- data/vendor/libgit2/src/streams/socket.c +2 -2
- data/vendor/libgit2/src/strmap.c +84 -37
- data/vendor/libgit2/src/strmap.h +33 -105
- data/vendor/libgit2/src/submodule.c +70 -102
- data/vendor/libgit2/src/submodule.h +1 -1
- data/vendor/libgit2/src/sysdir.c +1 -11
- data/vendor/libgit2/src/tag.c +2 -10
- data/vendor/libgit2/src/trace.c +1 -1
- data/vendor/libgit2/src/trace.h +2 -2
- data/vendor/libgit2/src/trailer.c +32 -46
- data/vendor/libgit2/src/transaction.c +9 -10
- data/vendor/libgit2/src/transports/auth.c +9 -10
- data/vendor/libgit2/src/transports/auth.h +4 -11
- data/vendor/libgit2/src/transports/auth_negotiate.c +9 -23
- data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
- data/vendor/libgit2/src/transports/cred.c +6 -6
- data/vendor/libgit2/src/{allocators/win32_crtdbg.h → transports/cred.h} +4 -5
- data/vendor/libgit2/src/transports/git.c +16 -11
- data/vendor/libgit2/src/transports/http.c +276 -419
- data/vendor/libgit2/src/transports/http.h +1 -1
- data/vendor/libgit2/src/transports/local.c +9 -9
- data/vendor/libgit2/src/transports/smart.c +17 -17
- data/vendor/libgit2/src/transports/smart.h +2 -2
- data/vendor/libgit2/src/transports/smart_protocol.c +60 -36
- data/vendor/libgit2/src/transports/ssh.c +36 -46
- data/vendor/libgit2/src/transports/winhttp.c +207 -231
- data/vendor/libgit2/src/tree-cache.c +7 -14
- data/vendor/libgit2/src/tree.c +24 -10
- data/vendor/libgit2/src/unix/map.c +1 -1
- data/vendor/libgit2/src/unix/posix.h +11 -1
- data/vendor/libgit2/src/userdiff.h +1 -3
- data/vendor/libgit2/src/util.c +53 -51
- data/vendor/libgit2/src/util.h +21 -16
- data/vendor/libgit2/src/win32/map.c +5 -3
- data/vendor/libgit2/src/win32/path_w32.c +2 -12
- data/vendor/libgit2/src/win32/path_w32.h +29 -0
- data/vendor/libgit2/src/win32/posix.h +4 -1
- data/vendor/libgit2/src/win32/posix_w32.c +5 -40
- data/vendor/libgit2/src/win32/precompiled.h +2 -0
- data/vendor/libgit2/src/win32/thread.c +10 -5
- data/vendor/libgit2/src/win32/w32_buffer.c +3 -7
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +93 -0
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +2 -0
- data/vendor/libgit2/src/win32/w32_stack.c +9 -4
- data/vendor/libgit2/src/win32/w32_stack.h +3 -3
- data/vendor/libgit2/src/win32/w32_util.c +0 -31
- data/vendor/libgit2/src/win32/w32_util.h +32 -6
- data/vendor/libgit2/src/worktree.c +22 -36
- data/vendor/libgit2/src/xdiff/xdiffi.c +1 -1
- data/vendor/libgit2/src/xdiff/xmerge.c +0 -12
- data/vendor/libgit2/src/xdiff/xpatience.c +0 -3
- metadata +34 -98
- data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +0 -28
- data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +0 -38
- data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +0 -37
- data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +0 -110
- data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +0 -53
- data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +0 -124
- data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +0 -66
- data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +0 -21
- data/vendor/libgit2/deps/ntlmclient/compat.h +0 -33
- data/vendor/libgit2/deps/ntlmclient/crypt.h +0 -64
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +0 -120
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +0 -18
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +0 -145
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +0 -18
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +0 -130
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +0 -21
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +0 -1420
- data/vendor/libgit2/deps/ntlmclient/ntlm.h +0 -174
- data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +0 -320
- data/vendor/libgit2/deps/ntlmclient/unicode.h +0 -36
- data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +0 -445
- data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +0 -201
- data/vendor/libgit2/deps/ntlmclient/utf8.h +0 -1257
- data/vendor/libgit2/deps/ntlmclient/util.c +0 -21
- data/vendor/libgit2/deps/ntlmclient/util.h +0 -14
- data/vendor/libgit2/deps/pcre/CMakeLists.txt +0 -140
- data/vendor/libgit2/deps/pcre/COPYING +0 -5
- data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +0 -22
- data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +0 -17
- data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +0 -58
- data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +0 -29
- data/vendor/libgit2/deps/pcre/config.h.in +0 -57
- data/vendor/libgit2/deps/pcre/pcre.h +0 -641
- data/vendor/libgit2/deps/pcre/pcre_byte_order.c +0 -319
- data/vendor/libgit2/deps/pcre/pcre_chartables.c +0 -198
- data/vendor/libgit2/deps/pcre/pcre_compile.c +0 -9800
- data/vendor/libgit2/deps/pcre/pcre_config.c +0 -190
- data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +0 -3676
- data/vendor/libgit2/deps/pcre/pcre_exec.c +0 -7173
- data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +0 -245
- data/vendor/libgit2/deps/pcre/pcre_get.c +0 -669
- data/vendor/libgit2/deps/pcre/pcre_globals.c +0 -86
- data/vendor/libgit2/deps/pcre/pcre_internal.h +0 -2787
- data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +0 -11913
- data/vendor/libgit2/deps/pcre/pcre_maketables.c +0 -156
- data/vendor/libgit2/deps/pcre/pcre_newline.c +0 -210
- data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +0 -94
- data/vendor/libgit2/deps/pcre/pcre_printint.c +0 -834
- data/vendor/libgit2/deps/pcre/pcre_refcount.c +0 -92
- data/vendor/libgit2/deps/pcre/pcre_string_utils.c +0 -211
- data/vendor/libgit2/deps/pcre/pcre_study.c +0 -1686
- data/vendor/libgit2/deps/pcre/pcre_tables.c +0 -727
- data/vendor/libgit2/deps/pcre/pcre_ucd.c +0 -3644
- data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +0 -301
- data/vendor/libgit2/deps/pcre/pcre_version.c +0 -98
- data/vendor/libgit2/deps/pcre/pcre_xclass.c +0 -268
- data/vendor/libgit2/deps/pcre/pcreposix.c +0 -421
- data/vendor/libgit2/deps/pcre/pcreposix.h +0 -117
- data/vendor/libgit2/deps/pcre/ucp.h +0 -224
- data/vendor/libgit2/include/git2/cert.h +0 -135
- data/vendor/libgit2/include/git2/cred.h +0 -308
- data/vendor/libgit2/include/git2/sys/cred.h +0 -90
- data/vendor/libgit2/src/allocators/win32_crtdbg.c +0 -118
- data/vendor/libgit2/src/config_snapshot.c +0 -206
- data/vendor/libgit2/src/errors.h +0 -81
- data/vendor/libgit2/src/hash/sha1.h +0 -38
- data/vendor/libgit2/src/hash/sha1/collisiondetect.h +0 -19
- data/vendor/libgit2/src/hash/sha1/common_crypto.h +0 -19
- data/vendor/libgit2/src/hash/sha1/openssl.h +0 -19
- data/vendor/libgit2/src/net.c +0 -184
- data/vendor/libgit2/src/net.h +0 -36
- data/vendor/libgit2/src/regexp.c +0 -221
- data/vendor/libgit2/src/regexp.h +0 -97
- data/vendor/libgit2/src/transports/auth_ntlm.c +0 -223
- data/vendor/libgit2/src/transports/auth_ntlm.h +0 -35
- data/vendor/libgit2/src/wildmatch.c +0 -320
- data/vendor/libgit2/src/wildmatch.h +0 -23
- data/vendor/libgit2/src/win32/w32_common.h +0 -39
|
@@ -25,10 +25,6 @@ GIT_BEGIN_DECL
|
|
|
25
25
|
* Note that this is only useful if you wish to associate the repository
|
|
26
26
|
* with a non-filesystem-backed object database and config store.
|
|
27
27
|
*
|
|
28
|
-
* Caveats: since this repository has no physical location, some systems
|
|
29
|
-
* can fail to function properly: locations under $GIT_DIR, $GIT_COMMON_DIR,
|
|
30
|
-
* or $GIT_INFO_DIR are impacted.
|
|
31
|
-
*
|
|
32
28
|
* @param out The blank repository
|
|
33
29
|
* @return 0 on success, or an error code
|
|
34
30
|
*/
|
|
@@ -43,7 +39,7 @@ GIT_EXTERN(int) git_repository_new(git_repository **out);
|
|
|
43
39
|
* There's no need to call this function directly unless you're
|
|
44
40
|
* trying to aggressively cleanup the repo before its
|
|
45
41
|
* deallocation. `git_repository_free` already performs this operation
|
|
46
|
-
* before
|
|
42
|
+
* before deallocation the repo.
|
|
47
43
|
*/
|
|
48
44
|
GIT_EXTERN(void) git_repository__cleanup(git_repository *repo);
|
|
49
45
|
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) the libgit2 contributors. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
|
5
|
+
* a Linking Exception. For full terms see the included COPYING file.
|
|
6
|
+
*/
|
|
7
|
+
#ifndef INCLUDE_git_time_h__
|
|
8
|
+
#define INCLUDE_git_time_h__
|
|
9
|
+
|
|
10
|
+
#include "git2/common.h"
|
|
11
|
+
|
|
12
|
+
GIT_BEGIN_DECL
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Return a monotonic time value, useful for measuring running time
|
|
16
|
+
* and setting up timeouts.
|
|
17
|
+
*
|
|
18
|
+
* The returned value is an arbitrary point in time -- it can only be
|
|
19
|
+
* used when comparing it to another `git_time_monotonic` call.
|
|
20
|
+
*
|
|
21
|
+
* The time is returned in seconds, with a decimal fraction that differs
|
|
22
|
+
* on accuracy based on the underlying system, but should be least
|
|
23
|
+
* accurate to Nanoseconds.
|
|
24
|
+
*
|
|
25
|
+
* This function cannot fail.
|
|
26
|
+
*/
|
|
27
|
+
GIT_EXTERN(double) git_time_monotonic(void);
|
|
28
|
+
|
|
29
|
+
GIT_END_DECL
|
|
30
|
+
#endif
|
|
31
|
+
|
|
@@ -98,8 +98,8 @@ struct git_transport {
|
|
|
98
98
|
int GIT_CALLBACK(download_pack)(
|
|
99
99
|
git_transport *transport,
|
|
100
100
|
git_repository *repo,
|
|
101
|
-
|
|
102
|
-
|
|
101
|
+
git_transfer_progress *stats,
|
|
102
|
+
git_transfer_progress_cb progress_cb,
|
|
103
103
|
void *progress_payload);
|
|
104
104
|
|
|
105
105
|
/** Checks to see if the transport is connected */
|
|
@@ -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_frombuffer(
|
|
221
221
|
git_oid *oid,
|
|
222
222
|
git_repository *repo,
|
|
223
223
|
const char *buffer,
|
|
@@ -317,16 +317,7 @@ GIT_EXTERN(int) git_tag_list_match(
|
|
|
317
317
|
const char *pattern,
|
|
318
318
|
git_repository *repo);
|
|
319
319
|
|
|
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
|
-
*/
|
|
320
|
+
|
|
330
321
|
typedef int GIT_CALLBACK(git_tag_foreach_cb)(const char *name, git_oid *oid, void *payload);
|
|
331
322
|
|
|
332
323
|
/**
|
|
@@ -49,7 +49,7 @@ typedef enum {
|
|
|
49
49
|
/**
|
|
50
50
|
* An instance for a tracing function
|
|
51
51
|
*/
|
|
52
|
-
typedef void GIT_CALLBACK(
|
|
52
|
+
typedef void GIT_CALLBACK(git_trace_callback)(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_CALLBACK(git_trace_cb)(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_callback cb);
|
|
64
64
|
|
|
65
65
|
/** @} */
|
|
66
66
|
GIT_END_DECL
|
|
@@ -10,8 +10,6 @@
|
|
|
10
10
|
#include "indexer.h"
|
|
11
11
|
#include "net.h"
|
|
12
12
|
#include "types.h"
|
|
13
|
-
#include "cert.h"
|
|
14
|
-
#include "cred.h"
|
|
15
13
|
|
|
16
14
|
/**
|
|
17
15
|
* @file git2/transport.h
|
|
@@ -22,21 +20,352 @@
|
|
|
22
20
|
*/
|
|
23
21
|
GIT_BEGIN_DECL
|
|
24
22
|
|
|
23
|
+
/** Signature of a function which creates a transport */
|
|
24
|
+
typedef int GIT_CALLBACK(git_transport_cb)(git_transport **out, git_remote *owner, void *param);
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Type of SSH host fingerprint
|
|
28
|
+
*/
|
|
29
|
+
typedef enum {
|
|
30
|
+
/** MD5 is available */
|
|
31
|
+
GIT_CERT_SSH_MD5 = (1 << 0),
|
|
32
|
+
/** SHA-1 is available */
|
|
33
|
+
GIT_CERT_SSH_SHA1 = (1 << 1),
|
|
34
|
+
} git_cert_ssh_t;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Hostkey information taken from libssh2
|
|
38
|
+
*/
|
|
39
|
+
typedef struct {
|
|
40
|
+
git_cert parent;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* A hostkey type from libssh2, either
|
|
44
|
+
* `GIT_CERT_SSH_MD5` or `GIT_CERT_SSH_SHA1`
|
|
45
|
+
*/
|
|
46
|
+
git_cert_ssh_t type;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Hostkey hash. If type has `GIT_CERT_SSH_MD5` set, this will
|
|
50
|
+
* have the MD5 hash of the hostkey.
|
|
51
|
+
*/
|
|
52
|
+
unsigned char hash_md5[16];
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Hostkey hash. If type has `GIT_CERT_SSH_SHA1` set, this will
|
|
56
|
+
* have the SHA-1 hash of the hostkey.
|
|
57
|
+
*/
|
|
58
|
+
unsigned char hash_sha1[20];
|
|
59
|
+
} git_cert_hostkey;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* X.509 certificate information
|
|
63
|
+
*/
|
|
64
|
+
typedef struct {
|
|
65
|
+
git_cert parent;
|
|
66
|
+
/**
|
|
67
|
+
* Pointer to the X.509 certificate data
|
|
68
|
+
*/
|
|
69
|
+
void *data;
|
|
70
|
+
/**
|
|
71
|
+
* Length of the memory block pointed to by `data`.
|
|
72
|
+
*/
|
|
73
|
+
size_t len;
|
|
74
|
+
} git_cert_x509;
|
|
75
|
+
|
|
76
|
+
/*
|
|
77
|
+
*** Begin interface for credentials acquisition ***
|
|
78
|
+
*/
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Supported credential types
|
|
82
|
+
*
|
|
83
|
+
* This represents the various types of authentication methods supported by
|
|
84
|
+
* the library.
|
|
85
|
+
*/
|
|
86
|
+
typedef enum {
|
|
87
|
+
/**
|
|
88
|
+
* A vanilla user/password request
|
|
89
|
+
* @see git_cred_userpass_plaintext_new
|
|
90
|
+
*/
|
|
91
|
+
GIT_CREDTYPE_USERPASS_PLAINTEXT = (1u << 0),
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* An SSH key-based authentication request
|
|
95
|
+
* @see git_cred_ssh_key_new
|
|
96
|
+
*/
|
|
97
|
+
GIT_CREDTYPE_SSH_KEY = (1u << 1),
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* An SSH key-based authentication request, with a custom signature
|
|
101
|
+
* @see git_cred_ssh_custom_new
|
|
102
|
+
*/
|
|
103
|
+
GIT_CREDTYPE_SSH_CUSTOM = (1u << 2),
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* An NTLM/Negotiate-based authentication request.
|
|
107
|
+
* @see git_cred_default
|
|
108
|
+
*/
|
|
109
|
+
GIT_CREDTYPE_DEFAULT = (1u << 3),
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* An SSH interactive authentication request
|
|
113
|
+
* @see git_cred_ssh_interactive_new
|
|
114
|
+
*/
|
|
115
|
+
GIT_CREDTYPE_SSH_INTERACTIVE = (1u << 4),
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Username-only authentication request
|
|
119
|
+
*
|
|
120
|
+
* Used as a pre-authentication step if the underlying transport
|
|
121
|
+
* (eg. SSH, with no username in its URL) does not know which username
|
|
122
|
+
* to use.
|
|
123
|
+
*
|
|
124
|
+
* @see git_cred_username_new
|
|
125
|
+
*/
|
|
126
|
+
GIT_CREDTYPE_USERNAME = (1u << 5),
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* An SSH key-based authentication request
|
|
130
|
+
*
|
|
131
|
+
* Allows credentials to be read from memory instead of files.
|
|
132
|
+
* Note that because of differences in crypto backend support, it might
|
|
133
|
+
* not be functional.
|
|
134
|
+
*
|
|
135
|
+
* @see git_cred_ssh_key_memory_new
|
|
136
|
+
*/
|
|
137
|
+
GIT_CREDTYPE_SSH_MEMORY = (1u << 6),
|
|
138
|
+
} git_credtype_t;
|
|
139
|
+
|
|
140
|
+
typedef struct git_cred git_cred;
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* The base structure for all credential types
|
|
144
|
+
*/
|
|
145
|
+
struct git_cred {
|
|
146
|
+
git_credtype_t credtype; /**< A type of credential */
|
|
147
|
+
void GIT_CALLBACK(free)(git_cred *cred);
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
/** A plaintext username and password */
|
|
151
|
+
typedef struct {
|
|
152
|
+
git_cred parent;
|
|
153
|
+
char *username;
|
|
154
|
+
char *password;
|
|
155
|
+
} git_cred_userpass_plaintext;
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
/*
|
|
159
|
+
* If the user hasn't included libssh2.h before git2.h, we need to
|
|
160
|
+
* define a few types for the callback signatures.
|
|
161
|
+
*/
|
|
162
|
+
#ifndef LIBSSH2_VERSION
|
|
163
|
+
typedef struct _LIBSSH2_SESSION LIBSSH2_SESSION;
|
|
164
|
+
typedef struct _LIBSSH2_USERAUTH_KBDINT_PROMPT LIBSSH2_USERAUTH_KBDINT_PROMPT;
|
|
165
|
+
typedef struct _LIBSSH2_USERAUTH_KBDINT_RESPONSE LIBSSH2_USERAUTH_KBDINT_RESPONSE;
|
|
166
|
+
#endif
|
|
167
|
+
|
|
168
|
+
typedef int GIT_CALLBACK(git_cred_sign_callback)(LIBSSH2_SESSION *session, unsigned char **sig, size_t *sig_len, const unsigned char *data, size_t data_len, void **abstract);
|
|
169
|
+
typedef void GIT_CALLBACK(git_cred_ssh_interactive_callback)(const char* name, int name_len, const char* instruction, int instruction_len, int num_prompts, const LIBSSH2_USERAUTH_KBDINT_PROMPT* prompts, LIBSSH2_USERAUTH_KBDINT_RESPONSE* responses, void **abstract);
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* A ssh key from disk
|
|
173
|
+
*/
|
|
174
|
+
typedef struct git_cred_ssh_key {
|
|
175
|
+
git_cred parent;
|
|
176
|
+
char *username;
|
|
177
|
+
char *publickey;
|
|
178
|
+
char *privatekey;
|
|
179
|
+
char *passphrase;
|
|
180
|
+
} git_cred_ssh_key;
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Keyboard-interactive based ssh authentication
|
|
184
|
+
*/
|
|
185
|
+
typedef struct git_cred_ssh_interactive {
|
|
186
|
+
git_cred parent;
|
|
187
|
+
char *username;
|
|
188
|
+
git_cred_ssh_interactive_callback prompt_callback;
|
|
189
|
+
void *payload;
|
|
190
|
+
} git_cred_ssh_interactive;
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* A key with a custom signature function
|
|
194
|
+
*/
|
|
195
|
+
typedef struct git_cred_ssh_custom {
|
|
196
|
+
git_cred parent;
|
|
197
|
+
char *username;
|
|
198
|
+
char *publickey;
|
|
199
|
+
size_t publickey_len;
|
|
200
|
+
git_cred_sign_callback sign_callback;
|
|
201
|
+
void *payload;
|
|
202
|
+
} git_cred_ssh_custom;
|
|
203
|
+
|
|
204
|
+
/** A key for NTLM/Kerberos "default" credentials */
|
|
205
|
+
typedef struct git_cred git_cred_default;
|
|
206
|
+
|
|
207
|
+
/** Username-only credential information */
|
|
208
|
+
typedef struct git_cred_username {
|
|
209
|
+
git_cred parent;
|
|
210
|
+
char username[1];
|
|
211
|
+
} git_cred_username;
|
|
212
|
+
|
|
25
213
|
/**
|
|
26
|
-
*
|
|
214
|
+
* Check whether a credential object contains username information.
|
|
27
215
|
*
|
|
28
|
-
*
|
|
216
|
+
* @param cred object to check
|
|
217
|
+
* @return 1 if the credential object has non-NULL username, 0 otherwise
|
|
218
|
+
*/
|
|
219
|
+
GIT_EXTERN(int) git_cred_has_username(git_cred *cred);
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Create a new plain-text username and password credential object.
|
|
223
|
+
* The supplied credential parameter will be internally duplicated.
|
|
29
224
|
*
|
|
30
|
-
* @param
|
|
31
|
-
* @param
|
|
32
|
-
* @param
|
|
225
|
+
* @param out The newly created credential object.
|
|
226
|
+
* @param username The username of the credential.
|
|
227
|
+
* @param password The password of the credential.
|
|
228
|
+
* @return 0 for success or an error code for failure
|
|
33
229
|
*/
|
|
34
|
-
|
|
230
|
+
GIT_EXTERN(int) git_cred_userpass_plaintext_new(
|
|
231
|
+
git_cred **out,
|
|
232
|
+
const char *username,
|
|
233
|
+
const char *password);
|
|
35
234
|
|
|
36
|
-
/**
|
|
37
|
-
|
|
235
|
+
/**
|
|
236
|
+
* Create a new passphrase-protected ssh key credential object.
|
|
237
|
+
* The supplied credential parameter will be internally duplicated.
|
|
238
|
+
*
|
|
239
|
+
* @param out The newly created credential object.
|
|
240
|
+
* @param username username to use to authenticate
|
|
241
|
+
* @param publickey The path to the public key of the credential.
|
|
242
|
+
* @param privatekey The path to the private key of the credential.
|
|
243
|
+
* @param passphrase The passphrase of the credential.
|
|
244
|
+
* @return 0 for success or an error code for failure
|
|
245
|
+
*/
|
|
246
|
+
GIT_EXTERN(int) git_cred_ssh_key_new(
|
|
247
|
+
git_cred **out,
|
|
248
|
+
const char *username,
|
|
249
|
+
const char *publickey,
|
|
250
|
+
const char *privatekey,
|
|
251
|
+
const char *passphrase);
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* Create a new ssh keyboard-interactive based credential object.
|
|
255
|
+
* The supplied credential parameter will be internally duplicated.
|
|
256
|
+
*
|
|
257
|
+
* @param username Username to use to authenticate.
|
|
258
|
+
* @param prompt_callback The callback method used for prompts.
|
|
259
|
+
* @param payload Additional data to pass to the callback.
|
|
260
|
+
* @return 0 for success or an error code for failure.
|
|
261
|
+
*/
|
|
262
|
+
GIT_EXTERN(int) git_cred_ssh_interactive_new(
|
|
263
|
+
git_cred **out,
|
|
264
|
+
const char *username,
|
|
265
|
+
git_cred_ssh_interactive_callback prompt_callback,
|
|
266
|
+
void *payload);
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* Create a new ssh key credential object used for querying an ssh-agent.
|
|
270
|
+
* The supplied credential parameter will be internally duplicated.
|
|
271
|
+
*
|
|
272
|
+
* @param out The newly created credential object.
|
|
273
|
+
* @param username username to use to authenticate
|
|
274
|
+
* @return 0 for success or an error code for failure
|
|
275
|
+
*/
|
|
276
|
+
GIT_EXTERN(int) git_cred_ssh_key_from_agent(
|
|
277
|
+
git_cred **out,
|
|
278
|
+
const char *username);
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Create an ssh key credential with a custom signing function.
|
|
282
|
+
*
|
|
283
|
+
* This lets you use your own function to sign the challenge.
|
|
284
|
+
*
|
|
285
|
+
* This function and its credential type is provided for completeness
|
|
286
|
+
* and wraps `libssh2_userauth_publickey()`, which is undocumented.
|
|
287
|
+
*
|
|
288
|
+
* The supplied credential parameter will be internally duplicated.
|
|
289
|
+
*
|
|
290
|
+
* @param out The newly created credential object.
|
|
291
|
+
* @param username username to use to authenticate
|
|
292
|
+
* @param publickey The bytes of the public key.
|
|
293
|
+
* @param publickey_len The length of the public key in bytes.
|
|
294
|
+
* @param sign_callback The callback method to sign the data during the challenge.
|
|
295
|
+
* @param payload Additional data to pass to the callback.
|
|
296
|
+
* @return 0 for success or an error code for failure
|
|
297
|
+
*/
|
|
298
|
+
GIT_EXTERN(int) git_cred_ssh_custom_new(
|
|
299
|
+
git_cred **out,
|
|
300
|
+
const char *username,
|
|
301
|
+
const char *publickey,
|
|
302
|
+
size_t publickey_len,
|
|
303
|
+
git_cred_sign_callback sign_callback,
|
|
304
|
+
void *payload);
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Create a "default" credential usable for Negotiate mechanisms like NTLM
|
|
308
|
+
* or Kerberos authentication.
|
|
309
|
+
*
|
|
310
|
+
* @return 0 for success or an error code for failure
|
|
311
|
+
*/
|
|
312
|
+
GIT_EXTERN(int) git_cred_default_new(git_cred **out);
|
|
313
|
+
|
|
314
|
+
/**
|
|
315
|
+
* Create a credential to specify a username.
|
|
316
|
+
*
|
|
317
|
+
* This is used with ssh authentication to query for the username if
|
|
318
|
+
* none is specified in the url.
|
|
319
|
+
*/
|
|
320
|
+
GIT_EXTERN(int) git_cred_username_new(git_cred **cred, const char *username);
|
|
321
|
+
|
|
322
|
+
/**
|
|
323
|
+
* Create a new ssh key credential object reading the keys from memory.
|
|
324
|
+
*
|
|
325
|
+
* @param out The newly created credential object.
|
|
326
|
+
* @param username username to use to authenticate.
|
|
327
|
+
* @param publickey The public key of the credential.
|
|
328
|
+
* @param privatekey The private key of the credential.
|
|
329
|
+
* @param passphrase The passphrase of the credential.
|
|
330
|
+
* @return 0 for success or an error code for failure
|
|
331
|
+
*/
|
|
332
|
+
GIT_EXTERN(int) git_cred_ssh_key_memory_new(
|
|
333
|
+
git_cred **out,
|
|
334
|
+
const char *username,
|
|
335
|
+
const char *publickey,
|
|
336
|
+
const char *privatekey,
|
|
337
|
+
const char *passphrase);
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Free a credential.
|
|
342
|
+
*
|
|
343
|
+
* This is only necessary if you own the object; that is, if you are a
|
|
344
|
+
* transport.
|
|
345
|
+
*
|
|
346
|
+
* @param cred the object to free
|
|
347
|
+
*/
|
|
348
|
+
GIT_EXTERN(void) git_cred_free(git_cred *cred);
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* Signature of a function which acquires a credential object.
|
|
352
|
+
*
|
|
353
|
+
* @param cred The newly created credential object.
|
|
354
|
+
* @param url The resource for which we are demanding a credential.
|
|
355
|
+
* @param username_from_url The username that was embedded in a "user\@host"
|
|
356
|
+
* remote url, or NULL if not included.
|
|
357
|
+
* @param allowed_types A bitmask stating which cred types are OK to return.
|
|
358
|
+
* @param payload The payload provided when specifying this callback.
|
|
359
|
+
* @return 0 for success, < 0 to indicate an error, > 0 to indicate
|
|
360
|
+
* no credential was acquired
|
|
361
|
+
*/
|
|
362
|
+
typedef int GIT_CALLBACK(git_cred_acquire_cb)(
|
|
363
|
+
git_cred **cred,
|
|
364
|
+
const char *url,
|
|
365
|
+
const char *username_from_url,
|
|
366
|
+
unsigned int allowed_types,
|
|
367
|
+
void *payload);
|
|
38
368
|
|
|
39
369
|
/** @} */
|
|
40
370
|
GIT_END_DECL
|
|
41
|
-
|
|
42
371
|
#endif
|