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.
Files changed (350) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rugged/version.rb +1 -1
  3. data/vendor/libgit2/AUTHORS +0 -1
  4. data/vendor/libgit2/CMakeLists.txt +16 -36
  5. data/vendor/libgit2/COPYING +0 -28
  6. data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +1 -5
  7. data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
  8. data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
  9. data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
  10. data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +0 -6
  11. data/vendor/libgit2/deps/http-parser/http_parser.c +6 -11
  12. data/vendor/libgit2/deps/regex/CMakeLists.txt +2 -0
  13. data/vendor/libgit2/deps/regex/COPYING +502 -0
  14. data/vendor/libgit2/deps/regex/config.h +7 -0
  15. data/vendor/libgit2/deps/regex/regcomp.c +3857 -0
  16. data/vendor/libgit2/deps/regex/regex.c +92 -0
  17. data/vendor/libgit2/deps/regex/regex.h +582 -0
  18. data/vendor/libgit2/deps/regex/regex_internal.c +1744 -0
  19. data/vendor/libgit2/deps/regex/regex_internal.h +819 -0
  20. data/vendor/libgit2/deps/regex/regexec.c +4369 -0
  21. data/vendor/libgit2/deps/zlib/adler32.c +7 -0
  22. data/vendor/libgit2/deps/zlib/crc32.c +7 -0
  23. data/vendor/libgit2/include/git2.h +0 -2
  24. data/vendor/libgit2/include/git2/apply.h +2 -22
  25. data/vendor/libgit2/include/git2/attr.h +12 -19
  26. data/vendor/libgit2/include/git2/blame.h +2 -2
  27. data/vendor/libgit2/include/git2/blob.h +12 -44
  28. data/vendor/libgit2/include/git2/buffer.h +14 -20
  29. data/vendor/libgit2/include/git2/checkout.h +14 -46
  30. data/vendor/libgit2/include/git2/cherrypick.h +3 -3
  31. data/vendor/libgit2/include/git2/clone.h +2 -2
  32. data/vendor/libgit2/include/git2/commit.h +1 -23
  33. data/vendor/libgit2/include/git2/common.h +5 -7
  34. data/vendor/libgit2/include/git2/config.h +12 -12
  35. data/vendor/libgit2/include/git2/deprecated.h +3 -243
  36. data/vendor/libgit2/include/git2/describe.h +4 -4
  37. data/vendor/libgit2/include/git2/diff.h +14 -16
  38. data/vendor/libgit2/include/git2/filter.h +0 -8
  39. data/vendor/libgit2/include/git2/index.h +1 -2
  40. data/vendor/libgit2/include/git2/indexer.h +4 -48
  41. data/vendor/libgit2/include/git2/inttypes.h +309 -0
  42. data/vendor/libgit2/include/git2/merge.h +10 -6
  43. data/vendor/libgit2/include/git2/net.h +5 -0
  44. data/vendor/libgit2/include/git2/object.h +14 -2
  45. data/vendor/libgit2/include/git2/odb.h +2 -3
  46. data/vendor/libgit2/include/git2/odb_backend.h +4 -5
  47. data/vendor/libgit2/include/git2/oid.h +1 -1
  48. data/vendor/libgit2/include/git2/pack.h +1 -12
  49. data/vendor/libgit2/include/git2/proxy.h +3 -5
  50. data/vendor/libgit2/include/git2/rebase.h +2 -46
  51. data/vendor/libgit2/include/git2/refs.h +0 -19
  52. data/vendor/libgit2/include/git2/remote.h +12 -35
  53. data/vendor/libgit2/include/git2/repository.h +2 -24
  54. data/vendor/libgit2/include/git2/revert.h +1 -1
  55. data/vendor/libgit2/include/git2/stash.h +3 -3
  56. data/vendor/libgit2/include/git2/status.h +16 -25
  57. data/vendor/libgit2/include/git2/submodule.h +3 -20
  58. data/vendor/libgit2/include/git2/sys/alloc.h +9 -9
  59. data/vendor/libgit2/include/git2/sys/odb_backend.h +4 -48
  60. data/vendor/libgit2/include/git2/sys/refdb_backend.h +21 -57
  61. data/vendor/libgit2/include/git2/sys/repository.h +1 -5
  62. data/vendor/libgit2/include/git2/sys/time.h +31 -0
  63. data/vendor/libgit2/include/git2/sys/transport.h +2 -2
  64. data/vendor/libgit2/include/git2/tag.h +2 -11
  65. data/vendor/libgit2/include/git2/trace.h +2 -2
  66. data/vendor/libgit2/include/git2/transport.h +340 -11
  67. data/vendor/libgit2/include/git2/tree.h +1 -1
  68. data/vendor/libgit2/include/git2/types.h +89 -4
  69. data/vendor/libgit2/include/git2/version.h +2 -2
  70. data/vendor/libgit2/include/git2/worktree.h +5 -5
  71. data/vendor/libgit2/libgit2.pc.in +13 -0
  72. data/vendor/libgit2/src/CMakeLists.txt +222 -88
  73. data/vendor/libgit2/src/alloc.c +14 -2
  74. data/vendor/libgit2/src/apply.c +30 -60
  75. data/vendor/libgit2/src/attr.c +64 -70
  76. data/vendor/libgit2/src/attr_file.c +96 -189
  77. data/vendor/libgit2/src/attr_file.h +9 -9
  78. data/vendor/libgit2/src/attrcache.c +46 -44
  79. data/vendor/libgit2/src/attrcache.h +1 -2
  80. data/vendor/libgit2/src/blame.c +5 -17
  81. data/vendor/libgit2/src/blame.h +1 -1
  82. data/vendor/libgit2/src/blame_git.c +7 -21
  83. data/vendor/libgit2/src/blob.c +17 -81
  84. data/vendor/libgit2/src/blob.h +2 -2
  85. data/vendor/libgit2/src/branch.c +5 -29
  86. data/vendor/libgit2/src/buffer.c +7 -14
  87. data/vendor/libgit2/src/cache.c +33 -26
  88. data/vendor/libgit2/src/cache.h +1 -1
  89. data/vendor/libgit2/src/cc-compat.h +0 -5
  90. data/vendor/libgit2/src/checkout.c +16 -26
  91. data/vendor/libgit2/src/cherrypick.c +3 -9
  92. data/vendor/libgit2/src/clone.c +7 -29
  93. data/vendor/libgit2/src/clone.h +0 -4
  94. data/vendor/libgit2/src/commit.c +21 -69
  95. data/vendor/libgit2/src/commit.h +0 -6
  96. data/vendor/libgit2/src/commit_list.c +76 -28
  97. data/vendor/libgit2/src/commit_list.h +2 -2
  98. data/vendor/libgit2/src/common.h +75 -3
  99. data/vendor/libgit2/src/config.c +40 -31
  100. data/vendor/libgit2/src/config.h +6 -7
  101. data/vendor/libgit2/src/config_backend.h +0 -12
  102. data/vendor/libgit2/src/config_cache.c +39 -39
  103. data/vendor/libgit2/src/config_entries.c +99 -69
  104. data/vendor/libgit2/src/config_entries.h +0 -1
  105. data/vendor/libgit2/src/config_file.c +380 -337
  106. data/vendor/libgit2/src/config_mem.c +16 -12
  107. data/vendor/libgit2/src/config_parse.c +29 -49
  108. data/vendor/libgit2/src/config_parse.h +12 -13
  109. data/vendor/libgit2/src/crlf.c +14 -14
  110. data/vendor/libgit2/src/describe.c +20 -21
  111. data/vendor/libgit2/src/diff.c +58 -43
  112. data/vendor/libgit2/src/diff.h +1 -2
  113. data/vendor/libgit2/src/diff_driver.c +38 -37
  114. data/vendor/libgit2/src/diff_file.c +7 -9
  115. data/vendor/libgit2/src/diff_file.h +1 -1
  116. data/vendor/libgit2/src/diff_generate.c +85 -135
  117. data/vendor/libgit2/src/diff_generate.h +2 -2
  118. data/vendor/libgit2/src/diff_parse.c +1 -1
  119. data/vendor/libgit2/src/diff_print.c +13 -25
  120. data/vendor/libgit2/src/diff_stats.c +1 -1
  121. data/vendor/libgit2/src/diff_tform.c +4 -4
  122. data/vendor/libgit2/src/errors.c +22 -12
  123. data/vendor/libgit2/src/features.h.in +2 -9
  124. data/vendor/libgit2/src/fetch.c +2 -7
  125. data/vendor/libgit2/src/fetchhead.c +1 -1
  126. data/vendor/libgit2/src/filebuf.c +10 -6
  127. data/vendor/libgit2/src/filebuf.h +2 -2
  128. data/vendor/libgit2/src/{futils.c → fileops.c} +17 -21
  129. data/vendor/libgit2/src/{futils.h → fileops.h} +5 -5
  130. data/vendor/libgit2/src/filter.c +8 -16
  131. data/vendor/libgit2/src/fnmatch.c +248 -0
  132. data/vendor/libgit2/src/fnmatch.h +48 -0
  133. data/vendor/libgit2/src/global.c +40 -12
  134. data/vendor/libgit2/src/global.h +2 -0
  135. data/vendor/libgit2/src/hash.c +0 -61
  136. data/vendor/libgit2/src/hash.h +21 -19
  137. data/vendor/libgit2/src/hash/{sha1/collisiondetect.c → hash_collisiondetect.h} +17 -14
  138. data/vendor/libgit2/src/hash/{sha1/common_crypto.c → hash_common_crypto.h} +19 -15
  139. data/vendor/libgit2/src/hash/{sha1/generic.c → hash_generic.c} +10 -22
  140. data/vendor/libgit2/src/hash/{sha1/generic.h → hash_generic.h} +14 -4
  141. data/vendor/libgit2/src/hash/{sha1/mbedtls.c → hash_mbedtls.c} +7 -15
  142. data/vendor/libgit2/src/hash/{sha1/mbedtls.h → hash_mbedtls.h} +11 -6
  143. data/vendor/libgit2/src/hash/{sha1/openssl.c → hash_openssl.h} +18 -14
  144. data/vendor/libgit2/src/hash/{sha1/win32.c → hash_win32.c} +24 -34
  145. data/vendor/libgit2/src/hash/{sha1/win32.h → hash_win32.h} +19 -6
  146. data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/sha1.c +3 -14
  147. data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/sha1.h +0 -0
  148. data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/ubc_check.c +0 -0
  149. data/vendor/libgit2/src/hash/{sha1/sha1dc → sha1dc}/ubc_check.h +0 -0
  150. data/vendor/libgit2/src/hashsig.c +1 -1
  151. data/vendor/libgit2/src/idxmap.c +65 -91
  152. data/vendor/libgit2/src/idxmap.h +15 -151
  153. data/vendor/libgit2/src/ignore.c +38 -32
  154. data/vendor/libgit2/src/index.c +43 -66
  155. data/vendor/libgit2/src/index.h +1 -1
  156. data/vendor/libgit2/src/indexer.c +70 -69
  157. data/vendor/libgit2/src/integer.h +4 -39
  158. data/vendor/libgit2/src/iterator.c +22 -27
  159. data/vendor/libgit2/src/map.h +1 -1
  160. data/vendor/libgit2/src/merge.c +44 -58
  161. data/vendor/libgit2/src/merge_driver.c +4 -4
  162. data/vendor/libgit2/src/merge_file.c +1 -1
  163. data/vendor/libgit2/src/mwindow.c +23 -18
  164. data/vendor/libgit2/src/mwindow.h +4 -4
  165. data/vendor/libgit2/src/netops.c +165 -55
  166. data/vendor/libgit2/src/netops.h +25 -3
  167. data/vendor/libgit2/src/notes.c +2 -2
  168. data/vendor/libgit2/src/object.c +2 -2
  169. data/vendor/libgit2/src/object.h +0 -2
  170. data/vendor/libgit2/src/odb.c +23 -41
  171. data/vendor/libgit2/src/odb.h +2 -3
  172. data/vendor/libgit2/src/odb_loose.c +10 -17
  173. data/vendor/libgit2/src/odb_mempack.c +23 -10
  174. data/vendor/libgit2/src/odb_pack.c +4 -4
  175. data/vendor/libgit2/src/offmap.c +55 -43
  176. data/vendor/libgit2/src/offmap.h +24 -102
  177. data/vendor/libgit2/src/oid.c +1 -6
  178. data/vendor/libgit2/src/oidmap.c +57 -39
  179. data/vendor/libgit2/src/oidmap.h +19 -99
  180. data/vendor/libgit2/src/pack-objects.c +32 -25
  181. data/vendor/libgit2/src/pack-objects.h +1 -1
  182. data/vendor/libgit2/src/pack.c +47 -45
  183. data/vendor/libgit2/src/pack.h +14 -12
  184. data/vendor/libgit2/src/parse.c +0 -10
  185. data/vendor/libgit2/src/parse.h +3 -3
  186. data/vendor/libgit2/src/patch.c +1 -1
  187. data/vendor/libgit2/src/patch_generate.c +2 -2
  188. data/vendor/libgit2/src/patch_parse.c +31 -124
  189. data/vendor/libgit2/src/path.c +6 -43
  190. data/vendor/libgit2/src/path.h +0 -2
  191. data/vendor/libgit2/src/pathspec.c +13 -13
  192. data/vendor/libgit2/src/pool.c +22 -26
  193. data/vendor/libgit2/src/pool.h +7 -7
  194. data/vendor/libgit2/src/posix.c +7 -7
  195. data/vendor/libgit2/src/posix.h +1 -12
  196. data/vendor/libgit2/src/proxy.c +2 -7
  197. data/vendor/libgit2/src/push.c +5 -10
  198. data/vendor/libgit2/src/reader.c +2 -2
  199. data/vendor/libgit2/src/rebase.c +7 -66
  200. data/vendor/libgit2/src/refdb.c +0 -12
  201. data/vendor/libgit2/src/refdb_fs.c +165 -214
  202. data/vendor/libgit2/src/reflog.c +13 -11
  203. data/vendor/libgit2/src/refs.c +18 -24
  204. data/vendor/libgit2/src/refspec.c +16 -9
  205. data/vendor/libgit2/src/remote.c +52 -50
  206. data/vendor/libgit2/src/remote.h +2 -2
  207. data/vendor/libgit2/src/repository.c +100 -115
  208. data/vendor/libgit2/src/repository.h +40 -49
  209. data/vendor/libgit2/src/revert.c +3 -8
  210. data/vendor/libgit2/src/revparse.c +19 -18
  211. data/vendor/libgit2/src/revwalk.c +30 -63
  212. data/vendor/libgit2/src/revwalk.h +0 -20
  213. data/vendor/libgit2/src/settings.c +0 -5
  214. data/vendor/libgit2/src/sortedcache.c +26 -12
  215. data/vendor/libgit2/src/sortedcache.h +1 -1
  216. data/vendor/libgit2/src/stash.c +65 -45
  217. data/vendor/libgit2/src/status.c +9 -15
  218. data/vendor/libgit2/src/{allocators/stdalloc.c → stdalloc.c} +4 -3
  219. data/vendor/libgit2/src/{allocators/stdalloc.h → stdalloc.h} +4 -4
  220. data/vendor/libgit2/src/streams/openssl.c +0 -20
  221. data/vendor/libgit2/src/streams/socket.c +2 -2
  222. data/vendor/libgit2/src/strmap.c +84 -37
  223. data/vendor/libgit2/src/strmap.h +33 -105
  224. data/vendor/libgit2/src/submodule.c +70 -102
  225. data/vendor/libgit2/src/submodule.h +1 -1
  226. data/vendor/libgit2/src/sysdir.c +1 -11
  227. data/vendor/libgit2/src/tag.c +2 -10
  228. data/vendor/libgit2/src/trace.c +1 -1
  229. data/vendor/libgit2/src/trace.h +2 -2
  230. data/vendor/libgit2/src/trailer.c +32 -46
  231. data/vendor/libgit2/src/transaction.c +9 -10
  232. data/vendor/libgit2/src/transports/auth.c +9 -10
  233. data/vendor/libgit2/src/transports/auth.h +4 -11
  234. data/vendor/libgit2/src/transports/auth_negotiate.c +9 -23
  235. data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
  236. data/vendor/libgit2/src/transports/cred.c +6 -6
  237. data/vendor/libgit2/src/{allocators/win32_crtdbg.h → transports/cred.h} +4 -5
  238. data/vendor/libgit2/src/transports/git.c +16 -11
  239. data/vendor/libgit2/src/transports/http.c +276 -419
  240. data/vendor/libgit2/src/transports/http.h +1 -1
  241. data/vendor/libgit2/src/transports/local.c +9 -9
  242. data/vendor/libgit2/src/transports/smart.c +17 -17
  243. data/vendor/libgit2/src/transports/smart.h +2 -2
  244. data/vendor/libgit2/src/transports/smart_protocol.c +60 -36
  245. data/vendor/libgit2/src/transports/ssh.c +36 -46
  246. data/vendor/libgit2/src/transports/winhttp.c +207 -231
  247. data/vendor/libgit2/src/tree-cache.c +7 -14
  248. data/vendor/libgit2/src/tree.c +24 -10
  249. data/vendor/libgit2/src/unix/map.c +1 -1
  250. data/vendor/libgit2/src/unix/posix.h +11 -1
  251. data/vendor/libgit2/src/userdiff.h +1 -3
  252. data/vendor/libgit2/src/util.c +53 -51
  253. data/vendor/libgit2/src/util.h +21 -16
  254. data/vendor/libgit2/src/win32/map.c +5 -3
  255. data/vendor/libgit2/src/win32/path_w32.c +2 -12
  256. data/vendor/libgit2/src/win32/path_w32.h +29 -0
  257. data/vendor/libgit2/src/win32/posix.h +4 -1
  258. data/vendor/libgit2/src/win32/posix_w32.c +5 -40
  259. data/vendor/libgit2/src/win32/precompiled.h +2 -0
  260. data/vendor/libgit2/src/win32/thread.c +10 -5
  261. data/vendor/libgit2/src/win32/w32_buffer.c +3 -7
  262. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +93 -0
  263. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +2 -0
  264. data/vendor/libgit2/src/win32/w32_stack.c +9 -4
  265. data/vendor/libgit2/src/win32/w32_stack.h +3 -3
  266. data/vendor/libgit2/src/win32/w32_util.c +0 -31
  267. data/vendor/libgit2/src/win32/w32_util.h +32 -6
  268. data/vendor/libgit2/src/worktree.c +22 -36
  269. data/vendor/libgit2/src/xdiff/xdiffi.c +1 -1
  270. data/vendor/libgit2/src/xdiff/xmerge.c +0 -12
  271. data/vendor/libgit2/src/xdiff/xpatience.c +0 -3
  272. metadata +34 -98
  273. data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +0 -28
  274. data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +0 -38
  275. data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +0 -37
  276. data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +0 -110
  277. data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +0 -53
  278. data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +0 -124
  279. data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +0 -66
  280. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +0 -21
  281. data/vendor/libgit2/deps/ntlmclient/compat.h +0 -33
  282. data/vendor/libgit2/deps/ntlmclient/crypt.h +0 -64
  283. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +0 -120
  284. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +0 -18
  285. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +0 -145
  286. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +0 -18
  287. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +0 -130
  288. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +0 -21
  289. data/vendor/libgit2/deps/ntlmclient/ntlm.c +0 -1420
  290. data/vendor/libgit2/deps/ntlmclient/ntlm.h +0 -174
  291. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +0 -320
  292. data/vendor/libgit2/deps/ntlmclient/unicode.h +0 -36
  293. data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +0 -445
  294. data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +0 -201
  295. data/vendor/libgit2/deps/ntlmclient/utf8.h +0 -1257
  296. data/vendor/libgit2/deps/ntlmclient/util.c +0 -21
  297. data/vendor/libgit2/deps/ntlmclient/util.h +0 -14
  298. data/vendor/libgit2/deps/pcre/CMakeLists.txt +0 -140
  299. data/vendor/libgit2/deps/pcre/COPYING +0 -5
  300. data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +0 -22
  301. data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +0 -17
  302. data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +0 -58
  303. data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +0 -29
  304. data/vendor/libgit2/deps/pcre/config.h.in +0 -57
  305. data/vendor/libgit2/deps/pcre/pcre.h +0 -641
  306. data/vendor/libgit2/deps/pcre/pcre_byte_order.c +0 -319
  307. data/vendor/libgit2/deps/pcre/pcre_chartables.c +0 -198
  308. data/vendor/libgit2/deps/pcre/pcre_compile.c +0 -9800
  309. data/vendor/libgit2/deps/pcre/pcre_config.c +0 -190
  310. data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +0 -3676
  311. data/vendor/libgit2/deps/pcre/pcre_exec.c +0 -7173
  312. data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +0 -245
  313. data/vendor/libgit2/deps/pcre/pcre_get.c +0 -669
  314. data/vendor/libgit2/deps/pcre/pcre_globals.c +0 -86
  315. data/vendor/libgit2/deps/pcre/pcre_internal.h +0 -2787
  316. data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +0 -11913
  317. data/vendor/libgit2/deps/pcre/pcre_maketables.c +0 -156
  318. data/vendor/libgit2/deps/pcre/pcre_newline.c +0 -210
  319. data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +0 -94
  320. data/vendor/libgit2/deps/pcre/pcre_printint.c +0 -834
  321. data/vendor/libgit2/deps/pcre/pcre_refcount.c +0 -92
  322. data/vendor/libgit2/deps/pcre/pcre_string_utils.c +0 -211
  323. data/vendor/libgit2/deps/pcre/pcre_study.c +0 -1686
  324. data/vendor/libgit2/deps/pcre/pcre_tables.c +0 -727
  325. data/vendor/libgit2/deps/pcre/pcre_ucd.c +0 -3644
  326. data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +0 -301
  327. data/vendor/libgit2/deps/pcre/pcre_version.c +0 -98
  328. data/vendor/libgit2/deps/pcre/pcre_xclass.c +0 -268
  329. data/vendor/libgit2/deps/pcre/pcreposix.c +0 -421
  330. data/vendor/libgit2/deps/pcre/pcreposix.h +0 -117
  331. data/vendor/libgit2/deps/pcre/ucp.h +0 -224
  332. data/vendor/libgit2/include/git2/cert.h +0 -135
  333. data/vendor/libgit2/include/git2/cred.h +0 -308
  334. data/vendor/libgit2/include/git2/sys/cred.h +0 -90
  335. data/vendor/libgit2/src/allocators/win32_crtdbg.c +0 -118
  336. data/vendor/libgit2/src/config_snapshot.c +0 -206
  337. data/vendor/libgit2/src/errors.h +0 -81
  338. data/vendor/libgit2/src/hash/sha1.h +0 -38
  339. data/vendor/libgit2/src/hash/sha1/collisiondetect.h +0 -19
  340. data/vendor/libgit2/src/hash/sha1/common_crypto.h +0 -19
  341. data/vendor/libgit2/src/hash/sha1/openssl.h +0 -19
  342. data/vendor/libgit2/src/net.c +0 -184
  343. data/vendor/libgit2/src/net.h +0 -36
  344. data/vendor/libgit2/src/regexp.c +0 -221
  345. data/vendor/libgit2/src/regexp.h +0 -97
  346. data/vendor/libgit2/src/transports/auth_ntlm.c +0 -223
  347. data/vendor/libgit2/src/transports/auth_ntlm.h +0 -35
  348. data/vendor/libgit2/src/wildmatch.c +0 -320
  349. data/vendor/libgit2/src/wildmatch.h +0 -23
  350. data/vendor/libgit2/src/win32/w32_common.h +0 -39
