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
data/vendor/libgit2/src/sysdir.c
CHANGED
|
@@ -82,25 +82,15 @@ static int git_sysdir_guess_global_dirs(git_buf *out)
|
|
|
82
82
|
#else
|
|
83
83
|
int error;
|
|
84
84
|
uid_t uid, euid;
|
|
85
|
-
const char *sandbox_id;
|
|
86
85
|
|
|
87
86
|
uid = getuid();
|
|
88
87
|
euid = geteuid();
|
|
89
88
|
|
|
90
|
-
/**
|
|
91
|
-
* If APP_SANDBOX_CONTAINER_ID is set, we are running in a
|
|
92
|
-
* sandboxed environment on macOS.
|
|
93
|
-
*/
|
|
94
|
-
sandbox_id = getenv("APP_SANDBOX_CONTAINER_ID");
|
|
95
|
-
|
|
96
89
|
/*
|
|
97
90
|
* In case we are running setuid, use the configuration
|
|
98
91
|
* of the effective user.
|
|
99
|
-
*
|
|
100
|
-
* If we are running in a sandboxed environment on macOS,
|
|
101
|
-
* we have to get the HOME dir from the password entry file.
|
|
102
92
|
*/
|
|
103
|
-
if (
|
|
93
|
+
if (uid == euid)
|
|
104
94
|
error = git__getenv(out, "HOME");
|
|
105
95
|
else
|
|
106
96
|
error = get_passwd_home(out, euid);
|
data/vendor/libgit2/src/tag.c
CHANGED
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
#include "commit.h"
|
|
11
11
|
#include "signature.h"
|
|
12
12
|
#include "message.h"
|
|
13
|
-
#include "wildmatch.h"
|
|
14
13
|
#include "git2/object.h"
|
|
15
14
|
#include "git2/repository.h"
|
|
16
15
|
#include "git2/signature.h"
|
|
@@ -328,7 +327,7 @@ int git_tag_create_lightweight(
|
|
|
328
327
|
return git_tag_create__internal(oid, repo, tag_name, target, NULL, NULL, allow_ref_overwrite, 0);
|
|
329
328
|
}
|
|
330
329
|
|
|
331
|
-
int
|
|
330
|
+
int git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *buffer, int allow_ref_overwrite)
|
|
332
331
|
{
|
|
333
332
|
git_tag tag;
|
|
334
333
|
int error;
|
|
@@ -476,7 +475,7 @@ static int tag_list_cb(const char *tag_name, git_oid *oid, void *data)
|
|
|
476
475
|
GIT_UNUSED(oid);
|
|
477
476
|
|
|
478
477
|
if (!*filter->pattern ||
|
|
479
|
-
|
|
478
|
+
p_fnmatch(filter->pattern, tag_name + GIT_REFS_TAGS_DIR_LEN, 0) == 0)
|
|
480
479
|
{
|
|
481
480
|
char *matched = git__strdup(tag_name + GIT_REFS_TAGS_DIR_LEN);
|
|
482
481
|
GIT_ERROR_CHECK_ALLOC(matched);
|
|
@@ -521,10 +520,3 @@ int git_tag_peel(git_object **tag_target, const git_tag *tag)
|
|
|
521
520
|
{
|
|
522
521
|
return git_object_peel(tag_target, (const git_object *)tag, GIT_OBJECT_ANY);
|
|
523
522
|
}
|
|
524
|
-
|
|
525
|
-
/* Deprecated Functions */
|
|
526
|
-
|
|
527
|
-
int git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *buffer, int allow_ref_overwrite)
|
|
528
|
-
{
|
|
529
|
-
return git_tag_create_from_buffer(oid, repo, buffer, allow_ref_overwrite);
|
|
530
|
-
}
|
data/vendor/libgit2/src/trace.c
CHANGED
|
@@ -17,7 +17,7 @@ struct git_trace_data git_trace__data = {0};
|
|
|
17
17
|
|
|
18
18
|
#endif
|
|
19
19
|
|
|
20
|
-
int git_trace_set(git_trace_level_t level,
|
|
20
|
+
int git_trace_set(git_trace_level_t level, git_trace_callback callback)
|
|
21
21
|
{
|
|
22
22
|
#ifdef GIT_TRACE
|
|
23
23
|
assert(level == 0 || callback != NULL);
|
data/vendor/libgit2/src/trace.h
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
struct git_trace_data {
|
|
18
18
|
git_trace_level_t level;
|
|
19
|
-
|
|
19
|
+
git_trace_callback callback;
|
|
20
20
|
};
|
|
21
21
|
|
|
22
22
|
extern struct git_trace_data git_trace__data;
|
|
@@ -25,7 +25,7 @@ GIT_INLINE(void) git_trace__write_fmt(
|
|
|
25
25
|
git_trace_level_t level,
|
|
26
26
|
const char *fmt, ...)
|
|
27
27
|
{
|
|
28
|
-
|
|
28
|
+
git_trace_callback callback = git_trace__data.callback;
|
|
29
29
|
git_buf message = GIT_BUF_INIT;
|
|
30
30
|
va_list ap;
|
|
31
31
|
|
|
@@ -42,19 +42,15 @@ static const char *next_line(const char *str)
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
/*
|
|
45
|
-
* Return the position of the start of the last line. If len is 0, return
|
|
45
|
+
* Return the position of the start of the last line. If len is 0, return -1.
|
|
46
46
|
*/
|
|
47
|
-
static
|
|
47
|
+
static int last_line(const char *buf, size_t len)
|
|
48
48
|
{
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
*out = 0;
|
|
52
|
-
|
|
49
|
+
int i;
|
|
53
50
|
if (len == 0)
|
|
54
|
-
return
|
|
51
|
+
return -1;
|
|
55
52
|
if (len == 1)
|
|
56
|
-
return
|
|
57
|
-
|
|
53
|
+
return 0;
|
|
58
54
|
/*
|
|
59
55
|
* Skip the last character (in addition to the null terminator),
|
|
60
56
|
* because if the last character is a newline, it is considered as part
|
|
@@ -62,37 +58,31 @@ static bool last_line(size_t *out, const char *buf, size_t len)
|
|
|
62
58
|
*/
|
|
63
59
|
i = len - 2;
|
|
64
60
|
|
|
65
|
-
for (; i
|
|
66
|
-
if (buf[i] == '\n')
|
|
67
|
-
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
61
|
+
for (; i >= 0; i--) {
|
|
62
|
+
if (buf[i] == '\n')
|
|
63
|
+
return i + 1;
|
|
70
64
|
}
|
|
71
|
-
return
|
|
65
|
+
return 0;
|
|
72
66
|
}
|
|
73
67
|
|
|
74
68
|
/*
|
|
75
69
|
* If the given line is of the form
|
|
76
|
-
* "<token><optional whitespace><separator>..." or "<separator>...",
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
70
|
+
* "<token><optional whitespace><separator>..." or "<separator>...", return the
|
|
71
|
+
* location of the separator. Otherwise, return -1. The optional whitespace
|
|
72
|
+
* is allowed there primarily to allow things like "Bug #43" where <token> is
|
|
73
|
+
* "Bug" and <separator> is "#".
|
|
80
74
|
*
|
|
81
|
-
* The separator-starts-line case (in which this function returns
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* need such a distinction.
|
|
75
|
+
* The separator-starts-line case (in which this function returns 0) is
|
|
76
|
+
* distinguished from the non-well-formed-line case (in which this function
|
|
77
|
+
* returns -1) because some callers of this function need such a distinction.
|
|
85
78
|
*/
|
|
86
|
-
static
|
|
79
|
+
static int find_separator(const char *line, const char *separators)
|
|
87
80
|
{
|
|
88
81
|
int whitespace_found = 0;
|
|
89
82
|
const char *c;
|
|
90
83
|
for (c = line; *c; c++) {
|
|
91
|
-
if (strchr(separators, *c))
|
|
92
|
-
|
|
93
|
-
return true;
|
|
94
|
-
}
|
|
95
|
-
|
|
84
|
+
if (strchr(separators, *c))
|
|
85
|
+
return c - line;
|
|
96
86
|
if (!whitespace_found && (isalnum(*c) || *c == '-'))
|
|
97
87
|
continue;
|
|
98
88
|
if (c != line && (*c == ' ' || *c == '\t')) {
|
|
@@ -101,7 +91,7 @@ static bool find_separator(size_t *out, const char *line, const char *separators
|
|
|
101
91
|
}
|
|
102
92
|
break;
|
|
103
93
|
}
|
|
104
|
-
return
|
|
94
|
+
return -1;
|
|
105
95
|
}
|
|
106
96
|
|
|
107
97
|
/*
|
|
@@ -114,9 +104,10 @@ static bool find_separator(size_t *out, const char *line, const char *separators
|
|
|
114
104
|
* Returns the number of bytes from the tail to ignore, to be fed as
|
|
115
105
|
* the second parameter to append_signoff().
|
|
116
106
|
*/
|
|
117
|
-
static
|
|
107
|
+
static int ignore_non_trailer(const char *buf, size_t len)
|
|
118
108
|
{
|
|
119
|
-
|
|
109
|
+
int boc = 0;
|
|
110
|
+
size_t bol = 0;
|
|
120
111
|
int in_old_conflicts_block = 0;
|
|
121
112
|
size_t cutoff = len;
|
|
122
113
|
|
|
@@ -153,7 +144,7 @@ static size_t ignore_non_trailer(const char *buf, size_t len)
|
|
|
153
144
|
* Return the position of the start of the patch or the length of str if there
|
|
154
145
|
* is no patch in the message.
|
|
155
146
|
*/
|
|
156
|
-
static
|
|
147
|
+
static int find_patch_start(const char *str)
|
|
157
148
|
{
|
|
158
149
|
const char *s;
|
|
159
150
|
|
|
@@ -169,11 +160,10 @@ static size_t find_patch_start(const char *str)
|
|
|
169
160
|
* Return the position of the first trailer line or len if there are no
|
|
170
161
|
* trailers.
|
|
171
162
|
*/
|
|
172
|
-
static
|
|
163
|
+
static int find_trailer_start(const char *buf, size_t len)
|
|
173
164
|
{
|
|
174
165
|
const char *s;
|
|
175
|
-
|
|
176
|
-
int only_spaces = 1;
|
|
166
|
+
int end_of_title, l, only_spaces = 1;
|
|
177
167
|
int recognized_prefix = 0, trailer_lines = 0, non_trailer_lines = 0;
|
|
178
168
|
/*
|
|
179
169
|
* Number of possible continuation lines encountered. This will be
|
|
@@ -199,11 +189,12 @@ static size_t find_trailer_start(const char *buf, size_t len)
|
|
|
199
189
|
* trailers, or (ii) contains at least one Git-generated trailer and
|
|
200
190
|
* consists of at least 25% trailers.
|
|
201
191
|
*/
|
|
202
|
-
l = len;
|
|
203
|
-
|
|
192
|
+
for (l = last_line(buf, len);
|
|
193
|
+
l >= end_of_title;
|
|
194
|
+
l = last_line(buf, l)) {
|
|
204
195
|
const char *bol = buf + l;
|
|
205
196
|
const char *const *p;
|
|
206
|
-
|
|
197
|
+
int separator_pos;
|
|
207
198
|
|
|
208
199
|
if (bol[0] == COMMENT_LINE_CHAR) {
|
|
209
200
|
non_trailer_lines += possible_continuation_lines;
|
|
@@ -232,7 +223,7 @@ static size_t find_trailer_start(const char *buf, size_t len)
|
|
|
232
223
|
}
|
|
233
224
|
}
|
|
234
225
|
|
|
235
|
-
find_separator(
|
|
226
|
+
separator_pos = find_separator(bol, TRAILER_SEPARATORS);
|
|
236
227
|
if (separator_pos >= 1 && !isspace(bol[0])) {
|
|
237
228
|
trailer_lines++;
|
|
238
229
|
possible_continuation_lines = 0;
|
|
@@ -253,7 +244,7 @@ continue_outer_loop:
|
|
|
253
244
|
}
|
|
254
245
|
|
|
255
246
|
/* Return the position of the end of the trailers. */
|
|
256
|
-
static
|
|
247
|
+
static int find_trailer_end(const char *buf, size_t len)
|
|
257
248
|
{
|
|
258
249
|
return len - ignore_non_trailer(buf, len);
|
|
259
250
|
}
|
|
@@ -267,9 +258,6 @@ static char *extract_trailer_block(const char *message, size_t* len)
|
|
|
267
258
|
size_t trailer_len = trailer_end - trailer_start;
|
|
268
259
|
|
|
269
260
|
char *buffer = git__malloc(trailer_len + 1);
|
|
270
|
-
if (buffer == NULL)
|
|
271
|
-
return NULL;
|
|
272
|
-
|
|
273
261
|
memcpy(buffer, message + trailer_start, trailer_len);
|
|
274
262
|
buffer[trailer_len] = 0;
|
|
275
263
|
|
|
@@ -305,8 +293,6 @@ int git_message_trailers(git_message_trailer_array *trailer_arr, const char *mes
|
|
|
305
293
|
|
|
306
294
|
size_t trailer_len;
|
|
307
295
|
char *trailer = extract_trailer_block(message, &trailer_len);
|
|
308
|
-
if (trailer == NULL)
|
|
309
|
-
return -1;
|
|
310
296
|
|
|
311
297
|
for (ptr = trailer;;) {
|
|
312
298
|
switch (state) {
|
|
@@ -84,7 +84,7 @@ int git_transaction_new(git_transaction **out, git_repository *repo)
|
|
|
84
84
|
goto on_error;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
if ((error =
|
|
87
|
+
if ((error = git_strmap_alloc(&tx->locks)) < 0) {
|
|
88
88
|
error = -1;
|
|
89
89
|
goto on_error;
|
|
90
90
|
}
|
|
@@ -119,7 +119,8 @@ int git_transaction_lock_ref(git_transaction *tx, const char *refname)
|
|
|
119
119
|
if ((error = git_refdb_lock(&node->payload, tx->db, refname)) < 0)
|
|
120
120
|
return error;
|
|
121
121
|
|
|
122
|
-
|
|
122
|
+
git_strmap_insert(tx->locks, node->name, node, &error);
|
|
123
|
+
if (error < 0)
|
|
123
124
|
goto cleanup;
|
|
124
125
|
|
|
125
126
|
return 0;
|
|
@@ -133,12 +134,16 @@ cleanup:
|
|
|
133
134
|
static int find_locked(transaction_node **out, git_transaction *tx, const char *refname)
|
|
134
135
|
{
|
|
135
136
|
transaction_node *node;
|
|
137
|
+
size_t pos;
|
|
136
138
|
|
|
137
|
-
|
|
139
|
+
pos = git_strmap_lookup_index(tx->locks, refname);
|
|
140
|
+
if (!git_strmap_valid_index(tx->locks, pos)) {
|
|
138
141
|
git_error_set(GIT_ERROR_REFERENCE, "the specified reference is not locked");
|
|
139
142
|
return GIT_ENOTFOUND;
|
|
140
143
|
}
|
|
141
144
|
|
|
145
|
+
node = git_strmap_value_at(tx->locks, pos);
|
|
146
|
+
|
|
142
147
|
*out = node;
|
|
143
148
|
return 0;
|
|
144
149
|
}
|
|
@@ -334,13 +339,7 @@ int git_transaction_commit(git_transaction *tx)
|
|
|
334
339
|
return error;
|
|
335
340
|
}
|
|
336
341
|
|
|
337
|
-
if (node->ref_type
|
|
338
|
-
/* ref was locked but not modified */
|
|
339
|
-
if ((error = git_refdb_unlock(tx->db, node->payload, false, false, NULL, NULL, NULL)) < 0) {
|
|
340
|
-
return error;
|
|
341
|
-
}
|
|
342
|
-
node->committed = true;
|
|
343
|
-
} else {
|
|
342
|
+
if (node->ref_type != GIT_REFERENCE_INVALID) {
|
|
344
343
|
if ((error = update_target(tx->db, node)) < 0)
|
|
345
344
|
return error;
|
|
346
345
|
}
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
|
|
10
10
|
#include "git2.h"
|
|
11
11
|
#include "buffer.h"
|
|
12
|
-
#include "git2/sys/cred.h"
|
|
13
12
|
|
|
14
13
|
static int basic_next_token(
|
|
15
14
|
git_buf *out,
|
|
16
15
|
git_http_auth_context *ctx,
|
|
16
|
+
const char *header_name,
|
|
17
17
|
git_cred *c)
|
|
18
18
|
{
|
|
19
19
|
git_cred_userpass_plaintext *cred;
|
|
@@ -32,8 +32,9 @@ static int basic_next_token(
|
|
|
32
32
|
git_buf_printf(&raw, "%s:%s", cred->username, cred->password);
|
|
33
33
|
|
|
34
34
|
if (git_buf_oom(&raw) ||
|
|
35
|
-
|
|
36
|
-
git_buf_encode_base64(out, git_buf_cstr(&raw), raw.size) < 0
|
|
35
|
+
git_buf_printf(out, "%s: Basic ", header_name) < 0 ||
|
|
36
|
+
git_buf_encode_base64(out, git_buf_cstr(&raw), raw.size) < 0 ||
|
|
37
|
+
git_buf_puts(out, "\r\n") < 0)
|
|
37
38
|
goto on_error;
|
|
38
39
|
|
|
39
40
|
error = 0;
|
|
@@ -49,28 +50,26 @@ on_error:
|
|
|
49
50
|
static git_http_auth_context basic_context = {
|
|
50
51
|
GIT_AUTHTYPE_BASIC,
|
|
51
52
|
GIT_CREDTYPE_USERPASS_PLAINTEXT,
|
|
52
|
-
0,
|
|
53
53
|
NULL,
|
|
54
54
|
basic_next_token,
|
|
55
|
-
NULL,
|
|
56
55
|
NULL
|
|
57
56
|
};
|
|
58
57
|
|
|
59
58
|
int git_http_auth_basic(
|
|
60
|
-
git_http_auth_context **out, const
|
|
59
|
+
git_http_auth_context **out, const gitno_connection_data *connection_data)
|
|
61
60
|
{
|
|
62
|
-
GIT_UNUSED(
|
|
61
|
+
GIT_UNUSED(connection_data);
|
|
63
62
|
|
|
64
63
|
*out = &basic_context;
|
|
65
64
|
return 0;
|
|
66
65
|
}
|
|
67
66
|
|
|
68
67
|
int git_http_auth_dummy(
|
|
69
|
-
git_http_auth_context **out, const
|
|
68
|
+
git_http_auth_context **out, const gitno_connection_data *connection_data)
|
|
70
69
|
{
|
|
71
|
-
GIT_UNUSED(
|
|
70
|
+
GIT_UNUSED(connection_data);
|
|
72
71
|
|
|
73
72
|
*out = NULL;
|
|
74
|
-
return
|
|
73
|
+
return 0;
|
|
75
74
|
}
|
|
76
75
|
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
typedef enum {
|
|
17
17
|
GIT_AUTHTYPE_BASIC = 1,
|
|
18
18
|
GIT_AUTHTYPE_NEGOTIATE = 2,
|
|
19
|
-
GIT_AUTHTYPE_NTLM = 4,
|
|
20
19
|
} git_http_authtype_t;
|
|
21
20
|
|
|
22
21
|
typedef struct git_http_auth_context git_http_auth_context;
|
|
@@ -28,17 +27,11 @@ struct git_http_auth_context {
|
|
|
28
27
|
/** Supported credentials */
|
|
29
28
|
git_credtype_t credtypes;
|
|
30
29
|
|
|
31
|
-
/** Connection affinity or request affinity */
|
|
32
|
-
unsigned connection_affinity : 1;
|
|
33
|
-
|
|
34
30
|
/** Sets the challenge on the authentication context */
|
|
35
31
|
int (*set_challenge)(git_http_auth_context *ctx, const char *challenge);
|
|
36
32
|
|
|
37
33
|
/** Gets the next authentication token from the context */
|
|
38
|
-
int (*next_token)(git_buf *out, git_http_auth_context *ctx, git_cred *cred);
|
|
39
|
-
|
|
40
|
-
/** Examines if all tokens have been presented. */
|
|
41
|
-
int (*is_complete)(git_http_auth_context *ctx);
|
|
34
|
+
int (*next_token)(git_buf *out, git_http_auth_context *ctx, const char *header_name, git_cred *cred);
|
|
42
35
|
|
|
43
36
|
/** Frees the authentication context */
|
|
44
37
|
void (*free)(git_http_auth_context *ctx);
|
|
@@ -57,15 +50,15 @@ typedef struct {
|
|
|
57
50
|
/** Function to initialize an authentication context */
|
|
58
51
|
int (*init_context)(
|
|
59
52
|
git_http_auth_context **out,
|
|
60
|
-
const
|
|
53
|
+
const gitno_connection_data *connection_data);
|
|
61
54
|
} git_http_auth_scheme;
|
|
62
55
|
|
|
63
56
|
int git_http_auth_dummy(
|
|
64
57
|
git_http_auth_context **out,
|
|
65
|
-
const
|
|
58
|
+
const gitno_connection_data *connection_data);
|
|
66
59
|
|
|
67
60
|
int git_http_auth_basic(
|
|
68
61
|
git_http_auth_context **out,
|
|
69
|
-
const
|
|
62
|
+
const gitno_connection_data *connection_data);
|
|
70
63
|
|
|
71
64
|
#endif
|
|
@@ -7,19 +7,14 @@
|
|
|
7
7
|
|
|
8
8
|
#include "auth_negotiate.h"
|
|
9
9
|
|
|
10
|
-
#
|
|
10
|
+
#ifdef GIT_GSSAPI
|
|
11
11
|
|
|
12
12
|
#include "git2.h"
|
|
13
13
|
#include "buffer.h"
|
|
14
14
|
#include "auth.h"
|
|
15
|
-
#include "git2/sys/cred.h"
|
|
16
15
|
|
|
17
|
-
#ifdef GIT_GSSFRAMEWORK
|
|
18
|
-
#import <GSS/GSS.h>
|
|
19
|
-
#elif defined(GIT_GSSAPI)
|
|
20
16
|
#include <gssapi.h>
|
|
21
17
|
#include <krb5.h>
|
|
22
|
-
#endif
|
|
23
18
|
|
|
24
19
|
static gss_OID_desc negotiate_oid_spnego =
|
|
25
20
|
{ 6, (void *) "\x2b\x06\x01\x05\x05\x02" };
|
|
@@ -78,6 +73,7 @@ static int negotiate_set_challenge(
|
|
|
78
73
|
static int negotiate_next_token(
|
|
79
74
|
git_buf *buf,
|
|
80
75
|
git_http_auth_context *c,
|
|
76
|
+
const char *header_name,
|
|
81
77
|
git_cred *cred)
|
|
82
78
|
{
|
|
83
79
|
http_auth_negotiate_context *ctx = (http_auth_negotiate_context *)c;
|
|
@@ -149,7 +145,7 @@ static int negotiate_next_token(
|
|
|
149
145
|
&output_token,
|
|
150
146
|
NULL,
|
|
151
147
|
NULL))) {
|
|
152
|
-
negotiate_err_set(status_major, status_minor, "
|
|
148
|
+
negotiate_err_set(status_major, status_minor, "Negotiate failure");
|
|
153
149
|
error = -1;
|
|
154
150
|
goto done;
|
|
155
151
|
}
|
|
@@ -160,8 +156,9 @@ static int negotiate_next_token(
|
|
|
160
156
|
goto done;
|
|
161
157
|
}
|
|
162
158
|
|
|
163
|
-
|
|
159
|
+
git_buf_printf(buf, "%s: Negotiate ", header_name);
|
|
164
160
|
git_buf_encode_base64(buf, output_token.value, output_token.length);
|
|
161
|
+
git_buf_puts(buf, "\r\n");
|
|
165
162
|
|
|
166
163
|
if (git_buf_oom(buf))
|
|
167
164
|
error = -1;
|
|
@@ -173,15 +170,6 @@ done:
|
|
|
173
170
|
return error;
|
|
174
171
|
}
|
|
175
172
|
|
|
176
|
-
static int negotiate_is_complete(git_http_auth_context *c)
|
|
177
|
-
{
|
|
178
|
-
http_auth_negotiate_context *ctx = (http_auth_negotiate_context *)c;
|
|
179
|
-
|
|
180
|
-
assert(ctx);
|
|
181
|
-
|
|
182
|
-
return (ctx->complete == 1);
|
|
183
|
-
}
|
|
184
|
-
|
|
185
173
|
static void negotiate_context_free(git_http_auth_context *c)
|
|
186
174
|
{
|
|
187
175
|
http_auth_negotiate_context *ctx = (http_auth_negotiate_context *)c;
|
|
@@ -206,7 +194,7 @@ static void negotiate_context_free(git_http_auth_context *c)
|
|
|
206
194
|
|
|
207
195
|
static int negotiate_init_context(
|
|
208
196
|
http_auth_negotiate_context *ctx,
|
|
209
|
-
const
|
|
197
|
+
const gitno_connection_data *connection_data)
|
|
210
198
|
{
|
|
211
199
|
OM_uint32 status_major, status_minor;
|
|
212
200
|
gss_OID item, *oid;
|
|
@@ -247,7 +235,7 @@ static int negotiate_init_context(
|
|
|
247
235
|
}
|
|
248
236
|
|
|
249
237
|
git_buf_puts(&ctx->target, "HTTP@");
|
|
250
|
-
git_buf_puts(&ctx->target,
|
|
238
|
+
git_buf_puts(&ctx->target, connection_data->host);
|
|
251
239
|
|
|
252
240
|
if (git_buf_oom(&ctx->target))
|
|
253
241
|
return -1;
|
|
@@ -260,7 +248,7 @@ static int negotiate_init_context(
|
|
|
260
248
|
|
|
261
249
|
int git_http_auth_negotiate(
|
|
262
250
|
git_http_auth_context **out,
|
|
263
|
-
const
|
|
251
|
+
const gitno_connection_data *connection_data)
|
|
264
252
|
{
|
|
265
253
|
http_auth_negotiate_context *ctx;
|
|
266
254
|
|
|
@@ -269,17 +257,15 @@ int git_http_auth_negotiate(
|
|
|
269
257
|
ctx = git__calloc(1, sizeof(http_auth_negotiate_context));
|
|
270
258
|
GIT_ERROR_CHECK_ALLOC(ctx);
|
|
271
259
|
|
|
272
|
-
if (negotiate_init_context(ctx,
|
|
260
|
+
if (negotiate_init_context(ctx, connection_data) < 0) {
|
|
273
261
|
git__free(ctx);
|
|
274
262
|
return -1;
|
|
275
263
|
}
|
|
276
264
|
|
|
277
265
|
ctx->parent.type = GIT_AUTHTYPE_NEGOTIATE;
|
|
278
266
|
ctx->parent.credtypes = GIT_CREDTYPE_DEFAULT;
|
|
279
|
-
ctx->parent.connection_affinity = 1;
|
|
280
267
|
ctx->parent.set_challenge = negotiate_set_challenge;
|
|
281
268
|
ctx->parent.next_token = negotiate_next_token;
|
|
282
|
-
ctx->parent.is_complete = negotiate_is_complete;
|
|
283
269
|
ctx->parent.free = negotiate_context_free;
|
|
284
270
|
|
|
285
271
|
*out = (git_http_auth_context *)ctx;
|