rugged 0.19.0 → 0.28.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (668) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +1 -1
  3. data/README.md +184 -33
  4. data/ext/rugged/extconf.rb +111 -28
  5. data/ext/rugged/rugged.c +327 -89
  6. data/ext/rugged/rugged.h +64 -28
  7. data/ext/rugged/rugged_allocator.c +89 -0
  8. data/ext/rugged/rugged_backend.c +17 -0
  9. data/ext/rugged/rugged_blame.c +278 -0
  10. data/ext/rugged/rugged_blob.c +301 -75
  11. data/ext/rugged/rugged_branch.c +92 -242
  12. data/ext/rugged/rugged_branch_collection.c +388 -0
  13. data/ext/rugged/rugged_commit.c +575 -79
  14. data/ext/rugged/rugged_config.c +129 -36
  15. data/ext/rugged/rugged_cred.c +131 -0
  16. data/ext/rugged/rugged_diff.c +291 -122
  17. data/ext/rugged/rugged_diff_delta.c +16 -22
  18. data/ext/rugged/rugged_diff_hunk.c +35 -51
  19. data/ext/rugged/rugged_diff_line.c +23 -36
  20. data/ext/rugged/rugged_index.c +289 -152
  21. data/ext/rugged/rugged_note.c +50 -60
  22. data/ext/rugged/rugged_object.c +13 -30
  23. data/ext/rugged/rugged_patch.c +400 -0
  24. data/ext/rugged/rugged_rebase.c +397 -0
  25. data/ext/rugged/rugged_reference.c +76 -346
  26. data/ext/rugged/rugged_reference_collection.c +423 -0
  27. data/ext/rugged/rugged_remote.c +438 -461
  28. data/ext/rugged/rugged_remote_collection.c +435 -0
  29. data/ext/rugged/rugged_repo.c +1548 -365
  30. data/ext/rugged/rugged_revwalk.c +378 -99
  31. data/ext/rugged/rugged_settings.c +86 -23
  32. data/ext/rugged/rugged_signature.c +47 -37
  33. data/ext/rugged/rugged_submodule.c +835 -0
  34. data/ext/rugged/rugged_submodule_collection.c +366 -0
  35. data/ext/rugged/rugged_tag.c +88 -210
  36. data/ext/rugged/rugged_tag_collection.c +326 -0
  37. data/ext/rugged/rugged_tree.c +460 -217
  38. data/lib/rugged/attributes.rb +46 -0
  39. data/lib/rugged/blob.rb +33 -0
  40. data/lib/rugged/branch.rb +12 -16
  41. data/lib/rugged/commit.rb +9 -0
  42. data/lib/rugged/console.rb +5 -0
  43. data/lib/rugged/credentials.rb +48 -0
  44. data/lib/rugged/diff/delta.rb +6 -2
  45. data/lib/rugged/diff/hunk.rb +9 -9
  46. data/lib/rugged/diff/line.rb +28 -5
  47. data/lib/rugged/diff.rb +7 -1
  48. data/lib/rugged/index.rb +120 -0
  49. data/lib/rugged/object.rb +5 -0
  50. data/lib/rugged/patch.rb +41 -0
  51. data/lib/rugged/reference.rb +6 -3
  52. data/lib/rugged/remote.rb +5 -9
  53. data/lib/rugged/repository.rb +126 -14
  54. data/lib/rugged/submodule_collection.rb +53 -0
  55. data/lib/rugged/tag.rb +45 -16
  56. data/lib/rugged/tree.rb +163 -1
  57. data/lib/rugged/version.rb +6 -1
  58. data/lib/rugged/walker.rb +5 -0
  59. data/lib/rugged.rb +16 -1
  60. data/vendor/libgit2/AUTHORS +77 -0
  61. data/vendor/libgit2/CMakeLists.txt +317 -0
  62. data/vendor/libgit2/COPYING +993 -0
  63. data/vendor/libgit2/cmake/Modules/AddCFlagIfSupported.cmake +30 -0
  64. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.c.in +29 -0
  65. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.cmake +96 -0
  66. data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +11 -0
  67. data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +26 -0
  68. data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +324 -0
  69. data/vendor/libgit2/cmake/Modules/FindHTTP_Parser.cmake +39 -0
  70. data/vendor/libgit2/cmake/Modules/FindIconv.cmake +45 -0
  71. data/vendor/libgit2/cmake/Modules/FindPkgLibraries.cmake +28 -0
  72. data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +28 -0
  73. data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +20 -0
  74. data/vendor/libgit2/cmake/Modules/FindmbedTLS.cmake +93 -0
  75. data/vendor/libgit2/cmake/Modules/IdeSplitSources.cmake +22 -0
  76. data/vendor/libgit2/deps/http-parser/CMakeLists.txt +5 -0
  77. data/vendor/libgit2/deps/http-parser/COPYING +23 -0
  78. data/vendor/libgit2/deps/http-parser/http_parser.c +5 -2
  79. data/vendor/libgit2/deps/http-parser/http_parser.h +2 -0
  80. data/vendor/libgit2/deps/regex/CMakeLists.txt +2 -0
  81. data/vendor/libgit2/deps/regex/COPYING +502 -0
  82. data/vendor/libgit2/deps/regex/regex.c +10 -3
  83. data/vendor/libgit2/deps/winhttp/CMakeLists.txt +26 -0
  84. data/vendor/libgit2/deps/winhttp/COPYING.GPL +993 -0
  85. data/vendor/libgit2/deps/winhttp/COPYING.LGPL +502 -0
  86. data/vendor/libgit2/deps/winhttp/urlmon.h +45 -0
  87. data/vendor/libgit2/deps/winhttp/winhttp.def +29 -0
  88. data/vendor/libgit2/deps/winhttp/winhttp.h +594 -0
  89. data/vendor/libgit2/deps/winhttp/winhttp64.def +29 -0
  90. data/vendor/libgit2/deps/zlib/CMakeLists.txt +5 -0
  91. data/vendor/libgit2/deps/zlib/COPYING +27 -0
  92. data/vendor/libgit2/deps/zlib/adler32.c +51 -34
  93. data/vendor/libgit2/deps/zlib/crc32.c +61 -61
  94. data/vendor/libgit2/deps/zlib/crc32.h +1 -1
  95. data/vendor/libgit2/deps/zlib/deflate.c +681 -352
  96. data/vendor/libgit2/deps/zlib/deflate.h +25 -18
  97. data/vendor/libgit2/deps/zlib/gzguts.h +218 -0
  98. data/vendor/libgit2/deps/zlib/infback.c +640 -0
  99. data/vendor/libgit2/deps/zlib/inffast.c +36 -53
  100. data/vendor/libgit2/deps/zlib/inffixed.h +3 -3
  101. data/vendor/libgit2/deps/zlib/inflate.c +167 -86
  102. data/vendor/libgit2/deps/zlib/inflate.h +7 -4
  103. data/vendor/libgit2/deps/zlib/inftrees.c +24 -50
  104. data/vendor/libgit2/deps/zlib/trees.c +55 -96
  105. data/vendor/libgit2/deps/zlib/zconf.h +499 -19
  106. data/vendor/libgit2/deps/zlib/zlib.h +526 -227
  107. data/vendor/libgit2/deps/zlib/zutil.c +39 -32
  108. data/vendor/libgit2/deps/zlib/zutil.h +75 -78
  109. data/vendor/libgit2/include/git2/annotated_commit.h +125 -0
  110. data/vendor/libgit2/include/git2/apply.h +129 -0
  111. data/vendor/libgit2/include/git2/attr.h +36 -21
  112. data/vendor/libgit2/include/git2/blame.h +229 -0
  113. data/vendor/libgit2/include/git2/blob.h +81 -44
  114. data/vendor/libgit2/include/git2/branch.h +81 -42
  115. data/vendor/libgit2/include/git2/buffer.h +128 -0
  116. data/vendor/libgit2/include/git2/checkout.h +141 -67
  117. data/vendor/libgit2/include/git2/cherrypick.h +92 -0
  118. data/vendor/libgit2/include/git2/clone.h +157 -58
  119. data/vendor/libgit2/include/git2/commit.h +231 -12
  120. data/vendor/libgit2/include/git2/common.h +216 -30
  121. data/vendor/libgit2/include/git2/config.h +274 -48
  122. data/vendor/libgit2/include/git2/cred_helpers.h +4 -4
  123. data/vendor/libgit2/include/git2/deprecated.h +253 -0
  124. data/vendor/libgit2/include/git2/describe.h +189 -0
  125. data/vendor/libgit2/include/git2/diff.h +985 -575
  126. data/vendor/libgit2/include/git2/errors.h +93 -52
  127. data/vendor/libgit2/include/git2/filter.h +217 -0
  128. data/vendor/libgit2/include/git2/global.h +44 -0
  129. data/vendor/libgit2/include/git2/graph.h +17 -0
  130. data/vendor/libgit2/include/git2/ignore.h +2 -2
  131. data/vendor/libgit2/include/git2/index.h +269 -94
  132. data/vendor/libgit2/include/git2/indexer.h +44 -12
  133. data/vendor/libgit2/include/git2/mailmap.h +115 -0
  134. data/vendor/libgit2/include/git2/merge.h +501 -64
  135. data/vendor/libgit2/include/git2/message.h +52 -17
  136. data/vendor/libgit2/include/git2/net.h +11 -5
  137. data/vendor/libgit2/include/git2/notes.h +120 -16
  138. data/vendor/libgit2/include/git2/object.h +62 -23
  139. data/vendor/libgit2/include/git2/odb.h +140 -24
  140. data/vendor/libgit2/include/git2/odb_backend.h +56 -12
  141. data/vendor/libgit2/include/git2/oid.h +17 -18
  142. data/vendor/libgit2/include/git2/oidarray.h +40 -0
  143. data/vendor/libgit2/include/git2/pack.h +86 -7
  144. data/vendor/libgit2/include/git2/patch.h +274 -0
  145. data/vendor/libgit2/include/git2/pathspec.h +280 -0
  146. data/vendor/libgit2/include/git2/proxy.h +96 -0
  147. data/vendor/libgit2/include/git2/rebase.h +323 -0
  148. data/vendor/libgit2/include/git2/reflog.h +12 -9
  149. data/vendor/libgit2/include/git2/refs.h +241 -46
  150. data/vendor/libgit2/include/git2/refspec.h +20 -4
  151. data/vendor/libgit2/include/git2/remote.h +636 -209
  152. data/vendor/libgit2/include/git2/repository.h +267 -57
  153. data/vendor/libgit2/include/git2/reset.h +36 -6
  154. data/vendor/libgit2/include/git2/revert.h +91 -0
  155. data/vendor/libgit2/include/git2/revparse.h +27 -16
  156. data/vendor/libgit2/include/git2/revwalk.h +78 -35
  157. data/vendor/libgit2/include/git2/signature.h +32 -5
  158. data/vendor/libgit2/include/git2/stash.h +160 -21
  159. data/vendor/libgit2/include/git2/status.h +92 -30
  160. data/vendor/libgit2/include/git2/submodule.h +226 -133
  161. data/vendor/libgit2/include/git2/sys/alloc.h +101 -0
  162. data/vendor/libgit2/include/git2/sys/commit.h +38 -4
  163. data/vendor/libgit2/include/git2/sys/config.h +68 -9
  164. data/vendor/libgit2/include/git2/sys/diff.h +94 -0
  165. data/vendor/libgit2/include/git2/sys/filter.h +332 -0
  166. data/vendor/libgit2/include/git2/sys/hashsig.h +106 -0
  167. data/vendor/libgit2/include/git2/sys/index.h +6 -5
  168. data/vendor/libgit2/include/git2/sys/mempack.h +86 -0
  169. data/vendor/libgit2/include/git2/sys/merge.h +182 -0
  170. data/vendor/libgit2/include/git2/sys/odb_backend.h +66 -28
  171. data/vendor/libgit2/include/git2/sys/openssl.h +38 -0
  172. data/vendor/libgit2/include/git2/sys/path.h +64 -0
  173. data/vendor/libgit2/include/git2/sys/refdb_backend.h +79 -19
  174. data/vendor/libgit2/include/git2/sys/reflog.h +21 -0
  175. data/vendor/libgit2/include/git2/sys/refs.h +13 -2
  176. data/vendor/libgit2/include/git2/sys/repository.h +64 -1
  177. data/vendor/libgit2/include/git2/sys/stream.h +138 -0
  178. data/vendor/libgit2/include/git2/sys/time.h +31 -0
  179. data/vendor/libgit2/include/git2/sys/transport.h +439 -0
  180. data/vendor/libgit2/include/git2/tag.h +11 -2
  181. data/vendor/libgit2/include/git2/trace.h +1 -1
  182. data/vendor/libgit2/include/git2/transaction.h +121 -0
  183. data/vendor/libgit2/include/git2/transport.h +261 -292
  184. data/vendor/libgit2/include/git2/tree.h +111 -21
  185. data/vendor/libgit2/include/git2/types.h +244 -32
  186. data/vendor/libgit2/include/git2/version.h +5 -2
  187. data/vendor/libgit2/include/git2/worktree.h +255 -0
  188. data/vendor/libgit2/include/git2.h +50 -40
  189. data/vendor/libgit2/libgit2.pc.in +13 -0
  190. data/vendor/libgit2/src/CMakeLists.txt +525 -0
  191. data/vendor/libgit2/src/alloc.c +55 -0
  192. data/vendor/libgit2/src/alloc.h +40 -0
  193. data/vendor/libgit2/src/annotated_commit.c +228 -0
  194. data/vendor/libgit2/src/annotated_commit.h +52 -0
  195. data/vendor/libgit2/src/apply.c +855 -0
  196. data/vendor/libgit2/src/apply.h +25 -0
  197. data/vendor/libgit2/src/array.h +74 -16
  198. data/vendor/libgit2/src/attr.c +239 -408
  199. data/vendor/libgit2/src/attr.h +3 -33
  200. data/vendor/libgit2/src/attr_file.c +424 -156
  201. data/vendor/libgit2/src/attr_file.h +95 -23
  202. data/vendor/libgit2/src/attrcache.c +469 -0
  203. data/vendor/libgit2/src/attrcache.h +37 -5
  204. data/vendor/libgit2/src/bitvec.h +75 -0
  205. data/vendor/libgit2/src/blame.c +532 -0
  206. data/vendor/libgit2/src/blame.h +95 -0
  207. data/vendor/libgit2/src/blame_git.c +668 -0
  208. data/vendor/libgit2/src/blame_git.h +22 -0
  209. data/vendor/libgit2/src/blob.c +233 -129
  210. data/vendor/libgit2/src/blob.h +29 -1
  211. data/vendor/libgit2/src/branch.c +295 -197
  212. data/vendor/libgit2/src/branch.h +2 -0
  213. data/vendor/libgit2/src/buf_text.c +52 -27
  214. data/vendor/libgit2/src/buf_text.h +7 -7
  215. data/vendor/libgit2/src/buffer.c +609 -52
  216. data/vendor/libgit2/src/buffer.h +68 -23
  217. data/vendor/libgit2/src/cache.c +48 -51
  218. data/vendor/libgit2/src/cache.h +6 -4
  219. data/vendor/libgit2/src/cc-compat.h +35 -7
  220. data/vendor/libgit2/src/checkout.c +1827 -483
  221. data/vendor/libgit2/src/checkout.h +4 -1
  222. data/vendor/libgit2/src/cherrypick.c +230 -0
  223. data/vendor/libgit2/src/clone.c +338 -258
  224. data/vendor/libgit2/src/{compress.h → clone.h} +5 -5
  225. data/vendor/libgit2/src/commit.c +711 -124
  226. data/vendor/libgit2/src/commit.h +10 -3
  227. data/vendor/libgit2/src/commit_list.c +21 -14
  228. data/vendor/libgit2/src/commit_list.h +9 -3
  229. data/vendor/libgit2/src/common.h +153 -13
  230. data/vendor/libgit2/src/config.c +871 -242
  231. data/vendor/libgit2/src/config.h +58 -14
  232. data/vendor/libgit2/src/config_backend.h +84 -0
  233. data/vendor/libgit2/src/config_cache.c +44 -18
  234. data/vendor/libgit2/src/config_entries.c +259 -0
  235. data/vendor/libgit2/src/config_entries.h +23 -0
  236. data/vendor/libgit2/src/config_file.c +837 -1113
  237. data/vendor/libgit2/src/config_mem.c +224 -0
  238. data/vendor/libgit2/src/config_parse.c +558 -0
  239. data/vendor/libgit2/src/config_parse.h +64 -0
  240. data/vendor/libgit2/src/crlf.c +290 -195
  241. data/vendor/libgit2/src/date.c +35 -7
  242. data/vendor/libgit2/src/delta.c +275 -71
  243. data/vendor/libgit2/src/delta.h +80 -58
  244. data/vendor/libgit2/src/describe.c +893 -0
  245. data/vendor/libgit2/src/diff.c +330 -1128
  246. data/vendor/libgit2/src/diff.h +25 -67
  247. data/vendor/libgit2/src/diff_driver.c +225 -109
  248. data/vendor/libgit2/src/diff_driver.h +5 -2
  249. data/vendor/libgit2/src/diff_file.c +128 -103
  250. data/vendor/libgit2/src/diff_file.h +17 -12
  251. data/vendor/libgit2/src/diff_generate.c +1622 -0
  252. data/vendor/libgit2/src/diff_generate.h +128 -0
  253. data/vendor/libgit2/src/diff_parse.c +108 -0
  254. data/vendor/libgit2/src/diff_parse.h +20 -0
  255. data/vendor/libgit2/src/diff_print.c +578 -218
  256. data/vendor/libgit2/src/diff_stats.c +362 -0
  257. data/vendor/libgit2/src/diff_tform.c +429 -257
  258. data/vendor/libgit2/src/diff_tform.h +25 -0
  259. data/vendor/libgit2/src/diff_xdiff.c +143 -46
  260. data/vendor/libgit2/src/diff_xdiff.h +12 -5
  261. data/vendor/libgit2/src/errors.c +150 -34
  262. data/vendor/libgit2/src/features.h.in +37 -0
  263. data/vendor/libgit2/src/fetch.c +69 -46
  264. data/vendor/libgit2/src/fetch.h +6 -12
  265. data/vendor/libgit2/src/fetchhead.c +40 -33
  266. data/vendor/libgit2/src/fetchhead.h +5 -4
  267. data/vendor/libgit2/src/filebuf.c +163 -61
  268. data/vendor/libgit2/src/filebuf.h +13 -7
  269. data/vendor/libgit2/src/fileops.c +549 -407
  270. data/vendor/libgit2/src/fileops.h +97 -106
  271. data/vendor/libgit2/src/filter.c +989 -46
  272. data/vendor/libgit2/src/filter.h +21 -70
  273. data/vendor/libgit2/src/fnmatch.c +67 -11
  274. data/vendor/libgit2/src/fnmatch.h +27 -7
  275. data/vendor/libgit2/src/global.c +257 -63
  276. data/vendor/libgit2/src/global.h +19 -0
  277. data/vendor/libgit2/src/graph.c +39 -23
  278. data/vendor/libgit2/src/hash/hash_collisiondetect.h +51 -0
  279. data/vendor/libgit2/src/hash/hash_common_crypto.h +61 -0
  280. data/vendor/libgit2/src/hash/hash_generic.c +3 -3
  281. data/vendor/libgit2/src/hash/hash_generic.h +10 -5
  282. data/vendor/libgit2/src/hash/hash_mbedtls.c +38 -0
  283. data/vendor/libgit2/src/hash/hash_mbedtls.h +24 -0
  284. data/vendor/libgit2/src/hash/hash_openssl.h +26 -8
  285. data/vendor/libgit2/src/hash/hash_win32.c +71 -43
  286. data/vendor/libgit2/src/hash/hash_win32.h +4 -3
  287. data/vendor/libgit2/src/hash/sha1dc/sha1.c +1900 -0
  288. data/vendor/libgit2/src/hash/sha1dc/sha1.h +110 -0
  289. data/vendor/libgit2/src/hash/sha1dc/ubc_check.c +372 -0
  290. data/vendor/libgit2/src/hash/sha1dc/ubc_check.h +52 -0
  291. data/vendor/libgit2/src/hash.c +0 -1
  292. data/vendor/libgit2/src/hash.h +13 -6
  293. data/vendor/libgit2/src/hashsig.c +121 -126
  294. data/vendor/libgit2/src/ident.c +129 -0
  295. data/vendor/libgit2/src/idxmap.c +153 -0
  296. data/vendor/libgit2/src/idxmap.h +41 -0
  297. data/vendor/libgit2/src/ignore.c +362 -123
  298. data/vendor/libgit2/src/ignore.h +16 -4
  299. data/vendor/libgit2/src/index.c +2131 -692
  300. data/vendor/libgit2/src/index.h +138 -6
  301. data/vendor/libgit2/src/indexer.c +866 -266
  302. data/vendor/libgit2/src/indexer.h +16 -0
  303. data/vendor/libgit2/src/integer.h +106 -0
  304. data/vendor/libgit2/src/iterator.c +1888 -967
  305. data/vendor/libgit2/src/iterator.h +130 -67
  306. data/vendor/libgit2/src/khash.h +43 -29
  307. data/vendor/libgit2/src/mailmap.c +485 -0
  308. data/vendor/libgit2/src/mailmap.h +35 -0
  309. data/vendor/libgit2/src/map.h +1 -1
  310. data/vendor/libgit2/src/merge.c +1679 -479
  311. data/vendor/libgit2/src/merge.h +89 -22
  312. data/vendor/libgit2/src/merge_driver.c +426 -0
  313. data/vendor/libgit2/src/merge_driver.h +62 -0
  314. data/vendor/libgit2/src/merge_file.c +238 -101
  315. data/vendor/libgit2/src/message.c +4 -28
  316. data/vendor/libgit2/src/message.h +3 -1
  317. data/vendor/libgit2/src/mwindow.c +123 -15
  318. data/vendor/libgit2/src/mwindow.h +10 -1
  319. data/vendor/libgit2/src/netops.c +178 -499
  320. data/vendor/libgit2/src/netops.h +51 -27
  321. data/vendor/libgit2/src/notes.c +251 -94
  322. data/vendor/libgit2/src/notes.h +5 -2
  323. data/vendor/libgit2/src/object.c +253 -67
  324. data/vendor/libgit2/src/object.h +40 -2
  325. data/vendor/libgit2/src/object_api.c +30 -11
  326. data/vendor/libgit2/src/odb.c +765 -201
  327. data/vendor/libgit2/src/odb.h +40 -8
  328. data/vendor/libgit2/src/odb_loose.c +560 -346
  329. data/vendor/libgit2/src/odb_mempack.c +185 -0
  330. data/vendor/libgit2/src/odb_pack.c +117 -73
  331. data/vendor/libgit2/src/offmap.c +113 -0
  332. data/vendor/libgit2/src/offmap.h +32 -42
  333. data/vendor/libgit2/src/oid.c +45 -25
  334. data/vendor/libgit2/src/oid.h +26 -8
  335. data/vendor/libgit2/src/oidarray.c +34 -0
  336. data/vendor/libgit2/src/oidarray.h +20 -0
  337. data/vendor/libgit2/src/oidmap.c +125 -0
  338. data/vendor/libgit2/src/oidmap.h +30 -17
  339. data/vendor/libgit2/src/pack-objects.c +688 -265
  340. data/vendor/libgit2/src/pack-objects.h +27 -13
  341. data/vendor/libgit2/src/pack.c +418 -202
  342. data/vendor/libgit2/src/pack.h +25 -16
  343. data/vendor/libgit2/src/parse.c +124 -0
  344. data/vendor/libgit2/src/parse.h +61 -0
  345. data/vendor/libgit2/src/patch.c +223 -0
  346. data/vendor/libgit2/src/patch.h +68 -0
  347. data/vendor/libgit2/src/patch_generate.c +901 -0
  348. data/vendor/libgit2/src/patch_generate.h +69 -0
  349. data/vendor/libgit2/src/patch_parse.c +1136 -0
  350. data/vendor/libgit2/src/patch_parse.h +51 -0
  351. data/vendor/libgit2/src/path.c +1247 -241
  352. data/vendor/libgit2/src/path.h +353 -57
  353. data/vendor/libgit2/src/pathspec.c +586 -58
  354. data/vendor/libgit2/src/pathspec.h +37 -15
  355. data/vendor/libgit2/src/pool.c +134 -221
  356. data/vendor/libgit2/src/pool.h +38 -50
  357. data/vendor/libgit2/src/posix.c +76 -10
  358. data/vendor/libgit2/src/posix.h +74 -32
  359. data/vendor/libgit2/src/pqueue.c +79 -117
  360. data/vendor/libgit2/src/pqueue.h +38 -82
  361. data/vendor/libgit2/src/proxy.c +39 -0
  362. data/vendor/libgit2/src/proxy.h +17 -0
  363. data/vendor/libgit2/src/push.c +178 -279
  364. data/vendor/libgit2/src/push.h +93 -4
  365. data/vendor/libgit2/src/reader.c +265 -0
  366. data/vendor/libgit2/src/reader.h +107 -0
  367. data/vendor/libgit2/src/rebase.c +1364 -0
  368. data/vendor/libgit2/src/refdb.c +74 -19
  369. data/vendor/libgit2/src/refdb.h +16 -3
  370. data/vendor/libgit2/src/refdb_fs.c +1472 -603
  371. data/vendor/libgit2/src/refdb_fs.h +4 -0
  372. data/vendor/libgit2/src/reflog.c +40 -330
  373. data/vendor/libgit2/src/reflog.h +8 -2
  374. data/vendor/libgit2/src/refs.c +641 -225
  375. data/vendor/libgit2/src/refs.h +53 -6
  376. data/vendor/libgit2/src/refspec.c +175 -62
  377. data/vendor/libgit2/src/refspec.h +10 -25
  378. data/vendor/libgit2/src/remote.c +1741 -723
  379. data/vendor/libgit2/src/remote.h +17 -5
  380. data/vendor/libgit2/src/repository.c +1505 -421
  381. data/vendor/libgit2/src/repository.h +95 -15
  382. data/vendor/libgit2/src/reset.c +63 -26
  383. data/vendor/libgit2/src/revert.c +232 -0
  384. data/vendor/libgit2/src/revparse.c +94 -80
  385. data/vendor/libgit2/src/revwalk.c +427 -194
  386. data/vendor/libgit2/src/revwalk.h +14 -5
  387. data/vendor/libgit2/src/settings.c +290 -0
  388. data/vendor/libgit2/src/sha1_lookup.c +16 -159
  389. data/vendor/libgit2/src/sha1_lookup.h +5 -4
  390. data/vendor/libgit2/src/signature.c +138 -26
  391. data/vendor/libgit2/src/signature.h +5 -0
  392. data/vendor/libgit2/src/sortedcache.c +395 -0
  393. data/vendor/libgit2/src/sortedcache.h +180 -0
  394. data/vendor/libgit2/src/stash.c +629 -168
  395. data/vendor/libgit2/src/status.c +125 -75
  396. data/vendor/libgit2/src/status.h +4 -2
  397. data/vendor/libgit2/src/stdalloc.c +120 -0
  398. data/vendor/libgit2/src/stdalloc.h +17 -0
  399. data/vendor/libgit2/src/stream.h +86 -0
  400. data/vendor/libgit2/src/streams/mbedtls.c +483 -0
  401. data/vendor/libgit2/src/streams/mbedtls.h +23 -0
  402. data/vendor/libgit2/src/streams/openssl.c +789 -0
  403. data/vendor/libgit2/src/streams/openssl.h +23 -0
  404. data/vendor/libgit2/src/streams/registry.c +118 -0
  405. data/vendor/libgit2/src/streams/registry.h +19 -0
  406. data/vendor/libgit2/src/streams/socket.c +235 -0
  407. data/vendor/libgit2/src/streams/socket.h +23 -0
  408. data/vendor/libgit2/src/streams/stransport.c +323 -0
  409. data/vendor/libgit2/src/streams/stransport.h +21 -0
  410. data/vendor/libgit2/src/streams/tls.c +73 -0
  411. data/vendor/libgit2/src/streams/tls.h +31 -0
  412. data/vendor/libgit2/src/strmap.c +147 -0
  413. data/vendor/libgit2/src/strmap.h +46 -51
  414. data/vendor/libgit2/src/strnlen.h +24 -0
  415. data/vendor/libgit2/src/submodule.c +1633 -877
  416. data/vendor/libgit2/src/submodule.h +83 -21
  417. data/vendor/libgit2/src/sysdir.c +355 -0
  418. data/vendor/libgit2/src/sysdir.h +119 -0
  419. data/vendor/libgit2/src/tag.c +87 -62
  420. data/vendor/libgit2/src/tag.h +4 -1
  421. data/vendor/libgit2/src/thread-utils.c +3 -0
  422. data/vendor/libgit2/src/thread-utils.h +71 -35
  423. data/vendor/libgit2/src/trace.c +4 -4
  424. data/vendor/libgit2/src/trace.h +11 -3
  425. data/vendor/libgit2/src/trailer.c +416 -0
  426. data/vendor/libgit2/src/transaction.c +382 -0
  427. data/vendor/libgit2/src/transaction.h +14 -0
  428. data/vendor/libgit2/src/transport.c +133 -67
  429. data/vendor/libgit2/src/transports/auth.c +75 -0
  430. data/vendor/libgit2/src/transports/auth.h +64 -0
  431. data/vendor/libgit2/src/transports/auth_negotiate.c +277 -0
  432. data/vendor/libgit2/src/transports/auth_negotiate.h +27 -0
  433. data/vendor/libgit2/src/transports/cred.c +296 -68
  434. data/vendor/libgit2/src/transports/cred.h +16 -0
  435. data/vendor/libgit2/src/transports/cred_helpers.c +4 -0
  436. data/vendor/libgit2/src/transports/git.c +108 -90
  437. data/vendor/libgit2/src/transports/http.c +803 -258
  438. data/vendor/libgit2/src/transports/http.h +25 -0
  439. data/vendor/libgit2/src/transports/local.c +265 -169
  440. data/vendor/libgit2/src/transports/smart.c +255 -45
  441. data/vendor/libgit2/src/transports/smart.h +42 -22
  442. data/vendor/libgit2/src/transports/smart_pkt.c +250 -159
  443. data/vendor/libgit2/src/transports/smart_protocol.c +414 -196
  444. data/vendor/libgit2/src/transports/ssh.c +645 -236
  445. data/vendor/libgit2/src/transports/ssh.h +14 -0
  446. data/vendor/libgit2/src/transports/winhttp.c +809 -353
  447. data/vendor/libgit2/src/tree-cache.c +138 -52
  448. data/vendor/libgit2/src/tree-cache.h +14 -7
  449. data/vendor/libgit2/src/tree.c +620 -259
  450. data/vendor/libgit2/src/tree.h +12 -19
  451. data/vendor/libgit2/src/tsort.c +3 -2
  452. data/vendor/libgit2/src/unix/map.c +25 -7
  453. data/vendor/libgit2/src/unix/posix.h +77 -12
  454. data/vendor/libgit2/src/unix/pthread.h +56 -0
  455. data/vendor/libgit2/src/unix/realpath.c +12 -8
  456. data/vendor/libgit2/src/userdiff.h +208 -0
  457. data/vendor/libgit2/src/util.c +349 -165
  458. data/vendor/libgit2/src/util.h +167 -85
  459. data/vendor/libgit2/src/varint.c +43 -0
  460. data/vendor/libgit2/src/varint.h +17 -0
  461. data/vendor/libgit2/src/vector.c +156 -33
  462. data/vendor/libgit2/src/vector.h +41 -5
  463. data/vendor/libgit2/src/win32/dir.c +22 -42
  464. data/vendor/libgit2/src/win32/dir.h +7 -5
  465. data/vendor/libgit2/src/win32/error.c +6 -32
  466. data/vendor/libgit2/src/win32/error.h +4 -2
  467. data/vendor/libgit2/src/win32/findfile.c +62 -69
  468. data/vendor/libgit2/src/win32/findfile.h +5 -13
  469. data/vendor/libgit2/src/win32/git2.rc +44 -0
  470. data/vendor/libgit2/src/win32/map.c +39 -11
  471. data/vendor/libgit2/src/win32/mingw-compat.h +10 -11
  472. data/vendor/libgit2/src/win32/msvc-compat.h +10 -33
  473. data/vendor/libgit2/src/win32/path_w32.c +476 -0
  474. data/vendor/libgit2/src/win32/path_w32.h +104 -0
  475. data/vendor/libgit2/src/win32/posix.h +35 -30
  476. data/vendor/libgit2/src/win32/posix_w32.c +659 -327
  477. data/vendor/libgit2/src/win32/precompiled.h +7 -2
  478. data/vendor/libgit2/src/win32/reparse.h +57 -0
  479. data/vendor/libgit2/src/win32/thread.c +258 -0
  480. data/vendor/libgit2/src/win32/thread.h +64 -0
  481. data/vendor/libgit2/src/win32/utf-conv.c +127 -62
  482. data/vendor/libgit2/src/win32/utf-conv.h +47 -6
  483. data/vendor/libgit2/src/win32/version.h +21 -4
  484. data/vendor/libgit2/src/win32/w32_buffer.c +54 -0
  485. data/vendor/libgit2/src/win32/w32_buffer.h +20 -0
  486. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +438 -0
  487. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +129 -0
  488. data/vendor/libgit2/src/win32/w32_stack.c +193 -0
  489. data/vendor/libgit2/src/win32/w32_stack.h +140 -0
  490. data/vendor/libgit2/src/win32/w32_util.c +95 -0
  491. data/vendor/libgit2/src/win32/w32_util.h +170 -0
  492. data/vendor/libgit2/src/win32/win32-compat.h +52 -0
  493. data/vendor/libgit2/src/worktree.c +578 -0
  494. data/vendor/libgit2/src/worktree.h +39 -0
  495. data/vendor/libgit2/src/xdiff/xdiff.h +33 -18
  496. data/vendor/libgit2/src/xdiff/xdiffi.c +578 -88
  497. data/vendor/libgit2/src/xdiff/xdiffi.h +3 -2
  498. data/vendor/libgit2/src/xdiff/xemit.c +106 -45
  499. data/vendor/libgit2/src/xdiff/xemit.h +3 -3
  500. data/vendor/libgit2/src/xdiff/xhistogram.c +5 -4
  501. data/vendor/libgit2/src/xdiff/xinclude.h +3 -2
  502. data/vendor/libgit2/src/xdiff/xmacros.h +2 -2
  503. data/vendor/libgit2/src/xdiff/xmerge.c +167 -48
  504. data/vendor/libgit2/src/xdiff/xpatience.c +42 -10
  505. data/vendor/libgit2/src/xdiff/xprepare.c +14 -14
  506. data/vendor/libgit2/src/xdiff/xprepare.h +2 -2
  507. data/vendor/libgit2/src/xdiff/xtypes.h +2 -2
  508. data/vendor/libgit2/src/xdiff/xutils.c +60 -56
  509. data/vendor/libgit2/src/xdiff/xutils.h +3 -5
  510. data/vendor/libgit2/src/zstream.c +205 -0
  511. data/vendor/libgit2/src/zstream.h +53 -0
  512. metadata +281 -233
  513. data/Rakefile +0 -61
  514. data/ext/rugged/rugged_diff_patch.c +0 -169
  515. data/lib/rugged/diff/patch.rb +0 -28
  516. data/test/blob_test.rb +0 -341
  517. data/test/branch_test.rb +0 -199
  518. data/test/commit_test.rb +0 -104
  519. data/test/config_test.rb +0 -45
  520. data/test/coverage/cover.rb +0 -133
  521. data/test/diff_test.rb +0 -777
  522. data/test/errors_test.rb +0 -34
  523. data/test/fixtures/alternate/objects/14/6ae76773c91e3b1d00cf7a338ec55ae58297e2 +0 -0
  524. data/test/fixtures/alternate/objects/14/9c32d47e99d0a3572ff1e70a2e0051bbf347a9 +0 -0
  525. data/test/fixtures/alternate/objects/14/fb3108588f9421bf764041e5e3ac305eb6277f +0 -0
  526. data/test/fixtures/archive.tar.gz +0 -0
  527. data/test/fixtures/attr/attr0 +0 -1
  528. data/test/fixtures/attr/attr1 +0 -29
  529. data/test/fixtures/attr/attr2 +0 -21
  530. data/test/fixtures/attr/attr3 +0 -4
  531. data/test/fixtures/attr/binfile +0 -1
  532. data/test/fixtures/attr/dir/file +0 -0
  533. data/test/fixtures/attr/file +0 -1
  534. data/test/fixtures/attr/gitattributes +0 -29
  535. data/test/fixtures/attr/gitignore +0 -2
  536. data/test/fixtures/attr/ign +0 -1
  537. data/test/fixtures/attr/macro_bad +0 -1
  538. data/test/fixtures/attr/macro_test +0 -1
  539. data/test/fixtures/attr/root_test1 +0 -1
  540. data/test/fixtures/attr/root_test2 +0 -6
  541. data/test/fixtures/attr/root_test3 +0 -19
  542. data/test/fixtures/attr/root_test4.txt +0 -14
  543. data/test/fixtures/attr/sub/abc +0 -37
  544. data/test/fixtures/attr/sub/dir/file +0 -0
  545. data/test/fixtures/attr/sub/file +0 -1
  546. data/test/fixtures/attr/sub/ign/file +0 -1
  547. data/test/fixtures/attr/sub/ign/sub/file +0 -1
  548. data/test/fixtures/attr/sub/sub/dir +0 -0
  549. data/test/fixtures/attr/sub/sub/file +0 -1
  550. data/test/fixtures/attr/sub/sub/subsub.txt +0 -1
  551. data/test/fixtures/attr/sub/subdir_test1 +0 -2
  552. data/test/fixtures/attr/sub/subdir_test2.txt +0 -1
  553. data/test/fixtures/diff/another.txt +0 -38
  554. data/test/fixtures/diff/readme.txt +0 -36
  555. data/test/fixtures/mergedrepo/conflicts-one.txt +0 -5
  556. data/test/fixtures/mergedrepo/conflicts-two.txt +0 -5
  557. data/test/fixtures/mergedrepo/one.txt +0 -10
  558. data/test/fixtures/mergedrepo/two.txt +0 -12
  559. data/test/fixtures/status/current_file +0 -1
  560. data/test/fixtures/status/ignored_file +0 -1
  561. data/test/fixtures/status/modified_file +0 -2
  562. data/test/fixtures/status/new_file +0 -1
  563. data/test/fixtures/status/staged_changes +0 -2
  564. data/test/fixtures/status/staged_changes_modified_file +0 -3
  565. data/test/fixtures/status/staged_delete_modified_file +0 -1
  566. data/test/fixtures/status/staged_new_file +0 -1
  567. data/test/fixtures/status/staged_new_file_modified_file +0 -2
  568. data/test/fixtures/status/subdir/current_file +0 -1
  569. data/test/fixtures/status/subdir/modified_file +0 -2
  570. data/test/fixtures/status/subdir/new_file +0 -1
  571. data/test/fixtures/status/subdir.txt +0 -2
  572. data/test/fixtures/status//350/277/231 +0 -1
  573. data/test/fixtures/testrepo.git/HEAD +0 -1
  574. data/test/fixtures/testrepo.git/config +0 -13
  575. data/test/fixtures/testrepo.git/description +0 -1
  576. data/test/fixtures/testrepo.git/index +0 -0
  577. data/test/fixtures/testrepo.git/info/exclude +0 -6
  578. data/test/fixtures/testrepo.git/logs/HEAD +0 -3
  579. data/test/fixtures/testrepo.git/logs/refs/heads/master +0 -3
  580. data/test/fixtures/testrepo.git/logs/refs/notes/commits +0 -1
  581. data/test/fixtures/testrepo.git/objects/0c/37a5391bbff43c37f0d0371823a5509eed5b1d +0 -0
  582. data/test/fixtures/testrepo.git/objects/13/85f264afb75a56a5bec74243be9b367ba4ca08 +0 -0
  583. data/test/fixtures/testrepo.git/objects/18/1037049a54a1eb5fab404658a3a250b44335d7 +0 -0
  584. data/test/fixtures/testrepo.git/objects/18/10dff58d8a660512d4832e740f692884338ccd +0 -0
  585. data/test/fixtures/testrepo.git/objects/2d/2eff63372b08adf0a9eb84109ccf7d19e2f3a2 +0 -0
  586. data/test/fixtures/testrepo.git/objects/36/060c58702ed4c2a40832c51758d5344201d89a +0 -2
  587. data/test/fixtures/testrepo.git/objects/44/1034f860c1d5d90e4188d11ae0d325176869a8 +0 -1
  588. data/test/fixtures/testrepo.git/objects/45/b983be36b73c0788dc9cbcb76cbb80fc7bb057 +0 -0
  589. data/test/fixtures/testrepo.git/objects/4a/202b346bb0fb0db7eff3cffeb3c70babbd2045 +0 -2
  590. data/test/fixtures/testrepo.git/objects/5b/5b025afb0b4c913b4c338a42934a3863bf3644 +0 -2
  591. data/test/fixtures/testrepo.git/objects/60/d415052a33de2150bf68757f6461df4f563ae4 +0 -0
  592. data/test/fixtures/testrepo.git/objects/61/9f9935957e010c419cb9d15621916ddfcc0b96 +0 -0
  593. data/test/fixtures/testrepo.git/objects/68/8a8f4ef7496901d15322972f96e212a9e466cc +0 -1
  594. data/test/fixtures/testrepo.git/objects/75/057dd4114e74cca1d750d0aee1647c903cb60a +0 -0
  595. data/test/fixtures/testrepo.git/objects/77/71329dfa3002caf8c61a0ceb62a31d09023f37 +0 -0
  596. data/test/fixtures/testrepo.git/objects/81/4889a078c031f61ed08ab5fa863aea9314344d +0 -0
  597. data/test/fixtures/testrepo.git/objects/84/96071c1b46c854b31185ea97743be6a8774479 +0 -0
  598. data/test/fixtures/testrepo.git/objects/94/eca2de348d5f672faf56b0decafa5937e3235e +0 -0
  599. data/test/fixtures/testrepo.git/objects/9b/7384fe1676186192842f5d3e129457b62db9e3 +0 -0
  600. data/test/fixtures/testrepo.git/objects/9f/d738e8f7967c078dceed8190330fc8648ee56a +0 -3
  601. data/test/fixtures/testrepo.git/objects/a4/a7dce85cf63874e984719f4fdd239f5145052f +0 -2
  602. data/test/fixtures/testrepo.git/objects/a7/1586c1dfe8a71c6cbf6c129f404c5642ff31bd +0 -0
  603. data/test/fixtures/testrepo.git/objects/a8/233120f6ad708f843d861ce2b7228ec4e3dec6 +0 -0
  604. data/test/fixtures/testrepo.git/objects/b7/4713326bc972cc15751ed504dca6f6f3b91f7a +0 -3
  605. data/test/fixtures/testrepo.git/objects/be/3563ae3f795b2b4353bcce3a527ad0a4f7f644 +0 -3
  606. data/test/fixtures/testrepo.git/objects/c4/7800c7266a2be04c571c04d5a6614691ea99bd +0 -3
  607. data/test/fixtures/testrepo.git/objects/c4/dc1555e4d4fa0e0c9c3fc46734c7c35b3ce90b +0 -0
  608. data/test/fixtures/testrepo.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  609. data/test/fixtures/testrepo.git/objects/f6/0079018b664e4e79329a7ef9559c8d9e0378d1 +0 -0
  610. data/test/fixtures/testrepo.git/objects/fa/49b077972391ad58037050f2a75f74e3671e92 +0 -0
  611. data/test/fixtures/testrepo.git/objects/fd/093bff70906175335656e6ce6ae05783708765 +0 -0
  612. data/test/fixtures/testrepo.git/objects/pack/pack-d7c6adf9f61318f041845b01440d09aa7a91e1b5.idx +0 -0
  613. data/test/fixtures/testrepo.git/objects/pack/pack-d7c6adf9f61318f041845b01440d09aa7a91e1b5.pack +0 -0
  614. data/test/fixtures/testrepo.git/packed-refs +0 -2
  615. data/test/fixtures/testrepo.git/refs/heads/master +0 -1
  616. data/test/fixtures/testrepo.git/refs/notes/commits +0 -1
  617. data/test/fixtures/testrepo.git/refs/tags/v0.9 +0 -1
  618. data/test/fixtures/testrepo.git/refs/tags/v1.0 +0 -1
  619. data/test/fixtures/text_file.md +0 -464
  620. data/test/fixtures/unsymlinked.git/HEAD +0 -1
  621. data/test/fixtures/unsymlinked.git/config +0 -6
  622. data/test/fixtures/unsymlinked.git/description +0 -1
  623. data/test/fixtures/unsymlinked.git/info/exclude +0 -2
  624. data/test/fixtures/unsymlinked.git/objects/08/8b64704e0d6b8bd061dea879418cb5442a3fbf +0 -0
  625. data/test/fixtures/unsymlinked.git/objects/13/a5e939bca25940c069fd2169d993dba328e30b +0 -0
  626. data/test/fixtures/unsymlinked.git/objects/19/bf568e59e3a0b363cafb4106226e62d4a4c41c +0 -0
  627. data/test/fixtures/unsymlinked.git/objects/58/1fadd35b4cf320d102a152f918729011604773 +0 -0
  628. data/test/fixtures/unsymlinked.git/objects/5c/87b6791e8b13da658a14d1ef7e09b5dc3bac8c +0 -0
  629. data/test/fixtures/unsymlinked.git/objects/6f/e5f5398af85fb3de8a6aba0339b6d3bfa26a27 +0 -0
  630. data/test/fixtures/unsymlinked.git/objects/7f/ccd75616ec188b8f1b23d67506a334cc34a49d +0 -0
  631. data/test/fixtures/unsymlinked.git/objects/80/6999882bf91d24241e4077906b9017605eb1f3 +0 -0
  632. data/test/fixtures/unsymlinked.git/objects/83/7d176303c5005505ec1e4a30231c40930c0230 +0 -0
  633. data/test/fixtures/unsymlinked.git/objects/a8/595ccca04f40818ae0155c8f9c77a230e597b6 +0 -2
  634. data/test/fixtures/unsymlinked.git/objects/cf/8f1cf5cce859c438d6cc067284cb5e161206e7 +0 -0
  635. data/test/fixtures/unsymlinked.git/objects/d5/278d05c8607ec420bfee4cf219fbc0eeebfd6a +0 -0
  636. data/test/fixtures/unsymlinked.git/objects/f4/e16fb76536591a41454194058d048d8e4dd2e9 +0 -0
  637. data/test/fixtures/unsymlinked.git/objects/f9/e65619d93fdf2673882e0a261c5e93b1a84006 +0 -0
  638. data/test/fixtures/unsymlinked.git/refs/heads/exe-file +0 -1
  639. data/test/fixtures/unsymlinked.git/refs/heads/master +0 -1
  640. data/test/fixtures/unsymlinked.git/refs/heads/reg-file +0 -1
  641. data/test/index_test.rb +0 -333
  642. data/test/lib_test.rb +0 -127
  643. data/test/note_test.rb +0 -158
  644. data/test/object_test.rb +0 -43
  645. data/test/reference_test.rb +0 -207
  646. data/test/remote_test.rb +0 -324
  647. data/test/repo_pack_test.rb +0 -24
  648. data/test/repo_reset_test.rb +0 -82
  649. data/test/repo_test.rb +0 -402
  650. data/test/tag_test.rb +0 -68
  651. data/test/test_helper.rb +0 -92
  652. data/test/tree_test.rb +0 -91
  653. data/test/walker_test.rb +0 -88
  654. data/vendor/libgit2/Makefile.embed +0 -42
  655. data/vendor/libgit2/include/git2/push.h +0 -131
  656. data/vendor/libgit2/include/git2/threads.h +0 -50
  657. data/vendor/libgit2/src/amiga/map.c +0 -48
  658. data/vendor/libgit2/src/bswap.h +0 -97
  659. data/vendor/libgit2/src/compress.c +0 -53
  660. data/vendor/libgit2/src/config_file.h +0 -60
  661. data/vendor/libgit2/src/delta-apply.c +0 -134
  662. data/vendor/libgit2/src/delta-apply.h +0 -50
  663. data/vendor/libgit2/src/diff_patch.c +0 -995
  664. data/vendor/libgit2/src/diff_patch.h +0 -46
  665. data/vendor/libgit2/src/hashsig.h +0 -72
  666. data/vendor/libgit2/src/merge_file.h +0 -71
  667. data/vendor/libgit2/src/win32/pthread.c +0 -144
  668. data/vendor/libgit2/src/win32/pthread.h +0 -50