@@ -140,24 +140,14 @@ int git_win32_path_canonicalize(git_win32_path path)
140
140
 
141
141
  *to = L'\0';
142
142
 
143
- if ((to - path) > INT_MAX) {
144
- SetLastError(ERROR_FILENAME_EXCED_RANGE);
145
- return -1;
146
- }
147
-
148
- return (int)(to - path);
143
+ return (to - path);
149
144
  }
150
145
 
151
146
  int git_win32_path__cwd(wchar_t *out, size_t len)
152
147
  {
153
148
  int cwd_len;
154
149
 
155
- if (len > INT_MAX) {
156
- errno = ENAMETOOLONG;
157
- return -1;
158
- }
159
-
160
- if ((cwd_len = path__cwd(out, (int)len)) < 0)
150
+ if ((cwd_len = path__cwd(out, len)) < 0)
161
151
  return -1;
162
152
 
163
153
  /* UNC paths */
@@ -8,8 +8,37 @@
8
8
  #define INCLUDE_win32_path_w32_h__
9
9
 
10
10
  #include "common.h"
11
+
11
12
  #include "vector.h"
12
13
 
14
+ /*
15
+ * Provides a large enough buffer to support Windows paths: MAX_PATH is
16
+ * 260, corresponding to a maximum path length of 259 characters plus a
17
+ * NULL terminator. Prefixing with "\\?\" adds 4 characters, but if the
18
+ * original was a UNC path, then we turn "\\server\share" into
19
+ * "\\?\UNC\server\share". So we replace the first two characters with
20
+ * 8 characters, a net gain of 6, so the maximum length is MAX_PATH+6.
21
+ */
22
+ #define GIT_WIN_PATH_UTF16 MAX_PATH+6
23
+
24
+ /* Maximum size of a UTF-8 Win32 path. We remove the "\\?\" or "\\?\UNC\"
25
+ * prefixes for presentation, bringing us back to 259 (non-NULL)
26
+ * characters. UTF-8 does have 4-byte sequences, but they are encoded in
27
+ * UTF-16 using surrogate pairs, which takes up the space of two characters.
28
+ * Two characters in the range U+0800 -> U+FFFF take up more space in UTF-8
29
+ * (6 bytes) than one surrogate pair (4 bytes).
30
+ */
31
+ #define GIT_WIN_PATH_UTF8 (259 * 3 + 1)
32
+
33
+ /*
34
+ * The length of a Windows "shortname", for 8.3 compatibility.
35
+ */
36
+ #define GIT_WIN_PATH_SHORTNAME 13
37
+
38
+ /* Win32 path types */
39
+ typedef wchar_t git_win32_path[GIT_WIN_PATH_UTF16];
40
+ typedef char git_win32_utf8_path[GIT_WIN_PATH_UTF8];
41
+
13
42
  /**
14
43
  * Create a Win32 path (in UCS-2 format) from a UTF-8 string.
15
44
  *
@@ -47,7 +47,7 @@ extern int p_chdir(const char* path);
47
47
  extern int p_chmod(const char* path, mode_t mode);
48
48
  extern int p_rmdir(const char* path);
49
49
  extern int p_access(const char* path, mode_t mode);
50
- extern int p_ftruncate(int fd, off64_t size);
50
+ extern int p_ftruncate(int fd, git_off_t size);
51
51
 
52
52
  /* p_lstat is almost but not quite POSIX correct. Specifically, the use of
53
53
  * ENOTDIR is wrong, in that it does not mean precisely that a non-directory
@@ -60,4 +60,7 @@ extern int p_lstat_posixly(const char *filename, struct stat *buf);
60
60
  extern struct tm * p_localtime_r(const time_t *timer, struct tm *result);
61
61
  extern struct tm * p_gmtime_r(const time_t *timer, struct tm *result);
62
62
 
63
+ /* Use the bundled regcomp */
64
+ #define p_regcomp regcomp
65
+
63
66
  #endif
@@ -8,7 +8,7 @@
8
8
  #include "common.h"
9
9
 
10
10
  #include "../posix.h"
11
- #include "../futils.h"
11
+ #include "../fileops.h"
12
12
  #include "path.h"
13
13
  #include "path_w32.h"
14
14
  #include "utf-conv.h"
@@ -210,7 +210,7 @@ on_error:
210
210
  * We now take a "git_off_t" rather than "long" because
211
211
  * files may be longer than 2Gb.
212
212
  */
213
- int p_ftruncate(int fd, off64_t size)
213
+ int p_ftruncate(int fd, git_off_t size)
214
214
  {
215
215
  if (size < 0) {
216
216
  errno = EINVAL;
@@ -251,25 +251,9 @@ int p_link(const char *old, const char *new)
251
251
 
252
252
  GIT_INLINE(int) unlink_once(const wchar_t *path)
253
253
  {
254
- DWORD error;
255
-
256
254
  if (DeleteFileW(path))
257
255
  return 0;
258
256
 
259
- if ((error = GetLastError()) == ERROR_ACCESS_DENIED) {
260
- WIN32_FILE_ATTRIBUTE_DATA fdata;
261
- if (!GetFileAttributesExW(path, GetFileExInfoStandard, &fdata) ||
262
- !(fdata.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) ||
263
- !(fdata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
264
- goto out;
265
-
266
- if (RemoveDirectoryW(path))
267
- return 0;
268
- }
269
-
270
- out:
271
- SetLastError(error);
272
-
273
257
  if (last_error_retryable())
274
258
  return GIT_RETRY;
275
259
 
@@ -414,37 +398,18 @@ int p_readlink(const char *path, char *buf, size_t bufsiz)
414
398
  return (int)bufsiz;
415
399
  }
416
400
 
417
- static bool target_is_dir(const char *target, const char *path)
418
- {
419
- git_buf resolved = GIT_BUF_INIT;
420
- git_win32_path resolved_w;
421
- bool isdir = true;
422
-
423
- if (git_path_is_absolute(target))
424
- git_win32_path_from_utf8(resolved_w, target);
425
- else if (git_path_dirname_r(&resolved, path) < 0 ||
426
- git_path_apply_relative(&resolved, target) < 0 ||
427
- git_win32_path_from_utf8(resolved_w, resolved.ptr) < 0)
428
- goto out;
429
-
430
- isdir = GetFileAttributesW(resolved_w) & FILE_ATTRIBUTE_DIRECTORY;
431
-
432
- out:
433
- git_buf_dispose(&resolved);
434
- return isdir;
435
- }
436
-
437
401
  int p_symlink(const char *target, const char *path)
438
402
  {
439
403
  git_win32_path target_w, path_w;
440
404
  DWORD dwFlags;
441
405
 
442
406
  if (git_win32_path_from_utf8(path_w, path) < 0 ||
443
- git__utf8_to_16(target_w, MAX_PATH, target) < 0)
407
+ git__utf8_to_16(target_w, MAX_PATH, target) < 0)
444
408
  return -1;
445
409
 
446
410
  dwFlags = SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE;
447
- if (target_is_dir(target, path))
411
+
412
+ if (GetFileAttributesW(target_w) & FILE_ATTRIBUTE_DIRECTORY)
448
413
  dwFlags |= SYMBOLIC_LINK_FLAG_DIRECTORY;
449
414
 
450
415
  if (!CreateSymbolicLinkW(path_w, target_w, dwFlags))
@@ -13,6 +13,8 @@
13
13
  #include <sys/types.h>
14
14
  #include <sys/stat.h>
15
15
 
16
+ #include <regex.h>
17
+
16
18
  #include <io.h>
17
19
  #include <direct.h>
18
20
  #ifdef GIT_THREADS
@@ -32,6 +32,8 @@ static DWORD WINAPI git_win32__threadproc(LPVOID lpParameter)
32
32
 
33
33
  thread->result = thread->proc(thread->param);
34
34
 
35
+ git__free_tls_data();
36
+
35
37
  return CLEAN_THREAD_EXIT;
36
38
  }
37
39
 
@@ -40,15 +42,15 @@ int git_threads_init(void)
40
42
  HMODULE hModule = GetModuleHandleW(L"kernel32");
41
43
 
42
44
  if (hModule) {
43
- win32_srwlock_initialize = (win32_srwlock_fn)(void *)
45
+ win32_srwlock_initialize = (win32_srwlock_fn)
44
46
  GetProcAddress(hModule, "InitializeSRWLock");
45
- win32_srwlock_acquire_shared = (win32_srwlock_fn)(void *)
47
+ win32_srwlock_acquire_shared = (win32_srwlock_fn)
46
48
  GetProcAddress(hModule, "AcquireSRWLockShared");
47
- win32_srwlock_release_shared = (win32_srwlock_fn)(void *)
49
+ win32_srwlock_release_shared = (win32_srwlock_fn)
48
50
  GetProcAddress(hModule, "ReleaseSRWLockShared");
49
- win32_srwlock_acquire_exclusive = (win32_srwlock_fn)(void *)
51
+ win32_srwlock_acquire_exclusive = (win32_srwlock_fn)
50
52
  GetProcAddress(hModule, "AcquireSRWLockExclusive");
51
- win32_srwlock_release_exclusive = (win32_srwlock_fn)(void *)
53
+ win32_srwlock_release_exclusive = (win32_srwlock_fn)
52
54
  GetProcAddress(hModule, "ReleaseSRWLockExclusive");
53
55
  }
54
56
 
@@ -101,6 +103,9 @@ void git_thread_exit(void *value)
101
103
  {
102
104
  assert(GIT_GLOBAL->current_thread);
103
105
  GIT_GLOBAL->current_thread->result = value;
106
+
107
+ git__free_tls_data();
108
+
104
109
  ExitThread(CLEAN_THREAD_EXIT);
105
110
  }
106
111
 
@@ -25,17 +25,13 @@ int git_buf_put_w(git_buf *buf, const wchar_t *string_w, size_t len_w)
25
25
  int utf8_len, utf8_write_len;
26
26
  size_t new_size;
27
27
 
28
- if (!len_w) {
28
+ if (!len_w)
29
29
  return 0;
30
- } else if (len_w > INT_MAX) {
31
- git_error_set_oom();
32
- return -1;
33
- }
34
30
 
35
31
  assert(string_w);
36
32
 
37
33
  /* Measure the string necessary for conversion */
38
- if ((utf8_len = WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, string_w, (int)len_w, NULL, 0, NULL, NULL)) == 0)
34
+ if ((utf8_len = WideCharToMultiByte(CP_UTF8, WC_ERR_INVALID_CHARS, string_w, len_w, NULL, 0, NULL, NULL)) == 0)
39
35
  return 0;
40
36
 
41
37
  assert(utf8_len > 0);
@@ -47,7 +43,7 @@ int git_buf_put_w(git_buf *buf, const wchar_t *string_w, size_t len_w)
47
43
  return -1;
48
44
 
49
45
  if ((utf8_write_len = WideCharToMultiByte(
50
- CP_UTF8, WC_ERR_INVALID_CHARS, string_w, (int)len_w, &buf->ptr[buf->size], utf8_len, NULL, NULL)) == 0)
46
+ CP_UTF8, WC_ERR_INVALID_CHARS, string_w, len_w, &buf->ptr[buf->size], utf8_len, NULL, NULL)) == 0)
51
47
  return handle_wc_error();