@@ -0,0 +1,594 @@
1
+ /*
2
+ * Copyright (C) 2007 Francois Gouget
3
+ *
4
+ * This library is free software; you can redistribute it and/or
5
+ * modify it under the terms of the GNU Lesser General Public
6
+ * License as published by the Free Software Foundation; either
7
+ * version 2.1 of the License, or (at your option) any later version.
8
+ *
9
+ * This library is distributed in the hope that it will be useful,
10
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
+ * Lesser General Public License for more details.
13
+ *
14
+ * You should have received a copy of the GNU Lesser General Public
15
+ * License along with this library; if not, write to the Free Software
16
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17
+ */
18
+
19
+ #if defined(__MINGW_VERSION) || defined(__MINGW32_VERSION)
20
+
21
+ #ifndef __WINE_WINHTTP_H
22
+ #define __WINE_WINHTTP_H
23
+
24
+ #ifdef _WIN64
25
+ #include <pshpack8.h>
26
+ #else
27
+ #include <pshpack4.h>
28
+ #endif
29
+
30
+ #define WINHTTPAPI
31
+ #define BOOLAPI WINHTTPAPI BOOL WINAPI
32
+
33
+
34
+ typedef LPVOID HINTERNET;
35
+ typedef HINTERNET *LPHINTERNET;
36
+
37
+ #define INTERNET_DEFAULT_PORT 0
38
+ #define INTERNET_DEFAULT_HTTP_PORT 80
39
+ #define INTERNET_DEFAULT_HTTPS_PORT 443
40
+ typedef WORD INTERNET_PORT;
41
+ typedef INTERNET_PORT *LPINTERNET_PORT;
42
+
43
+ #define INTERNET_SCHEME_HTTP 1
44
+ #define INTERNET_SCHEME_HTTPS 2
45
+ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
46
+
47
+ #define ICU_ESCAPE 0x80000000
48
+
49
+ /* flags for WinHttpOpen */
50
+ #define WINHTTP_FLAG_ASYNC 0x10000000
51
+
52
+ /* flags for WinHttpOpenRequest */
53
+ #define WINHTTP_FLAG_ESCAPE_PERCENT 0x00000004
54
+ #define WINHTTP_FLAG_NULL_CODEPAGE 0x00000008
55
+ #define WINHTTP_FLAG_ESCAPE_DISABLE 0x00000040
56
+ #define WINHTTP_FLAG_ESCAPE_DISABLE_QUERY 0x00000080
57
+ #define WINHTTP_FLAG_BYPASS_PROXY_CACHE 0x00000100
58
+ #define WINHTTP_FLAG_REFRESH WINHTTP_FLAG_BYPASS_PROXY_CACHE
59
+ #define WINHTTP_FLAG_SECURE 0x00800000
60
+
61
+ #define WINHTTP_ACCESS_TYPE_DEFAULT_PROXY 0
62
+ #define WINHTTP_ACCESS_TYPE_NO_PROXY 1
63
+ #define WINHTTP_ACCESS_TYPE_NAMED_PROXY 3
64
+
65
+ #define WINHTTP_NO_PROXY_NAME NULL
66
+ #define WINHTTP_NO_PROXY_BYPASS NULL
67
+
68
+ #define WINHTTP_NO_REFERER NULL
69
+ #define WINHTTP_DEFAULT_ACCEPT_TYPES NULL
70
+
71
+ #define WINHTTP_NO_ADDITIONAL_HEADERS NULL
72
+ #define WINHTTP_NO_REQUEST_DATA NULL
73
+
74
+ #define WINHTTP_HEADER_NAME_BY_INDEX NULL
75
+ #define WINHTTP_NO_OUTPUT_BUFFER NULL
76
+ #define WINHTTP_NO_HEADER_INDEX NULL
77
+
78
+ #define WINHTTP_ADDREQ_INDEX_MASK 0x0000FFFF
79
+ #define WINHTTP_ADDREQ_FLAGS_MASK 0xFFFF0000
80
+ #define WINHTTP_ADDREQ_FLAG_ADD_IF_NEW 0x10000000
81
+ #define WINHTTP_ADDREQ_FLAG_ADD 0x20000000
82
+ #define WINHTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA 0x40000000
83
+ #define WINHTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON 0x01000000
84
+ #define WINHTTP_ADDREQ_FLAG_COALESCE WINHTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA
85
+ #define WINHTTP_ADDREQ_FLAG_REPLACE 0x80000000
86
+
87
+ #define WINHTTP_IGNORE_REQUEST_TOTAL_LENGTH 0
88
+
89
+ /* flags for WinHttp{Set/Query}Options */
90
+ #define WINHTTP_FIRST_OPTION WINHTTP_OPTION_CALLBACK
91
+ #define WINHTTP_OPTION_CALLBACK 1
92
+ #define WINHTTP_OPTION_RESOLVE_TIMEOUT 2
93
+ #define WINHTTP_OPTION_CONNECT_TIMEOUT 3
94
+ #define WINHTTP_OPTION_CONNECT_RETRIES 4
95
+ #define WINHTTP_OPTION_SEND_TIMEOUT 5
96
+ #define WINHTTP_OPTION_RECEIVE_TIMEOUT 6
97
+ #define WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT 7
98
+ #define WINHTTP_OPTION_HANDLE_TYPE 9
99
+ #define WINHTTP_OPTION_READ_BUFFER_SIZE 12
100
+ #define WINHTTP_OPTION_WRITE_BUFFER_SIZE 13
101
+ #define WINHTTP_OPTION_PARENT_HANDLE 21
102
+ #define WINHTTP_OPTION_EXTENDED_ERROR 24
103
+ #define WINHTTP_OPTION_SECURITY_FLAGS 31
104
+ #define WINHTTP_OPTION_SECURITY_CERTIFICATE_STRUCT 32
105
+ #define WINHTTP_OPTION_URL 34
106
+ #define WINHTTP_OPTION_SECURITY_KEY_BITNESS 36
107
+ #define WINHTTP_OPTION_PROXY 38
108
+ #define WINHTTP_OPTION_USER_AGENT 41
109
+ #define WINHTTP_OPTION_CONTEXT_VALUE 45
110
+ #define WINHTTP_OPTION_CLIENT_CERT_CONTEXT 47
111
+ #define WINHTTP_OPTION_REQUEST_PRIORITY 58
112
+ #define WINHTTP_OPTION_HTTP_VERSION 59
113
+ #define WINHTTP_OPTION_DISABLE_FEATURE 63
114
+ #define WINHTTP_OPTION_CODEPAGE 68
115
+ #define WINHTTP_OPTION_MAX_CONNS_PER_SERVER 73
116
+ #define WINHTTP_OPTION_MAX_CONNS_PER_1_0_SERVER 74
117
+ #define WINHTTP_OPTION_AUTOLOGON_POLICY 77
118
+ #define WINHTTP_OPTION_SERVER_CERT_CONTEXT 78
119
+ #define WINHTTP_OPTION_ENABLE_FEATURE 79
120
+ #define WINHTTP_OPTION_WORKER_THREAD_COUNT 80
121
+ #define WINHTTP_OPTION_PASSPORT_COBRANDING_TEXT 81
122
+ #define WINHTTP_OPTION_PASSPORT_COBRANDING_URL 82
123
+ #define WINHTTP_OPTION_CONFIGURE_PASSPORT_AUTH 83
124
+ #define WINHTTP_OPTION_SECURE_PROTOCOLS 84
125
+ #define WINHTTP_OPTION_ENABLETRACING 85
126
+ #define WINHTTP_OPTION_PASSPORT_SIGN_OUT 86
127
+ #define WINHTTP_OPTION_PASSPORT_RETURN_URL 87
128
+ #define WINHTTP_OPTION_REDIRECT_POLICY 88
129
+ #define WINHTTP_OPTION_MAX_HTTP_AUTOMATIC_REDIRECTS 89
130
+ #define WINHTTP_OPTION_MAX_HTTP_STATUS_CONTINUE 90
131
+ #define WINHTTP_OPTION_MAX_RESPONSE_HEADER_SIZE 91
132
+ #define WINHTTP_OPTION_MAX_RESPONSE_DRAIN_SIZE 92
133
+ #define WINHTTP_OPTION_CONNECTION_INFO 93
134
+ #define WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST 94
135
+ #define WINHTTP_OPTION_SPN 96
136
+ #define WINHTTP_OPTION_GLOBAL_PROXY_CREDS 97
137
+ #define WINHTTP_OPTION_GLOBAL_SERVER_CREDS 98
138
+ #define WINHTTP_OPTION_UNLOAD_NOTIFY_EVENT 99
139
+ #define WINHTTP_OPTION_REJECT_USERPWD_IN_URL 100
140
+ #define WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS 101
141
+ #define WINHTTP_LAST_OPTION WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS
142
+ #define WINHTTP_OPTION_USERNAME 0x1000
143
+ #define WINHTTP_OPTION_PASSWORD 0x1001
144
+ #define WINHTTP_OPTION_PROXY_USERNAME 0x1002
145
+ #define WINHTTP_OPTION_PROXY_PASSWORD 0x1003
146
+
147
+ #define WINHTTP_CONNS_PER_SERVER_UNLIMITED 0xFFFFFFFF
148
+
149
+ #define WINHTTP_AUTOLOGON_SECURITY_LEVEL_MEDIUM 0
150
+ #define WINHTTP_AUTOLOGON_SECURITY_LEVEL_LOW 1
151
+ #define WINHTTP_AUTOLOGON_SECURITY_LEVEL_HIGH 2
152
+ #define WINHTTP_AUTOLOGON_SECURITY_LEVEL_DEFAULT WINHTTP_AUTOLOGON_SECURITY_LEVEL_MEDIUM
153
+
154
+ #define WINHTTP_OPTION_REDIRECT_POLICY_NEVER 0
155
+ #define WINHTTP_OPTION_REDIRECT_POLICY_DISALLOW_HTTPS_TO_HTTP 1
156
+ #define WINHTTP_OPTION_REDIRECT_POLICY_ALWAYS 2
157
+ #define WINHTTP_OPTION_REDIRECT_POLICY_LAST WINHTTP_OPTION_REDIRECT_POLICY_ALWAYS
158
+ #define WINHTTP_OPTION_REDIRECT_POLICY_DEFAULT WINHTTP_OPTION_REDIRECT_POLICY_DISALLOW_HTTPS_TO_HTTP
159
+
160
+ #define WINHTTP_DISABLE_PASSPORT_AUTH 0x00000000
161
+ #define WINHTTP_ENABLE_PASSPORT_AUTH 0x10000000
162
+ #define WINHTTP_DISABLE_PASSPORT_KEYRING 0x20000000
163
+ #define WINHTTP_ENABLE_PASSPORT_KEYRING 0x40000000
164
+
165
+ #define WINHTTP_DISABLE_COOKIES 0x00000001
166
+ #define WINHTTP_DISABLE_REDIRECTS 0x00000002
167
+ #define WINHTTP_DISABLE_AUTHENTICATION 0x00000004
168
+ #define WINHTTP_DISABLE_KEEP_ALIVE 0x00000008
169
+ #define WINHTTP_ENABLE_SSL_REVOCATION 0x00000001
170
+ #define WINHTTP_ENABLE_SSL_REVERT_IMPERSONATION 0x00000002
171
+ #define WINHTTP_DISABLE_SPN_SERVER_PORT 0x00000000
172
+ #define WINHTTP_ENABLE_SPN_SERVER_PORT 0x00000001
173
+ #define WINHTTP_OPTION_SPN_MASK WINHTTP_ENABLE_SPN_SERVER_PORT
174
+
175
+ /* Options for WinHttpOpenRequest */
176
+ #define WINHTTP_NO_REFERER NULL
177
+ #define WINHTTP_DEFAULT_ACCEPT_TYPES NULL
178
+
179
+ /* Options for WinHttpSendRequest */
180
+ #define WINHTTP_NO_ADDITIONAL_HEADERS NULL
181
+ #define WINHTTP_NO_REQUEST_DATA NULL
182
+
183
+ /* WinHTTP error codes */
184
+ #define WINHTTP_ERROR_BASE 12000
185
+ #define ERROR_WINHTTP_OUT_OF_HANDLES (WINHTTP_ERROR_BASE + 1)
186
+ #define ERROR_WINHTTP_TIMEOUT (WINHTTP_ERROR_BASE + 2)
187
+ #define ERROR_WINHTTP_INTERNAL_ERROR (WINHTTP_ERROR_BASE + 4)
188
+ #define ERROR_WINHTTP_INVALID_URL (WINHTTP_ERROR_BASE + 5)
189
+ #define ERROR_WINHTTP_UNRECOGNIZED_SCHEME (WINHTTP_ERROR_BASE + 6)
190
+ #define ERROR_WINHTTP_NAME_NOT_RESOLVED (WINHTTP_ERROR_BASE + 7)
191
+ #define ERROR_WINHTTP_INVALID_OPTION (WINHTTP_ERROR_BASE + 9)
192
+ #define ERROR_WINHTTP_OPTION_NOT_SETTABLE (WINHTTP_ERROR_BASE + 11)
193
+ #define ERROR_WINHTTP_SHUTDOWN (WINHTTP_ERROR_BASE + 12)
194
+ #define ERROR_WINHTTP_LOGIN_FAILURE (WINHTTP_ERROR_BASE + 15)
195
+ #define ERROR_WINHTTP_OPERATION_CANCELLED (WINHTTP_ERROR_BASE + 17)
196
+ #define ERROR_WINHTTP_INCORRECT_HANDLE_TYPE (WINHTTP_ERROR_BASE + 18)
197
+ #define ERROR_WINHTTP_INCORRECT_HANDLE_STATE (WINHTTP_ERROR_BASE + 19)
198
+ #define ERROR_WINHTTP_CANNOT_CONNECT (WINHTTP_ERROR_BASE + 29)
199
+ #define ERROR_WINHTTP_CONNECTION_ERROR (WINHTTP_ERROR_BASE + 30)
200
+ #define ERROR_WINHTTP_RESEND_REQUEST (WINHTTP_ERROR_BASE + 32)
201
+ #define ERROR_WINHTTP_SECURE_CERT_DATE_INVALID (WINHTTP_ERROR_BASE + 37)
202
+ #define ERROR_WINHTTP_SECURE_CERT_CN_INVALID (WINHTTP_ERROR_BASE + 38)
203
+ #define ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED (WINHTTP_ERROR_BASE + 44)
204
+ #define ERROR_WINHTTP_SECURE_INVALID_CA (WINHTTP_ERROR_BASE + 45)
205
+ #define ERROR_WINHTTP_SECURE_CERT_REV_FAILED (WINHTTP_ERROR_BASE + 57)
206
+ #define ERROR_WINHTTP_CANNOT_CALL_BEFORE_OPEN (WINHTTP_ERROR_BASE + 100)
207
+ #define ERROR_WINHTTP_CANNOT_CALL_BEFORE_SEND (WINHTTP_ERROR_BASE + 101)
208
+ #define ERROR_WINHTTP_CANNOT_CALL_AFTER_SEND (WINHTTP_ERROR_BASE + 102)
209
+ #define ERROR_WINHTTP_CANNOT_CALL_AFTER_OPEN (WINHTTP_ERROR_BASE + 103)
210
+ #define ERROR_WINHTTP_HEADER_NOT_FOUND (WINHTTP_ERROR_BASE + 150)
211
+ #define ERROR_WINHTTP_INVALID_SERVER_RESPONSE (WINHTTP_ERROR_BASE + 152)
212
+ #define ERROR_WINHTTP_INVALID_HEADER (WINHTTP_ERROR_BASE + 153)
213
+ #define ERROR_WINHTTP_INVALID_QUERY_REQUEST (WINHTTP_ERROR_BASE + 154)
214
+ #define ERROR_WINHTTP_HEADER_ALREADY_EXISTS (WINHTTP_ERROR_BASE + 155)
215
+ #define ERROR_WINHTTP_REDIRECT_FAILED (WINHTTP_ERROR_BASE + 156)
216
+ #define ERROR_WINHTTP_SECURE_CHANNEL_ERROR (WINHTTP_ERROR_BASE + 157)
217
+ #define ERROR_WINHTTP_BAD_AUTO_PROXY_SCRIPT (WINHTTP_ERROR_BASE + 166)
218
+ #define ERROR_WINHTTP_UNABLE_TO_DOWNLOAD_SCRIPT (WINHTTP_ERROR_BASE + 167)
219
+ #define ERROR_WINHTTP_SECURE_INVALID_CERT (WINHTTP_ERROR_BASE + 169)
220
+ #define ERROR_WINHTTP_SECURE_CERT_REVOKED (WINHTTP_ERROR_BASE + 170)
221
+ #define ERROR_WINHTTP_NOT_INITIALIZED (WINHTTP_ERROR_BASE + 172)
222
+ #define ERROR_WINHTTP_SECURE_FAILURE (WINHTTP_ERROR_BASE + 175)
223
+ #define ERROR_WINHTTP_AUTO_PROXY_SERVICE_ERROR (WINHTTP_ERROR_BASE + 178)
224
+ #define ERROR_WINHTTP_SECURE_CERT_WRONG_USAGE (WINHTTP_ERROR_BASE + 179)
225
+ #define ERROR_WINHTTP_AUTODETECTION_FAILED (WINHTTP_ERROR_BASE + 180)
226
+ #define ERROR_WINHTTP_HEADER_COUNT_EXCEEDED (WINHTTP_ERROR_BASE + 181)
227
+ #define ERROR_WINHTTP_HEADER_SIZE_OVERFLOW (WINHTTP_ERROR_BASE + 182)
228
+ #define ERROR_WINHTTP_CHUNKED_ENCODING_HEADER_SIZE_OVERFLOW (WINHTTP_ERROR_BASE + 183)
229
+ #define ERROR_WINHTTP_RESPONSE_DRAIN_OVERFLOW (WINHTTP_ERROR_BASE + 184)
230
+ #define ERROR_WINHTTP_CLIENT_CERT_NO_PRIVATE_KEY (WINHTTP_ERROR_BASE + 185)
231
+ #define ERROR_WINHTTP_CLIENT_CERT_NO_ACCESS_PRIVATE_KEY (WINHTTP_ERROR_BASE + 186)
232
+ #define WINHTTP_ERROR_LAST (WINHTTP_ERROR_BASE + 186)
233
+
234
+ /* WinHttp status codes */
235
+ #define HTTP_STATUS_CONTINUE 100
236
+ #define HTTP_STATUS_SWITCH_PROTOCOLS 101
237
+ #define HTTP_STATUS_OK 200
238
+ #define HTTP_STATUS_CREATED 201
239
+ #define HTTP_STATUS_ACCEPTED 202
240
+ #define HTTP_STATUS_PARTIAL 203
241
+ #define HTTP_STATUS_NO_CONTENT 204
242
+ #define HTTP_STATUS_RESET_CONTENT 205
243
+ #define HTTP_STATUS_PARTIAL_CONTENT 206
244
+ #define HTTP_STATUS_WEBDAV_MULTI_STATUS 207
245
+ #define HTTP_STATUS_AMBIGUOUS 300
246
+ #define HTTP_STATUS_MOVED 301
247
+ #define HTTP_STATUS_REDIRECT 302
248
+ #define HTTP_STATUS_REDIRECT_METHOD 303
249
+ #define HTTP_STATUS_NOT_MODIFIED 304
250
+ #define HTTP_STATUS_USE_PROXY 305
251
+ #define HTTP_STATUS_REDIRECT_KEEP_VERB 307
252
+ #define HTTP_STATUS_BAD_REQUEST 400
253
+ #define HTTP_STATUS_DENIED 401
254
+ #define HTTP_STATUS_PAYMENT_REQ 402
255
+ #define HTTP_STATUS_FORBIDDEN 403
256
+ #define HTTP_STATUS_NOT_FOUND 404
257
+ #define HTTP_STATUS_BAD_METHOD 405
258
+ #define HTTP_STATUS_NONE_ACCEPTABLE 406
259
+ #define HTTP_STATUS_PROXY_AUTH_REQ 407
260
+ #define HTTP_STATUS_REQUEST_TIMEOUT 408
261
+ #define HTTP_STATUS_CONFLICT 409
262
+ #define HTTP_STATUS_GONE 410
263
+ #define HTTP_STATUS_LENGTH_REQUIRED 411
264
+ #define HTTP_STATUS_PRECOND_FAILED 412
265
+ #define HTTP_STATUS_REQUEST_TOO_LARGE 413
266
+ #define HTTP_STATUS_URI_TOO_LONG 414
267
+ #define HTTP_STATUS_UNSUPPORTED_MEDIA 415
268
+ #define HTTP_STATUS_RETRY_WITH 449
269
+ #define HTTP_STATUS_SERVER_ERROR 500
270
+ #define HTTP_STATUS_NOT_SUPPORTED 501
271
+ #define HTTP_STATUS_BAD_GATEWAY 502
272
+ #define HTTP_STATUS_SERVICE_UNAVAIL 503
273
+ #define HTTP_STATUS_GATEWAY_TIMEOUT 504
274
+ #define HTTP_STATUS_VERSION_NOT_SUP 505
275
+ #define HTTP_STATUS_FIRST HTTP_STATUS_CONTINUE
276
+ #define HTTP_STATUS_LAST HTTP_STATUS_VERSION_NOT_SUP
277
+
278
+ #define SECURITY_FLAG_IGNORE_UNKNOWN_CA 0x00000100
279
+ #define SECURITY_FLAG_IGNORE_CERT_DATE_INVALID 0x00002000
280
+ #define SECURITY_FLAG_IGNORE_CERT_CN_INVALID 0x00001000
281
+ #define SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE 0x00000200
282
+ #define SECURITY_FLAG_SECURE 0x00000001
283
+ #define SECURITY_FLAG_STRENGTH_WEAK 0x10000000
284
+ #define SECURITY_FLAG_STRENGTH_MEDIUM 0x40000000
285
+ #define SECURITY_FLAG_STRENGTH_STRONG 0x20000000
286
+
287
+ #define ICU_NO_ENCODE 0x20000000
288
+ #define ICU_DECODE 0x10000000
289
+ #define ICU_NO_META 0x08000000
290
+ #define ICU_ENCODE_SPACES_ONLY 0x04000000
291
+ #define ICU_BROWSER_MODE 0x02000000
292
+ #define ICU_ENCODE_PERCENT 0x00001000
293
+
294
+ /* Query flags */
295
+ #define WINHTTP_QUERY_MIME_VERSION 0
296
+ #define WINHTTP_QUERY_CONTENT_TYPE 1
297
+ #define WINHTTP_QUERY_CONTENT_TRANSFER_ENCODING 2
298
+ #define WINHTTP_QUERY_CONTENT_ID 3
299
+ #define WINHTTP_QUERY_CONTENT_DESCRIPTION 4
300
+ #define WINHTTP_QUERY_CONTENT_LENGTH 5
301
+ #define WINHTTP_QUERY_CONTENT_LANGUAGE 6
302
+ #define WINHTTP_QUERY_ALLOW 7
303
+ #define WINHTTP_QUERY_PUBLIC 8
304
+ #define WINHTTP_QUERY_DATE 9
305
+ #define WINHTTP_QUERY_EXPIRES 10
306
+ #define WINHTTP_QUERY_LAST_MODIFIED 11
307
+ #define WINHTTP_QUERY_MESSAGE_ID 12
308
+ #define WINHTTP_QUERY_URI 13
309
+ #define WINHTTP_QUERY_DERIVED_FROM 14
310
+ #define WINHTTP_QUERY_COST 15
311
+ #define WINHTTP_QUERY_LINK 16
312
+ #define WINHTTP_QUERY_PRAGMA 17
313
+ #define WINHTTP_QUERY_VERSION 18
314
+ #define WINHTTP_QUERY_STATUS_CODE 19
315
+ #define WINHTTP_QUERY_STATUS_TEXT 20
316
+ #define WINHTTP_QUERY_RAW_HEADERS 21
317
+ #define WINHTTP_QUERY_RAW_HEADERS_CRLF 22
318
+ #define WINHTTP_QUERY_CONNECTION 23
319
+ #define WINHTTP_QUERY_ACCEPT 24
320
+ #define WINHTTP_QUERY_ACCEPT_CHARSET 25
321
+ #define WINHTTP_QUERY_ACCEPT_ENCODING 26
322
+ #define WINHTTP_QUERY_ACCEPT_LANGUAGE 27
323
+ #define WINHTTP_QUERY_AUTHORIZATION 28
324
+ #define WINHTTP_QUERY_CONTENT_ENCODING 29
325
+ #define WINHTTP_QUERY_FORWARDED 30
326
+ #define WINHTTP_QUERY_FROM 31
327
+ #define WINHTTP_QUERY_IF_MODIFIED_SINCE 32
328
+ #define WINHTTP_QUERY_LOCATION 33
329
+ #define WINHTTP_QUERY_ORIG_URI 34
330
+ #define WINHTTP_QUERY_REFERER 35
331
+ #define WINHTTP_QUERY_RETRY_AFTER 36
332
+ #define WINHTTP_QUERY_SERVER 37
333
+ #define WINHTTP_QUERY_TITLE 38
334
+ #define WINHTTP_QUERY_USER_AGENT 39
335
+ #define WINHTTP_QUERY_WWW_AUTHENTICATE 40
336
+ #define WINHTTP_QUERY_PROXY_AUTHENTICATE 41
337
+ #define WINHTTP_QUERY_ACCEPT_RANGES 42
338
+ #define WINHTTP_QUERY_SET_COOKIE 43
339
+ #define WINHTTP_QUERY_COOKIE 44
340
+ #define WINHTTP_QUERY_REQUEST_METHOD 45
341
+ #define WINHTTP_QUERY_REFRESH 46
342
+ #define WINHTTP_QUERY_CONTENT_DISPOSITION 47
343
+ #define WINHTTP_QUERY_AGE 48
344
+ #define WINHTTP_QUERY_CACHE_CONTROL 49
345
+ #define WINHTTP_QUERY_CONTENT_BASE 50
346
+ #define WINHTTP_QUERY_CONTENT_LOCATION 51
347
+ #define WINHTTP_QUERY_CONTENT_MD5 52
348
+ #define WINHTTP_QUERY_CONTENT_RANGE 53
349
+ #define WINHTTP_QUERY_ETAG 54
350
+ #define WINHTTP_QUERY_HOST 55
351
+ #define WINHTTP_QUERY_IF_MATCH 56
352
+ #define WINHTTP_QUERY_IF_NONE_MATCH 57
353
+ #define WINHTTP_QUERY_IF_RANGE 58
354
+ #define WINHTTP_QUERY_IF_UNMODIFIED_SINCE 59
355
+ #define WINHTTP_QUERY_MAX_FORWARDS 60
356
+ #define WINHTTP_QUERY_PROXY_AUTHORIZATION 61
357
+ #define WINHTTP_QUERY_RANGE 62
358
+ #define WINHTTP_QUERY_TRANSFER_ENCODING 63
359
+ #define WINHTTP_QUERY_UPGRADE 64
360
+ #define WINHTTP_QUERY_VARY 65
361
+ #define WINHTTP_QUERY_VIA 66
362
+ #define WINHTTP_QUERY_WARNING 67
363
+ #define WINHTTP_QUERY_EXPECT 68
364
+ #define WINHTTP_QUERY_PROXY_CONNECTION 69
365
+ #define WINHTTP_QUERY_UNLESS_MODIFIED_SINCE 70
366
+ #define WINHTTP_QUERY_PROXY_SUPPORT 75
367
+ #define WINHTTP_QUERY_AUTHENTICATION_INFO 76
368
+ #define WINHTTP_QUERY_PASSPORT_URLS 77
369
+ #define WINHTTP_QUERY_PASSPORT_CONFIG 78
370
+ #define WINHTTP_QUERY_MAX 78
371
+ #define WINHTTP_QUERY_CUSTOM 65535
372
+ #define WINHTTP_QUERY_FLAG_REQUEST_HEADERS 0x80000000
373
+ #define WINHTTP_QUERY_FLAG_SYSTEMTIME 0x40000000
374
+ #define WINHTTP_QUERY_FLAG_NUMBER 0x20000000
375
+
376
+ /* Callback options */
377
+ #define WINHTTP_CALLBACK_STATUS_RESOLVING_NAME 0x00000001
378
+ #define WINHTTP_CALLBACK_STATUS_NAME_RESOLVED 0x00000002
379
+ #define WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER 0x00000004
380
+ #define WINHTTP_CALLBACK_STATUS_CONNECTED_TO_SERVER 0x00000008
381
+ #define WINHTTP_CALLBACK_STATUS_SENDING_REQUEST 0x00000010
382
+ #define WINHTTP_CALLBACK_STATUS_REQUEST_SENT 0x00000020
383
+ #define WINHTTP_CALLBACK_STATUS_RECEIVING_RESPONSE 0x00000040
384
+ #define WINHTTP_CALLBACK_STATUS_RESPONSE_RECEIVED 0x00000080
385
+ #define WINHTTP_CALLBACK_STATUS_CLOSING_CONNECTION 0x00000100
386
+ #define WINHTTP_CALLBACK_STATUS_CONNECTION_CLOSED 0x00000200
387
+ #define WINHTTP_CALLBACK_STATUS_HANDLE_CREATED 0x00000400
388
+ #define WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING 0x00000800
389
+ #define WINHTTP_CALLBACK_STATUS_DETECTING_PROXY 0x00001000
390
+ #define WINHTTP_CALLBACK_STATUS_REDIRECT 0x00004000
391
+ #define WINHTTP_CALLBACK_STATUS_INTERMEDIATE_RESPONSE 0x00008000
392
+ #define WINHTTP_CALLBACK_STATUS_SECURE_FAILURE 0x00010000
393
+ #define WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE 0x00020000
394
+ #define WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE 0x00040000
395
+ #define WINHTTP_CALLBACK_STATUS_READ_COMPLETE 0x00080000
396
+ #define WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE 0x00100000
397
+ #define WINHTTP_CALLBACK_STATUS_REQUEST_ERROR 0x00200000
398
+ #define WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE 0x00400000
399
+ #define WINHTTP_CALLBACK_FLAG_RESOLVE_NAME (WINHTTP_CALLBACK_STATUS_RESOLVING_NAME | WINHTTP_CALLBACK_STATUS_NAME_RESOLVED)
400
+ #define WINHTTP_CALLBACK_FLAG_CONNECT_TO_SERVER (WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER | WINHTTP_CALLBACK_STATUS_CONNECTED_TO_SERVER)
401
+ #define WINHTTP_CALLBACK_FLAG_SEND_REQUEST (WINHTTP_CALLBACK_STATUS_SENDING_REQUEST | WINHTTP_CALLBACK_STATUS_REQUEST_SENT)
402
+ #define WINHTTP_CALLBACK_FLAG_RECEIVE_RESPONSE (WINHTTP_CALLBACK_STATUS_RECEIVING_RESPONSE | WINHTTP_CALLBACK_STATUS_RESPONSE_RECEIVED)
403
+ #define WINHTTP_CALLBACK_FLAG_CLOSE_CONNECTION (WINHTTP_CALLBACK_STATUS_CLOSING_CONNECTION | WINHTTP_CALLBACK_STATUS_CONNECTION_CLOSED)
404
+ #define WINHTTP_CALLBACK_FLAG_HANDLES (WINHTTP_CALLBACK_STATUS_HANDLE_CREATED | WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING)
405
+ #define WINHTTP_CALLBACK_FLAG_DETECTING_PROXY WINHTTP_CALLBACK_STATUS_DETECTING_PROXY
406
+ #define WINHTTP_CALLBACK_FLAG_REDIRECT WINHTTP_CALLBACK_STATUS_REDIRECT
407
+ #define WINHTTP_CALLBACK_FLAG_INTERMEDIATE_RESPONSE WINHTTP_CALLBACK_STATUS_INTERMEDIATE_RESPONSE
408
+ #define WINHTTP_CALLBACK_FLAG_SECURE_FAILURE WINHTTP_CALLBACK_STATUS_SECURE_FAILURE
409
+ #define WINHTTP_CALLBACK_FLAG_SENDREQUEST_COMPLETE WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE
410
+ #define WINHTTP_CALLBACK_FLAG_HEADERS_AVAILABLE WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE
411
+ #define WINHTTP_CALLBACK_FLAG_DATA_AVAILABLE WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE
412
+ #define WINHTTP_CALLBACK_FLAG_READ_COMPLETE WINHTTP_CALLBACK_STATUS_READ_COMPLETE
413
+ #define WINHTTP_CALLBACK_FLAG_WRITE_COMPLETE WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE
414
+ #define WINHTTP_CALLBACK_FLAG_REQUEST_ERROR WINHTTP_CALLBACK_STATUS_REQUEST_ERROR
415
+ #define WINHTTP_CALLBACK_FLAG_ALL_COMPLETIONS (WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE | WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE \
416
+ | WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE | WINHTTP_CALLBACK_STATUS_READ_COMPLETE \
417
+ | WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE | WINHTTP_CALLBACK_STATUS_REQUEST_ERROR)
418
+ #define WINHTTP_CALLBACK_FLAG_ALL_NOTIFICATIONS 0xffffffff
419
+ #define WINHTTP_INVALID_STATUS_CALLBACK ((WINHTTP_STATUS_CALLBACK)(-1))
420
+
421
+ #define API_RECEIVE_RESPONSE (1)
422
+ #define API_QUERY_DATA_AVAILABLE (2)
423
+ #define API_READ_DATA (3)
424
+ #define API_WRITE_DATA (4)
425
+ #define API_SEND_REQUEST (5)
426
+
427
+ #define WINHTTP_HANDLE_TYPE_SESSION 1
428
+ #define WINHTTP_HANDLE_TYPE_CONNECT 2
429
+ #define WINHTTP_HANDLE_TYPE_REQUEST 3
430
+
431
+ #define WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED 0x00000001
432
+ #define WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CERT 0x00000002
433
+ #define WINHTTP_CALLBACK_STATUS_FLAG_CERT_REVOKED 0x00000004
434
+ #define WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CA 0x00000008
435
+ #define WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID 0x00000010
436
+ #define WINHTTP_CALLBACK_STATUS_FLAG_CERT_DATE_INVALID 0x00000020
437
+ #define WINHTTP_CALLBACK_STATUS_FLAG_CERT_WRONG_USAGE 0x00000040
438
+ #define WINHTTP_CALLBACK_STATUS_FLAG_SECURITY_CHANNEL_ERROR 0x80000000
439
+
440
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_SSL2 0x00000008
441
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_SSL3 0x00000020
442
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_TLS1 0x00000080
443
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_1 0x00000200
444
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_2 0x00000800
445
+ #define WINHTTP_FLAG_SECURE_PROTOCOL_ALL (WINHTTP_FLAG_SECURE_PROTOCOL_SSL2 | WINHTTP_FLAG_SECURE_PROTOCOL_SSL3 | WINHTTP_FLAG_SECURE_PROTOCOL_TLS1)
446
+
447
+ #define WINHTTP_AUTH_SCHEME_BASIC 0x00000001
448
+ #define WINHTTP_AUTH_SCHEME_NTLM 0x00000002
449
+ #define WINHTTP_AUTH_SCHEME_PASSPORT 0x00000004
450
+ #define WINHTTP_AUTH_SCHEME_DIGEST 0x00000008
451
+ #define WINHTTP_AUTH_SCHEME_NEGOTIATE 0x00000010
452
+
453
+ #define WINHTTP_AUTH_TARGET_SERVER 0x00000000
454
+ #define WINHTTP_AUTH_TARGET_PROXY 0x00000001
455
+
456
+ #define WINHTTP_TIME_FORMAT_BUFSIZE 62
457
+
458
+ typedef struct
459
+ {
460
+ DWORD dwStructSize;
461
+ LPWSTR lpszScheme;
462
+ DWORD dwSchemeLength;
463
+ INTERNET_SCHEME nScheme;
464
+ LPWSTR lpszHostName;
465
+ DWORD dwHostNameLength;
466
+ INTERNET_PORT nPort;
467
+ LPWSTR lpszUserName;
468
+ DWORD dwUserNameLength;
469
+ LPWSTR lpszPassword;
470
+ DWORD dwPasswordLength;
471
+ LPWSTR lpszUrlPath;
472
+ DWORD dwUrlPathLength;
473
+ LPWSTR lpszExtraInfo;
474
+ DWORD dwExtraInfoLength;
475
+ } URL_COMPONENTS, *LPURL_COMPONENTS;
476
+ typedef URL_COMPONENTS URL_COMPONENTSW;
477
+ typedef LPURL_COMPONENTS LPURL_COMPONENTSW;
478
+
479
+ typedef struct
480
+ {
481
+ DWORD_PTR dwResult;
482
+ DWORD dwError;
483
+ } WINHTTP_ASYNC_RESULT, *LPWINHTTP_ASYNC_RESULT;
484
+
485
+ typedef struct
486
+ {
487
+ FILETIME ftExpiry;
488
+ FILETIME ftStart;
489
+ LPWSTR lpszSubjectInfo;
490
+ LPWSTR lpszIssuerInfo;
491
+ LPWSTR lpszProtocolName;
492
+ LPWSTR lpszSignatureAlgName;
493
+ LPWSTR lpszEncryptionAlgName;
494
+ DWORD dwKeySize;
495
+ } WINHTTP_CERTIFICATE_INFO;
496
+
497
+ typedef struct
498
+ {
499
+ DWORD dwAccessType;
500
+ LPWSTR lpszProxy;
501
+ LPWSTR lpszProxyBypass;
502
+ } WINHTTP_PROXY_INFO, *LPWINHTTP_PROXY_INFO;
503
+ typedef WINHTTP_PROXY_INFO WINHTTP_PROXY_INFOW;
504
+ typedef LPWINHTTP_PROXY_INFO LPWINHTTP_PROXY_INFOW;
505
+
506
+ typedef struct
507
+ {
508
+ BOOL fAutoDetect;
509
+ LPWSTR lpszAutoConfigUrl;
510
+ LPWSTR lpszProxy;
511
+ LPWSTR lpszProxyBypass;
512
+ } WINHTTP_CURRENT_USER_IE_PROXY_CONFIG;
513
+
514
+ typedef VOID (CALLBACK *WINHTTP_STATUS_CALLBACK)(HINTERNET,DWORD_PTR,DWORD,LPVOID,DWORD);
515
+
516
+ #define WINHTTP_AUTO_DETECT_TYPE_DHCP 0x00000001
517
+ #define WINHTTP_AUTO_DETECT_TYPE_DNS_A 0x00000002
518
+
519
+ #define WINHTTP_AUTOPROXY_AUTO_DETECT 0x00000001
520
+ #define WINHTTP_AUTOPROXY_CONFIG_URL 0x00000002
521
+ #define WINHTTP_AUTOPROXY_RUN_INPROCESS 0x00010000
522
+ #define WINHTTP_AUTOPROXY_RUN_OUTPROCESS_ONLY 0x00020000
523
+
524
+ typedef struct
525
+ {
526
+ DWORD dwFlags;
527
+ DWORD dwAutoDetectFlags;
528
+ LPCWSTR lpszAutoConfigUrl;
529
+ LPVOID lpvReserved;
530
+ DWORD dwReserved;
531
+ BOOL fAutoLogonIfChallenged;
532
+ } WINHTTP_AUTOPROXY_OPTIONS;
533
+
534
+ typedef struct
535
+ {
536
+ DWORD dwMajorVersion;
537
+ DWORD dwMinorVersion;
538
+ } HTTP_VERSION_INFO, *LPHTTP_VERSION_INFO;
539
+
540
+ #ifdef _WS2DEF_
541
+ typedef struct
542
+ {
543
+ DWORD cbSize;
544
+ SOCKADDR_STORAGE LocalAddress;
545
+ SOCKADDR_STORAGE RemoteAddress;
546
+ } WINHTTP_CONNECTION_INFO;
547
+ #endif
548
+
549
+ #ifdef __cplusplus
550
+ extern "C" {
551
+ #endif
552
+
553
+ BOOL WINAPI WinHttpAddRequestHeaders(HINTERNET,LPCWSTR,DWORD,DWORD);
554
+ BOOL WINAPI WinHttpDetectAutoProxyConfigUrl(DWORD,LPWSTR*);
555
+ BOOL WINAPI WinHttpCheckPlatform(void);
556
+ BOOL WINAPI WinHttpCloseHandle(HINTERNET);
557
+ HINTERNET WINAPI WinHttpConnect(HINTERNET,LPCWSTR,INTERNET_PORT,DWORD);
558
+ BOOL WINAPI WinHttpCrackUrl(LPCWSTR,DWORD,DWORD,LPURL_COMPONENTS);
559
+ BOOL WINAPI WinHttpCreateUrl(LPURL_COMPONENTS,DWORD,LPWSTR,LPDWORD);
560
+ BOOL WINAPI WinHttpGetDefaultProxyConfiguration(WINHTTP_PROXY_INFO*);
561
+ BOOL WINAPI WinHttpGetIEProxyConfigForCurrentUser(WINHTTP_CURRENT_USER_IE_PROXY_CONFIG*);
562
+ BOOL WINAPI WinHttpGetProxyForUrl(HINTERNET,LPCWSTR,WINHTTP_AUTOPROXY_OPTIONS*,WINHTTP_PROXY_INFO*);
563
+ HINTERNET WINAPI WinHttpOpen(LPCWSTR,DWORD,LPCWSTR,LPCWSTR,DWORD);
564
+ HINTERNET WINAPI WinHttpOpenRequest(HINTERNET,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR*,DWORD);
565
+ BOOL WINAPI WinHttpQueryAuthParams(HINTERNET,DWORD,LPVOID*);
566
+ BOOL WINAPI WinHttpQueryAuthSchemes(HINTERNET,LPDWORD,LPDWORD,LPDWORD);
567
+ BOOL WINAPI WinHttpQueryDataAvailable(HINTERNET,LPDWORD);
568
+ BOOL WINAPI WinHttpQueryHeaders(HINTERNET,DWORD,LPCWSTR,LPVOID,LPDWORD,LPDWORD);
569
+ BOOL WINAPI WinHttpQueryOption(HINTERNET,DWORD,LPVOID,LPDWORD);
570
+ BOOL WINAPI WinHttpReadData(HINTERNET,LPVOID,DWORD,LPDWORD);
571
+ BOOL WINAPI WinHttpReceiveResponse(HINTERNET,LPVOID);
572
+ BOOL WINAPI WinHttpSendRequest(HINTERNET,LPCWSTR,DWORD,LPVOID,DWORD,DWORD,DWORD_PTR);
573
+ BOOL WINAPI WinHttpSetDefaultProxyConfiguration(WINHTTP_PROXY_INFO*);
574
+ BOOL WINAPI WinHttpSetCredentials(HINTERNET,DWORD,DWORD,LPCWSTR,LPCWSTR,LPVOID);
575
+ BOOL WINAPI WinHttpSetOption(HINTERNET,DWORD,LPVOID,DWORD);
576
+ WINHTTP_STATUS_CALLBACK WINAPI WinHttpSetStatusCallback(HINTERNET,WINHTTP_STATUS_CALLBACK,DWORD,DWORD_PTR);
577
+ BOOL WINAPI WinHttpSetTimeouts(HINTERNET,int,int,int,int);
578
+ BOOL WINAPI WinHttpTimeFromSystemTime(const SYSTEMTIME *,LPWSTR);
579
+ BOOL WINAPI WinHttpTimeToSystemTime(LPCWSTR,SYSTEMTIME*);
580
+ BOOL WINAPI WinHttpWriteData(HINTERNET,LPCVOID,DWORD,LPDWORD);
581
+
582
+ #ifdef __cplusplus
583
+ }
584
+ #endif
585
+
586
+ #include <poppack.h>
587
+
588
+ #endif /* __WINE_WINHTTP_H */
589
+
590
+ #else
591
+
592
+ #include_next <winhttp.h>
593
+
594
+ #endif
@@ -0,0 +1,29 @@
1
+ LIBRARY WINHTTP
2
+ EXPORTS
3
+ WinHttpAddRequestHeaders
4
+ WinHttpCheckPlatform
5
+ WinHttpCloseHandle
6
+ WinHttpConnect
7
+ WinHttpCrackUrl
8
+ WinHttpCreateUrl
9
+ WinHttpDetectAutoProxyConfigUrl
10
+ WinHttpGetDefaultProxyConfiguration
11
+ WinHttpGetIEProxyConfigForCurrentUser
12
+ WinHttpGetProxyForUrl
13
+ WinHttpOpen
14
+ WinHttpOpenRequest
15
+ WinHttpQueryAuthSchemes
16
+ WinHttpQueryDataAvailable
17
+ WinHttpQueryHeaders
18
+ WinHttpQueryOption
19
+ WinHttpReadData
20
+ WinHttpReceiveResponse
21
+ WinHttpSendRequest
22
+ WinHttpSetCredentials
23
+ WinHttpSetDefaultProxyConfiguration
24
+ WinHttpSetOption
25
+ WinHttpSetStatusCallback
26
+ WinHttpSetTimeouts
27
+ WinHttpTimeFromSystemTime
28
+ WinHttpTimeToSystemTime
29
+ WinHttpWriteData
@@ -0,0 +1,5 @@
1
+ DISABLE_WARNINGS(implicit-fallthrough)
2
+ ADD_DEFINITIONS(-DNO_VIZ -DSTDC -DNO_GZIP)
3
+ FILE(GLOB SRC_ZLIB "*.c" "*.h")
4
+ INCLUDE_DIRECTORIES(".")
5
+ ADD_LIBRARY(zlib OBJECT ${SRC_ZLIB})
@@ -0,0 +1,27 @@
1
+ Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
2
+
3
+ This software is provided 'as-is', without any express or implied
4
+ warranty. In no event will the authors be held liable for any
5
+ damages arising from the use of this software.
6
+
7
+ Permission is granted to anyone to use this software for any
8
+ purpose, including commercial applications, and to alter it and
9
+ redistribute it freely, subject to the following restrictions:
10
+
11
+ 1. The origin of this software must not be misrepresented; you
12
+ must not claim that you wrote the original software. If you
13
+ use this software in a product, an acknowledgment in the
14
+ product documentation would be appreciated but is not
15
+ required.
16
+
17
+ 2. Altered source versions must be plainly marked as such, and
18
+ must not be misrepresented as being the original software.
19
+
20
+ 3. This notice may not be removed or altered from any source
21
+ distribution.
22
+
23
+ Jean-loup Gailly Mark Adler
24
+
25
+ The data format used by the zlib library is described by RFCs
26
+ (Request for Comments) 1950 to 1952 in the files rfc1950 (zlib
27
+ format), rfc1951 (deflate format) and rfc1952 (gzip format).