52
48
 
53
49
  assert(utf8_write_len == utf8_len);
@@ -71,6 +71,99 @@ static bool g_limit_reached = false; /* had allocs after we filled row table */
71
71
  static unsigned int g_checkpoint_id = 0; /* to better label leak checkpoints */
72
72
  static bool g_transient_leaks_since_mark = false; /* payload for hook */
73
73
 
74
+ static void *crtdbg__malloc(size_t len, const char *file, int line)
75
+ {
76
+ void *ptr = _malloc_dbg(len, _NORMAL_BLOCK, git_win32__crtdbg_stacktrace(1,file), line);
77
+ if (!ptr) git_error_set_oom();
78
+ return ptr;
79
+ }
80
+
81
+ static void *crtdbg__calloc(size_t nelem, size_t elsize, const char *file, int line)
82
+ {
83
+ void *ptr = _calloc_dbg(nelem, elsize, _NORMAL_BLOCK, git_win32__crtdbg_stacktrace(1,file), line);
84
+ if (!ptr) git_error_set_oom();
85
+ return ptr;
86
+ }
87
+
88
+ static char *crtdbg__strdup(const char *str, const char *file, int line)
89
+ {
90
+ char *ptr = _strdup_dbg(str, _NORMAL_BLOCK, git_win32__crtdbg_stacktrace(1,file), line);
91
+ if (!ptr) git_error_set_oom();
92
+ return ptr;
93
+ }
94
+
95
+ static char *crtdbg__strndup(const char *str, size_t n, const char *file, int line)
96
+ {
97
+ size_t length = 0, alloclength;
98
+ char *ptr;
99
+
100
+ length = p_strnlen(str, n);
101
+
102
+ if (GIT_ADD_SIZET_OVERFLOW(&alloclength, length, 1) ||
103
+ !(ptr = crtdbg__malloc(alloclength, file, line)))
104
+ return NULL;
105
+
106
+ if (length)
107
+ memcpy(ptr, str, length);
108
+
109
+ ptr[length] = '\0';
110
+
111
+ return ptr;
112
+ }
113
+
114
+ static char *crtdbg__substrdup(const char *start, size_t n, const char *file, int line)
115
+ {
116
+ char *ptr;
117
+ size_t alloclen;
118
+
119
+ if (GIT_ADD_SIZET_OVERFLOW(&alloclen, n, 1) ||
120
+ !(ptr = crtdbg__malloc(alloclen, file, line)))
121
+ return NULL;
122
+
123
+ memcpy(ptr, start, n);
124
+ ptr[n] = '\0';
125
+ return ptr;
126
+ }
127
+
128
+ static void *crtdbg__realloc(void *ptr, size_t size, const char *file, int line)
129
+ {
130
+ void *new_ptr = _realloc_dbg(ptr, size, _NORMAL_BLOCK, git_win32__crtdbg_stacktrace(1,file), line);
131
+ if (!new_ptr) git_error_set_oom();
132
+ return new_ptr;
133
+ }
134
+
135
+ static void *crtdbg__reallocarray(void *ptr, size_t nelem, size_t elsize, const char *file, int line)
136
+ {
137
+ size_t newsize;
138
+
139
+ return GIT_MULTIPLY_SIZET_OVERFLOW(&newsize, nelem, elsize) ?
140
+ NULL : _realloc_dbg(ptr, newsize, _NORMAL_BLOCK, git_win32__crtdbg_stacktrace(1,file), line);
141
+ }
142
+
143
+ static void *crtdbg__mallocarray(size_t nelem, size_t elsize, const char *file, int line)
144
+ {
145
+ return crtdbg__reallocarray(NULL, nelem, elsize, file, line);
146
+ }
147
+
148
+ static void crtdbg__free(void *ptr)
149
+ {
150
+ free(ptr);
151
+ }
152
+
153
+ int git_win32_crtdbg_init_allocator(git_allocator *allocator)
154
+ {
155
+ allocator->gmalloc = crtdbg__malloc;
156
+ allocator->gcalloc = crtdbg__calloc;
157
+ allocator->gstrdup = crtdbg__strdup;
158
+ allocator->gstrndup = crtdbg__strndup;
159
+ allocator->gsubstrdup = crtdbg__substrdup;
160
+ allocator->grealloc = crtdbg__realloc;
161
+ allocator->greallocarray = crtdbg__reallocarray;
162
+ allocator->gmallocarray = crtdbg__mallocarray;
163
+ allocator->gfree = crtdbg__free;
164
+ return 0;
165
+ }
166
+
74
167
  /**
75
168
  * Compare function for bsearch on g_cs_index table.
76
169
  */
@@ -43,6 +43,8 @@
43
43
  * startup. See tests/main.c for an example.
44
44
  */
45
45
 
46
+ int git_win32_crtdbg_init_allocator(git_allocator *allocator);
47
+
46
48
  /**
47
49
  * Initialize our memory leak tracking and de-dup data structures.
48
50
  * This should ONLY be called by git_libgit2_init().
@@ -13,6 +13,11 @@
13
13
  #include "win32/posix.h"
14
14
  #include "hash.h"
15
15
 
16
+ /**
17
+ * This is supposedly defined in WinBase.h (from Windows.h) but there were linker issues.
18
+ */
19
+ USHORT WINAPI RtlCaptureStackBackTrace(ULONG, ULONG, PVOID*, PULONG);
20
+
16
21
  static bool g_win32_stack_initialized = false;
17
22
  static HANDLE g_win32_stack_process = INVALID_HANDLE_VALUE;
18
23
  static git_win32__stack__aux_cb_alloc g_aux_cb_alloc = NULL;
@@ -76,7 +81,7 @@ int git_win32__stack_compare(
76
81
  }
77
82
 
78
83
  int git_win32__stack_format(
79
- char *pbuf, size_t buf_len,
84
+ char *pbuf, int buf_len,
80
85
  const git_win32__stack__raw_data *pdata,
81
86
  const char *prefix, const char *suffix)
82
87
  {
@@ -91,10 +96,10 @@ int git_win32__stack_format(
91
96
  } s;
92
97
 
93
98
  IMAGEHLP_LINE64 line;
94
- size_t buf_used = 0;
99
+ int buf_used = 0;
95
100
  unsigned int k;
96
101
  char detail[MY_MAX_FILENAME * 2]; /* filename plus space for function name and formatting */
97
- size_t detail_len;
102
+ int detail_len;
98
103
 
99
104
  if (!g_win32_stack_initialized) {
100
105
  git_error_set(GIT_ERROR_INVALID, "git_win32_stack not initialized.");
@@ -171,7 +176,7 @@ int git_win32__stack_format(
171
176
  }
172
177
 
173
178
  int git_win32__stack(
174
- char * pbuf, size_t buf_len,
179
+ char * pbuf, int buf_len,
175
180
  int skip,
176
181
  const char *prefix, const char *suffix)
177
182
  {
@@ -38,7 +38,7 @@ typedef void (*git_win32__stack__aux_cb_alloc)(unsigned int *aux_id);
38
38
  * @param aux_msg A buffer where a formatted message should be written.
39
39
  * @param aux_msg_len The size of the buffer.
40
40
  */
41
- typedef void (*git_win32__stack__aux_cb_lookup)(unsigned int aux_id, char *aux_msg, size_t aux_msg_len);
41
+ typedef void (*git_win32__stack__aux_cb_lookup)(unsigned int aux_id, char *aux_msg, unsigned int aux_msg_len);
42
42
 
43
43
  /**
44
44
  * Register an "aux" data provider to augment our C stacktrace data.
@@ -116,7 +116,7 @@ int git_win32__stack_compare(
116
116
  * @param suffix String written after each frame; defaults to "\n".
117
117
  */
118
118
  int git_win32__stack_format(
119
- char *pbuf, size_t buf_len,
119
+ char *pbuf, int buf_len,
120
120
  const git_win32__stack__raw_data *pdata,
121
121
  const char *prefix, const char *suffix);
122
122
 
@@ -132,7 +132,7 @@ int git_win32__stack_format(
132
132
  * @param suffix String written after each frame; defaults to "\n".
133
133
  */
134
134
  int git_win32__stack(
135
- char * pbuf, size_t buf_len,
135
+ char * pbuf, int buf_len,
136
136
  int skip,
137
137
  const char *prefix, const char *suffix);
138
138
 
@@ -93,34 +93,3 @@ int git_win32__hidden(bool *out, const char *path)
93
93
  *out = (attrs & FILE_ATTRIBUTE_HIDDEN) ? true : false;
94
94
  return 0;
95
95
  }
96
-
97
- int git_win32__file_attribute_to_stat(
98
- struct stat *st,
99
- const WIN32_FILE_ATTRIBUTE_DATA *attrdata,
100
- const wchar_t *path)
101
- {
102
- git_win32__stat_init(st,
103
- attrdata->dwFileAttributes,
104
- attrdata->nFileSizeHigh,
105
- attrdata->nFileSizeLow,
106
- attrdata->ftCreationTime,
107
- attrdata->ftLastAccessTime,
108
- attrdata->ftLastWriteTime);
109
-
110
- if (attrdata->dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT && path) {
111
- git_win32_path target;
112
-
113
- if (git_win32_path_readlink_w(target, path) >= 0) {
114
- st->st_mode = (st->st_mode & ~S_IFMT) | S_IFLNK;
115
-
116
- /* st_size gets the UTF-8 length of the target name, in bytes,
117
- * not counting the NULL terminator */
118
- if ((st->st_size = git__utf16_to_8(NULL, 0, target)) < 0) {
119
- git_error_set(GIT_ERROR_OS, "could not convert reparse point name for '%ls'", path);
120
- return -1;
121
- }
122
- }
123
- }
124
-
125
- return 0;
126
- }