node-liblzma 1.0.4 → 1.1.4

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 (880) hide show
  1. package/History.md +5 -0
  2. package/README.md +65 -37
  3. package/binding.gyp +671 -43
  4. package/package.json +39 -24
  5. package/prebuilds/linux-x64/node_lzma.node +0 -0
  6. package/prebuilds/mac-x64/node_lzma.node +0 -0
  7. package/prebuilds/win-x64/node_lzma.node +0 -0
  8. package/scripts/download_extract_deps.py +29 -0
  9. package/scripts/prebuildify.py +13 -0
  10. package/scripts/walk_sources.py +7 -0
  11. package/src/bindings/module.cpp +86 -86
  12. package/src/bindings/node-liblzma.cpp +292 -273
  13. package/src/bindings/node-liblzma.hpp +62 -90
  14. package/src/lzma.coffee +25 -18
  15. package/.npmignore +0 -1
  16. package/.travis.yml +0 -35
  17. package/build/Makefile +0 -329
  18. package/build/Release/.deps/Release/node-liblzma.node.d +0 -1
  19. package/build/Release/.deps/Release/obj.target/action_after_build.stamp.d +0 -1
  20. package/build/Release/.deps/Release/obj.target/node-liblzma/src/bindings/module.o.d +0 -89
  21. package/build/Release/.deps/Release/obj.target/node-liblzma/src/bindings/node-liblzma.o.d +0 -89
  22. package/build/Release/.deps/Release/obj.target/node-liblzma.node.d +0 -1
  23. package/build/Release/.deps/home/o2/dev/node-liblzma/build/node-liblzma.node.d +0 -1
  24. package/build/Release/node-liblzma.node +0 -0
  25. package/build/Release/obj.target/action_after_build.stamp +0 -0
  26. package/build/Release/obj.target/node-liblzma/src/bindings/module.o +0 -0
  27. package/build/Release/obj.target/node-liblzma/src/bindings/node-liblzma.o +0 -0
  28. package/build/Release/obj.target/node-liblzma.node +0 -0
  29. package/build/action_after_build.target.mk +0 -32
  30. package/build/binding.Makefile +0 -6
  31. package/build/config.gypi +0 -143
  32. package/build/node-liblzma.node +0 -0
  33. package/build/node-liblzma.target.mk +0 -144
  34. package/build.yml +0 -65
  35. package/deps/xz/ABOUT-NLS +0 -1327
  36. package/deps/xz/AUTHORS +0 -27
  37. package/deps/xz/COPYING +0 -65
  38. package/deps/xz/COPYING.GPLv2 +0 -339
  39. package/deps/xz/COPYING.GPLv3 +0 -674
  40. package/deps/xz/COPYING.LGPLv2.1 +0 -502
  41. package/deps/xz/ChangeLog +0 -14953
  42. package/deps/xz/Doxyfile +0 -1234
  43. package/deps/xz/Doxyfile.in +0 -1234
  44. package/deps/xz/INSTALL +0 -554
  45. package/deps/xz/INSTALL.generic +0 -365
  46. package/deps/xz/Makefile +0 -1067
  47. package/deps/xz/Makefile.am +0 -109
  48. package/deps/xz/Makefile.in +0 -1067
  49. package/deps/xz/NEWS +0 -505
  50. package/deps/xz/PACKAGERS +0 -231
  51. package/deps/xz/README +0 -308
  52. package/deps/xz/THANKS +0 -116
  53. package/deps/xz/TODO +0 -111
  54. package/deps/xz/aclocal.m4 +0 -1225
  55. package/deps/xz/autogen.sh +0 -22
  56. package/deps/xz/autom4te.cache/output.0 +0 -21751
  57. package/deps/xz/autom4te.cache/output.1 +0 -21751
  58. package/deps/xz/autom4te.cache/requests +0 -415
  59. package/deps/xz/autom4te.cache/traces.0 +0 -6996
  60. package/deps/xz/autom4te.cache/traces.1 +0 -1783
  61. package/deps/xz/build-aux/compile +0 -347
  62. package/deps/xz/build-aux/config.guess +0 -1558
  63. package/deps/xz/build-aux/config.rpath +0 -672
  64. package/deps/xz/build-aux/config.sub +0 -1791
  65. package/deps/xz/build-aux/depcomp +0 -791
  66. package/deps/xz/build-aux/install-sh +0 -527
  67. package/deps/xz/build-aux/ltmain.sh +0 -9661
  68. package/deps/xz/build-aux/manconv.sh +0 -58
  69. package/deps/xz/build-aux/missing +0 -215
  70. package/deps/xz/build-aux/version.sh +0 -24
  71. package/deps/xz/config.h +0 -487
  72. package/deps/xz/config.h.in +0 -486
  73. package/deps/xz/config.h.in~ +0 -485
  74. package/deps/xz/config.log +0 -5446
  75. package/deps/xz/config.status +0 -2587
  76. package/deps/xz/configure +0 -21751
  77. package/deps/xz/configure.ac +0 -842
  78. package/deps/xz/debug/.deps/crc32.Po +0 -1
  79. package/deps/xz/debug/.deps/full_flush.Po +0 -1
  80. package/deps/xz/debug/.deps/hex2bin.Po +0 -1
  81. package/deps/xz/debug/.deps/known_sizes.Po +0 -1
  82. package/deps/xz/debug/.deps/memusage.Po +0 -1
  83. package/deps/xz/debug/.deps/repeat.Po +0 -1
  84. package/deps/xz/debug/.deps/sync_flush.Po +0 -1
  85. package/deps/xz/debug/Makefile +0 -691
  86. package/deps/xz/debug/Makefile.am +0 -30
  87. package/deps/xz/debug/Makefile.in +0 -691
  88. package/deps/xz/debug/README +0 -17
  89. package/deps/xz/debug/crc32.c +0 -39
  90. package/deps/xz/debug/full_flush.c +0 -103
  91. package/deps/xz/debug/hex2bin.c +0 -53
  92. package/deps/xz/debug/known_sizes.c +0 -129
  93. package/deps/xz/debug/memusage.c +0 -51
  94. package/deps/xz/debug/repeat.c +0 -36
  95. package/deps/xz/debug/sync_flush.c +0 -125
  96. package/deps/xz/debug/translation.bash +0 -100
  97. package/deps/xz/doc/examples/00_README.txt +0 -31
  98. package/deps/xz/doc/examples/01_compress_easy.c +0 -297
  99. package/deps/xz/doc/examples/02_decompress.c +0 -287
  100. package/deps/xz/doc/examples/03_compress_custom.c +0 -193
  101. package/deps/xz/doc/examples/04_compress_easy_mt.c +0 -206
  102. package/deps/xz/doc/examples/Makefile +0 -24
  103. package/deps/xz/doc/examples_old/xz_pipe_comp.c +0 -127
  104. package/deps/xz/doc/examples_old/xz_pipe_decomp.c +0 -123
  105. package/deps/xz/doc/faq.txt +0 -224
  106. package/deps/xz/doc/history.txt +0 -150
  107. package/deps/xz/doc/lzma-file-format.txt +0 -166
  108. package/deps/xz/doc/man/pdf-a4/lzmainfo-a4.pdf +0 -0
  109. package/deps/xz/doc/man/pdf-a4/xz-a4.pdf +0 -0
  110. package/deps/xz/doc/man/pdf-a4/xzdec-a4.pdf +0 -0
  111. package/deps/xz/doc/man/pdf-a4/xzdiff-a4.pdf +0 -0
  112. package/deps/xz/doc/man/pdf-a4/xzgrep-a4.pdf +0 -0
  113. package/deps/xz/doc/man/pdf-a4/xzless-a4.pdf +0 -0
  114. package/deps/xz/doc/man/pdf-a4/xzmore-a4.pdf +0 -0
  115. package/deps/xz/doc/man/pdf-letter/lzmainfo-letter.pdf +0 -0
  116. package/deps/xz/doc/man/pdf-letter/xz-letter.pdf +0 -0
  117. package/deps/xz/doc/man/pdf-letter/xzdec-letter.pdf +0 -0
  118. package/deps/xz/doc/man/pdf-letter/xzdiff-letter.pdf +0 -0
  119. package/deps/xz/doc/man/pdf-letter/xzgrep-letter.pdf +0 -0
  120. package/deps/xz/doc/man/pdf-letter/xzless-letter.pdf +0 -0
  121. package/deps/xz/doc/man/pdf-letter/xzmore-letter.pdf +0 -0
  122. package/deps/xz/doc/man/txt/lzmainfo.txt +0 -40
  123. package/deps/xz/doc/man/txt/xz.txt +0 -1483
  124. package/deps/xz/doc/man/txt/xzdec.txt +0 -80
  125. package/deps/xz/doc/man/txt/xzdiff.txt +0 -36
  126. package/deps/xz/doc/man/txt/xzgrep.txt +0 -39
  127. package/deps/xz/doc/man/txt/xzless.txt +0 -39
  128. package/deps/xz/doc/man/txt/xzmore.txt +0 -34
  129. package/deps/xz/doc/xz-file-format.txt +0 -1150
  130. package/deps/xz/dos/INSTALL.txt +0 -79
  131. package/deps/xz/dos/Makefile +0 -147
  132. package/deps/xz/dos/README.txt +0 -123
  133. package/deps/xz/dos/config.h +0 -130
  134. package/deps/xz/extra/7z2lzma/7z2lzma.bash +0 -115
  135. package/deps/xz/extra/scanlzma/scanlzma.c +0 -84
  136. package/deps/xz/include/lzma/base.h +0 -654
  137. package/deps/xz/include/lzma/bcj.h +0 -90
  138. package/deps/xz/include/lzma/block.h +0 -581
  139. package/deps/xz/include/lzma/check.h +0 -150
  140. package/deps/xz/include/lzma/container.h +0 -619
  141. package/deps/xz/include/lzma/delta.h +0 -77
  142. package/deps/xz/include/lzma/filter.h +0 -425
  143. package/deps/xz/include/lzma/hardware.h +0 -64
  144. package/deps/xz/include/lzma/index.h +0 -682
  145. package/deps/xz/include/lzma/index_hash.h +0 -107
  146. package/deps/xz/include/lzma/lzma12.h +0 -420
  147. package/deps/xz/include/lzma/stream_flags.h +0 -223
  148. package/deps/xz/include/lzma/version.h +0 -121
  149. package/deps/xz/include/lzma/vli.h +0 -166
  150. package/deps/xz/include/lzma.h +0 -321
  151. package/deps/xz/lib/.deps/getopt.Po +0 -1
  152. package/deps/xz/lib/.deps/getopt1.Po +0 -1
  153. package/deps/xz/lib/Makefile +0 -566
  154. package/deps/xz/lib/Makefile.am +0 -32
  155. package/deps/xz/lib/Makefile.in +0 -566
  156. package/deps/xz/lib/getopt.c +0 -1197
  157. package/deps/xz/lib/getopt.in.h +0 -226
  158. package/deps/xz/lib/getopt1.c +0 -171
  159. package/deps/xz/lib/getopt_int.h +0 -131
  160. package/deps/xz/lib/liblzma.a +0 -0
  161. package/deps/xz/lib/liblzma.la +0 -41
  162. package/deps/xz/lib/pkgconfig/liblzma.pc +0 -19
  163. package/deps/xz/libtool +0 -10221
  164. package/deps/xz/m4/ax_pthread.m4 +0 -332
  165. package/deps/xz/m4/codeset.m4 +0 -21
  166. package/deps/xz/m4/fcntl-o.m4 +0 -81
  167. package/deps/xz/m4/getopt.m4 +0 -71
  168. package/deps/xz/m4/gettext.m4 +0 -383
  169. package/deps/xz/m4/glibc2.m4 +0 -30
  170. package/deps/xz/m4/glibc21.m4 +0 -30
  171. package/deps/xz/m4/iconv.m4 +0 -199
  172. package/deps/xz/m4/intdiv0.m4 +0 -84
  173. package/deps/xz/m4/intl.m4 +0 -294
  174. package/deps/xz/m4/intldir.m4 +0 -19
  175. package/deps/xz/m4/intlmacosx.m4 +0 -51
  176. package/deps/xz/m4/intmax.m4 +0 -33
  177. package/deps/xz/m4/inttypes-pri.m4 +0 -36
  178. package/deps/xz/m4/inttypes_h.m4 +0 -26
  179. package/deps/xz/m4/lcmessage.m4 +0 -31
  180. package/deps/xz/m4/lib-ld.m4 +0 -110
  181. package/deps/xz/m4/lib-link.m4 +0 -774
  182. package/deps/xz/m4/lib-prefix.m4 +0 -224
  183. package/deps/xz/m4/libtool.m4 +0 -7997
  184. package/deps/xz/m4/lock.m4 +0 -37
  185. package/deps/xz/m4/longlong.m4 +0 -106
  186. package/deps/xz/m4/ltoptions.m4 +0 -384
  187. package/deps/xz/m4/ltsugar.m4 +0 -123
  188. package/deps/xz/m4/ltversion.m4 +0 -23
  189. package/deps/xz/m4/lt~obsolete.m4 +0 -98
  190. package/deps/xz/m4/nls.m4 +0 -32
  191. package/deps/xz/m4/po.m4 +0 -449
  192. package/deps/xz/m4/posix-shell.m4 +0 -63
  193. package/deps/xz/m4/printf-posix.m4 +0 -45
  194. package/deps/xz/m4/progtest.m4 +0 -92
  195. package/deps/xz/m4/size_max.m4 +0 -75
  196. package/deps/xz/m4/stdint_h.m4 +0 -26
  197. package/deps/xz/m4/threadlib.m4 +0 -347
  198. package/deps/xz/m4/tuklib_common.m4 +0 -22
  199. package/deps/xz/m4/tuklib_cpucores.m4 +0 -148
  200. package/deps/xz/m4/tuklib_integer.m4 +0 -74
  201. package/deps/xz/m4/tuklib_mbstr.m4 +0 -30
  202. package/deps/xz/m4/tuklib_physmem.m4 +0 -212
  203. package/deps/xz/m4/tuklib_progname.m4 +0 -25
  204. package/deps/xz/m4/uintmax_t.m4 +0 -30
  205. package/deps/xz/m4/visibility.m4 +0 -74
  206. package/deps/xz/m4/wchar_t.m4 +0 -20
  207. package/deps/xz/m4/wint_t.m4 +0 -28
  208. package/deps/xz/m4/xsize.m4 +0 -13
  209. package/deps/xz/macosx/build.sh +0 -113
  210. package/deps/xz/po/LINGUAS +0 -6
  211. package/deps/xz/po/Makefile +0 -549
  212. package/deps/xz/po/Makefile.in +0 -444
  213. package/deps/xz/po/Makefile.in.in +0 -444
  214. package/deps/xz/po/Makevars +0 -46
  215. package/deps/xz/po/Makevars.template +0 -41
  216. package/deps/xz/po/POTFILES +0 -12
  217. package/deps/xz/po/POTFILES.in +0 -13
  218. package/deps/xz/po/Rules-quot +0 -47
  219. package/deps/xz/po/boldquot.sed +0 -10
  220. package/deps/xz/po/cs.gmo +0 -0
  221. package/deps/xz/po/cs.po +0 -989
  222. package/deps/xz/po/de.gmo +0 -0
  223. package/deps/xz/po/de.po +0 -990
  224. package/deps/xz/po/en@boldquot.header +0 -25
  225. package/deps/xz/po/en@quot.header +0 -22
  226. package/deps/xz/po/fr.gmo +0 -0
  227. package/deps/xz/po/fr.po +0 -974
  228. package/deps/xz/po/insert-header.sin +0 -23
  229. package/deps/xz/po/it.gmo +0 -0
  230. package/deps/xz/po/it.po +0 -975
  231. package/deps/xz/po/pl.gmo +0 -0
  232. package/deps/xz/po/pl.po +0 -964
  233. package/deps/xz/po/quot.sed +0 -6
  234. package/deps/xz/po/remove-potcdate.sin +0 -19
  235. package/deps/xz/po/stamp-po +0 -1
  236. package/deps/xz/po/vi.gmo +0 -0
  237. package/deps/xz/po/vi.po +0 -970
  238. package/deps/xz/po/xz.pot +0 -854
  239. package/deps/xz/share/doc/xz/AUTHORS +0 -27
  240. package/deps/xz/share/doc/xz/COPYING +0 -65
  241. package/deps/xz/share/doc/xz/COPYING.GPLv2 +0 -339
  242. package/deps/xz/share/doc/xz/NEWS +0 -505
  243. package/deps/xz/share/doc/xz/README +0 -308
  244. package/deps/xz/share/doc/xz/THANKS +0 -116
  245. package/deps/xz/share/doc/xz/TODO +0 -111
  246. package/deps/xz/share/doc/xz/examples/00_README.txt +0 -31
  247. package/deps/xz/share/doc/xz/examples/01_compress_easy.c +0 -297
  248. package/deps/xz/share/doc/xz/examples/02_decompress.c +0 -287
  249. package/deps/xz/share/doc/xz/examples/03_compress_custom.c +0 -193
  250. package/deps/xz/share/doc/xz/examples/04_compress_easy_mt.c +0 -206
  251. package/deps/xz/share/doc/xz/examples/Makefile +0 -24
  252. package/deps/xz/share/doc/xz/examples_old/xz_pipe_comp.c +0 -127
  253. package/deps/xz/share/doc/xz/examples_old/xz_pipe_decomp.c +0 -123
  254. package/deps/xz/share/doc/xz/faq.txt +0 -224
  255. package/deps/xz/share/doc/xz/history.txt +0 -150
  256. package/deps/xz/share/doc/xz/lzma-file-format.txt +0 -166
  257. package/deps/xz/share/doc/xz/xz-file-format.txt +0 -1150
  258. package/deps/xz/share/locale/cs/LC_MESSAGES/xz.mo +0 -0
  259. package/deps/xz/share/locale/de/LC_MESSAGES/xz.mo +0 -0
  260. package/deps/xz/share/locale/fr/LC_MESSAGES/xz.mo +0 -0
  261. package/deps/xz/share/locale/it/LC_MESSAGES/xz.mo +0 -0
  262. package/deps/xz/share/locale/pl/LC_MESSAGES/xz.mo +0 -0
  263. package/deps/xz/share/locale/vi/LC_MESSAGES/xz.mo +0 -0
  264. package/deps/xz/src/Makefile +0 -674
  265. package/deps/xz/src/Makefile.am +0 -42
  266. package/deps/xz/src/Makefile.in +0 -674
  267. package/deps/xz/src/common/common_w32res.rc +0 -50
  268. package/deps/xz/src/common/mythread.h +0 -521
  269. package/deps/xz/src/common/sysdefs.h +0 -202
  270. package/deps/xz/src/common/tuklib_common.h +0 -71
  271. package/deps/xz/src/common/tuklib_config.h +0 -7
  272. package/deps/xz/src/common/tuklib_cpucores.c +0 -91
  273. package/deps/xz/src/common/tuklib_cpucores.h +0 -23
  274. package/deps/xz/src/common/tuklib_exit.c +0 -57
  275. package/deps/xz/src/common/tuklib_exit.h +0 -25
  276. package/deps/xz/src/common/tuklib_gettext.h +0 -44
  277. package/deps/xz/src/common/tuklib_integer.h +0 -523
  278. package/deps/xz/src/common/tuklib_mbstr.h +0 -66
  279. package/deps/xz/src/common/tuklib_mbstr_fw.c +0 -31
  280. package/deps/xz/src/common/tuklib_mbstr_width.c +0 -64
  281. package/deps/xz/src/common/tuklib_open_stdxxx.c +0 -57
  282. package/deps/xz/src/common/tuklib_open_stdxxx.h +0 -23
  283. package/deps/xz/src/common/tuklib_physmem.c +0 -215
  284. package/deps/xz/src/common/tuklib_physmem.h +0 -28
  285. package/deps/xz/src/common/tuklib_progname.c +0 -50
  286. package/deps/xz/src/common/tuklib_progname.h +0 -32
  287. package/deps/xz/src/liblzma/.deps/liblzma_la-alone_decoder.Plo +0 -269
  288. package/deps/xz/src/liblzma/.deps/liblzma_la-alone_encoder.Plo +0 -263
  289. package/deps/xz/src/liblzma/.deps/liblzma_la-arm.Plo +0 -263
  290. package/deps/xz/src/liblzma/.deps/liblzma_la-armthumb.Plo +0 -263
  291. package/deps/xz/src/liblzma/.deps/liblzma_la-auto_decoder.Plo +0 -263
  292. package/deps/xz/src/liblzma/.deps/liblzma_la-block_buffer_decoder.Plo +0 -261
  293. package/deps/xz/src/liblzma/.deps/liblzma_la-block_buffer_encoder.Plo +0 -273
  294. package/deps/xz/src/liblzma/.deps/liblzma_la-block_decoder.Plo +0 -268
  295. package/deps/xz/src/liblzma/.deps/liblzma_la-block_encoder.Plo +0 -268
  296. package/deps/xz/src/liblzma/.deps/liblzma_la-block_header_decoder.Plo +0 -263
  297. package/deps/xz/src/liblzma/.deps/liblzma_la-block_header_encoder.Plo +0 -263
  298. package/deps/xz/src/liblzma/.deps/liblzma_la-block_util.Plo +0 -260
  299. package/deps/xz/src/liblzma/.deps/liblzma_la-check.Plo +0 -261
  300. package/deps/xz/src/liblzma/.deps/liblzma_la-common.Plo +0 -258
  301. package/deps/xz/src/liblzma/.deps/liblzma_la-crc32_fast.Plo +0 -263
  302. package/deps/xz/src/liblzma/.deps/liblzma_la-crc32_small.Plo +0 -1
  303. package/deps/xz/src/liblzma/.deps/liblzma_la-crc32_table.Plo +0 -260
  304. package/deps/xz/src/liblzma/.deps/liblzma_la-crc32_x86.Plo +0 -1
  305. package/deps/xz/src/liblzma/.deps/liblzma_la-crc64_fast.Plo +0 -263
  306. package/deps/xz/src/liblzma/.deps/liblzma_la-crc64_small.Plo +0 -1
  307. package/deps/xz/src/liblzma/.deps/liblzma_la-crc64_table.Plo +0 -260
  308. package/deps/xz/src/liblzma/.deps/liblzma_la-crc64_x86.Plo +0 -1
  309. package/deps/xz/src/liblzma/.deps/liblzma_la-delta_common.Plo +0 -263
  310. package/deps/xz/src/liblzma/.deps/liblzma_la-delta_decoder.Plo +0 -265
  311. package/deps/xz/src/liblzma/.deps/liblzma_la-delta_encoder.Plo +0 -265
  312. package/deps/xz/src/liblzma/.deps/liblzma_la-easy_buffer_encoder.Plo +0 -261
  313. package/deps/xz/src/liblzma/.deps/liblzma_la-easy_decoder_memusage.Plo +0 -261
  314. package/deps/xz/src/liblzma/.deps/liblzma_la-easy_encoder.Plo +0 -261
  315. package/deps/xz/src/liblzma/.deps/liblzma_la-easy_encoder_memusage.Plo +0 -261
  316. package/deps/xz/src/liblzma/.deps/liblzma_la-easy_preset.Plo +0 -261
  317. package/deps/xz/src/liblzma/.deps/liblzma_la-fastpos_table.Plo +0 -261
  318. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_buffer_decoder.Plo +0 -261
  319. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_buffer_encoder.Plo +0 -261
  320. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_common.Plo +0 -261
  321. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_decoder.Plo +0 -283
  322. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_encoder.Plo +0 -283
  323. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_flags_decoder.Plo +0 -261
  324. package/deps/xz/src/liblzma/.deps/liblzma_la-filter_flags_encoder.Plo +0 -261
  325. package/deps/xz/src/liblzma/.deps/liblzma_la-hardware_cputhreads.Plo +0 -260
  326. package/deps/xz/src/liblzma/.deps/liblzma_la-hardware_physmem.Plo +0 -260
  327. package/deps/xz/src/liblzma/.deps/liblzma_la-ia64.Plo +0 -263
  328. package/deps/xz/src/liblzma/.deps/liblzma_la-index.Plo +0 -262
  329. package/deps/xz/src/liblzma/.deps/liblzma_la-index_decoder.Plo +0 -266
  330. package/deps/xz/src/liblzma/.deps/liblzma_la-index_encoder.Plo +0 -268
  331. package/deps/xz/src/liblzma/.deps/liblzma_la-index_hash.Plo +0 -265
  332. package/deps/xz/src/liblzma/.deps/liblzma_la-lz_decoder.Plo +0 -261
  333. package/deps/xz/src/liblzma/.deps/liblzma_la-lz_encoder.Plo +0 -286
  334. package/deps/xz/src/liblzma/.deps/liblzma_la-lz_encoder_mf.Plo +0 -286
  335. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma2_decoder.Plo +0 -266
  336. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma2_encoder.Plo +0 -268
  337. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma_decoder.Plo +0 -274
  338. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma_encoder.Plo +0 -285
  339. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma_encoder_optimum_fast.Plo +0 -300
  340. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma_encoder_optimum_normal.Plo +0 -303
  341. package/deps/xz/src/liblzma/.deps/liblzma_la-lzma_encoder_presets.Plo +0 -259
  342. package/deps/xz/src/liblzma/.deps/liblzma_la-outqueue.Plo +0 -260
  343. package/deps/xz/src/liblzma/.deps/liblzma_la-powerpc.Plo +0 -263
  344. package/deps/xz/src/liblzma/.deps/liblzma_la-price_table.Plo +0 -266
  345. package/deps/xz/src/liblzma/.deps/liblzma_la-sha256.Plo +0 -261
  346. package/deps/xz/src/liblzma/.deps/liblzma_la-simple_coder.Plo +0 -263
  347. package/deps/xz/src/liblzma/.deps/liblzma_la-simple_decoder.Plo +0 -263
  348. package/deps/xz/src/liblzma/.deps/liblzma_la-simple_encoder.Plo +0 -263
  349. package/deps/xz/src/liblzma/.deps/liblzma_la-sparc.Plo +0 -263
  350. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_buffer_decoder.Plo +0 -261
  351. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_buffer_encoder.Plo +0 -261
  352. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_decoder.Plo +0 -263
  353. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_encoder.Plo +0 -263
  354. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_encoder_mt.Plo +0 -273
  355. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_flags_common.Plo +0 -261
  356. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_flags_decoder.Plo +0 -261
  357. package/deps/xz/src/liblzma/.deps/liblzma_la-stream_flags_encoder.Plo +0 -261
  358. package/deps/xz/src/liblzma/.deps/liblzma_la-tuklib_cpucores.Plo +0 -170
  359. package/deps/xz/src/liblzma/.deps/liblzma_la-tuklib_physmem.Plo +0 -170
  360. package/deps/xz/src/liblzma/.deps/liblzma_la-vli_decoder.Plo +0 -258
  361. package/deps/xz/src/liblzma/.deps/liblzma_la-vli_encoder.Plo +0 -258
  362. package/deps/xz/src/liblzma/.deps/liblzma_la-vli_size.Plo +0 -258
  363. package/deps/xz/src/liblzma/.deps/liblzma_la-x86.Plo +0 -263
  364. package/deps/xz/src/liblzma/.libs/liblzma.a +0 -0
  365. package/deps/xz/src/liblzma/.libs/liblzma.lai +0 -41
  366. package/deps/xz/src/liblzma/Makefile +0 -1858
  367. package/deps/xz/src/liblzma/Makefile.am +0 -122
  368. package/deps/xz/src/liblzma/Makefile.in +0 -1858
  369. package/deps/xz/src/liblzma/api/Makefile +0 -608
  370. package/deps/xz/src/liblzma/api/Makefile.am +0 -23
  371. package/deps/xz/src/liblzma/api/Makefile.in +0 -608
  372. package/deps/xz/src/liblzma/api/lzma/base.h +0 -654
  373. package/deps/xz/src/liblzma/api/lzma/bcj.h +0 -90
  374. package/deps/xz/src/liblzma/api/lzma/block.h +0 -581
  375. package/deps/xz/src/liblzma/api/lzma/check.h +0 -150
  376. package/deps/xz/src/liblzma/api/lzma/container.h +0 -619
  377. package/deps/xz/src/liblzma/api/lzma/delta.h +0 -77
  378. package/deps/xz/src/liblzma/api/lzma/filter.h +0 -425
  379. package/deps/xz/src/liblzma/api/lzma/hardware.h +0 -64
  380. package/deps/xz/src/liblzma/api/lzma/index.h +0 -682
  381. package/deps/xz/src/liblzma/api/lzma/index_hash.h +0 -107
  382. package/deps/xz/src/liblzma/api/lzma/lzma12.h +0 -420
  383. package/deps/xz/src/liblzma/api/lzma/stream_flags.h +0 -223
  384. package/deps/xz/src/liblzma/api/lzma/version.h +0 -121
  385. package/deps/xz/src/liblzma/api/lzma/vli.h +0 -166
  386. package/deps/xz/src/liblzma/api/lzma.h +0 -321
  387. package/deps/xz/src/liblzma/check/Makefile.inc +0 -53
  388. package/deps/xz/src/liblzma/check/check.c +0 -174
  389. package/deps/xz/src/liblzma/check/check.h +0 -162
  390. package/deps/xz/src/liblzma/check/crc32_fast.c +0 -82
  391. package/deps/xz/src/liblzma/check/crc32_small.c +0 -61
  392. package/deps/xz/src/liblzma/check/crc32_table.c +0 -19
  393. package/deps/xz/src/liblzma/check/crc32_table_be.h +0 -525
  394. package/deps/xz/src/liblzma/check/crc32_table_le.h +0 -525
  395. package/deps/xz/src/liblzma/check/crc32_tablegen.c +0 -117
  396. package/deps/xz/src/liblzma/check/crc32_x86.S +0 -304
  397. package/deps/xz/src/liblzma/check/crc64_fast.c +0 -72
  398. package/deps/xz/src/liblzma/check/crc64_small.c +0 -53
  399. package/deps/xz/src/liblzma/check/crc64_table.c +0 -19
  400. package/deps/xz/src/liblzma/check/crc64_table_be.h +0 -521
  401. package/deps/xz/src/liblzma/check/crc64_table_le.h +0 -521
  402. package/deps/xz/src/liblzma/check/crc64_tablegen.c +0 -88
  403. package/deps/xz/src/liblzma/check/crc64_x86.S +0 -287
  404. package/deps/xz/src/liblzma/check/crc_macros.h +0 -30
  405. package/deps/xz/src/liblzma/check/sha256.c +0 -196
  406. package/deps/xz/src/liblzma/common/Makefile.inc +0 -76
  407. package/deps/xz/src/liblzma/common/alone_decoder.c +0 -238
  408. package/deps/xz/src/liblzma/common/alone_decoder.h +0 -23
  409. package/deps/xz/src/liblzma/common/alone_encoder.c +0 -157
  410. package/deps/xz/src/liblzma/common/auto_decoder.c +0 -186
  411. package/deps/xz/src/liblzma/common/block_buffer_decoder.c +0 -80
  412. package/deps/xz/src/liblzma/common/block_buffer_encoder.c +0 -337
  413. package/deps/xz/src/liblzma/common/block_buffer_encoder.h +0 -24
  414. package/deps/xz/src/liblzma/common/block_decoder.c +0 -252
  415. package/deps/xz/src/liblzma/common/block_decoder.h +0 -22
  416. package/deps/xz/src/liblzma/common/block_encoder.c +0 -217
  417. package/deps/xz/src/liblzma/common/block_encoder.h +0 -47
  418. package/deps/xz/src/liblzma/common/block_header_decoder.c +0 -124
  419. package/deps/xz/src/liblzma/common/block_header_encoder.c +0 -132
  420. package/deps/xz/src/liblzma/common/block_util.c +0 -90
  421. package/deps/xz/src/liblzma/common/common.c +0 -443
  422. package/deps/xz/src/liblzma/common/common.h +0 -318
  423. package/deps/xz/src/liblzma/common/easy_buffer_encoder.c +0 -27
  424. package/deps/xz/src/liblzma/common/easy_decoder_memusage.c +0 -24
  425. package/deps/xz/src/liblzma/common/easy_encoder.c +0 -24
  426. package/deps/xz/src/liblzma/common/easy_encoder_memusage.c +0 -24
  427. package/deps/xz/src/liblzma/common/easy_preset.c +0 -27
  428. package/deps/xz/src/liblzma/common/easy_preset.h +0 -32
  429. package/deps/xz/src/liblzma/common/filter_buffer_decoder.c +0 -88
  430. package/deps/xz/src/liblzma/common/filter_buffer_encoder.c +0 -55
  431. package/deps/xz/src/liblzma/common/filter_common.c +0 -337
  432. package/deps/xz/src/liblzma/common/filter_common.h +0 -48
  433. package/deps/xz/src/liblzma/common/filter_decoder.c +0 -184
  434. package/deps/xz/src/liblzma/common/filter_decoder.h +0 -23
  435. package/deps/xz/src/liblzma/common/filter_encoder.c +0 -286
  436. package/deps/xz/src/liblzma/common/filter_encoder.h +0 -27
  437. package/deps/xz/src/liblzma/common/filter_flags_decoder.c +0 -46
  438. package/deps/xz/src/liblzma/common/filter_flags_encoder.c +0 -56
  439. package/deps/xz/src/liblzma/common/hardware_cputhreads.c +0 -22
  440. package/deps/xz/src/liblzma/common/hardware_physmem.c +0 -25
  441. package/deps/xz/src/liblzma/common/index.c +0 -1246
  442. package/deps/xz/src/liblzma/common/index.h +0 -73
  443. package/deps/xz/src/liblzma/common/index_decoder.c +0 -345
  444. package/deps/xz/src/liblzma/common/index_encoder.c +0 -254
  445. package/deps/xz/src/liblzma/common/index_encoder.h +0 -23
  446. package/deps/xz/src/liblzma/common/index_hash.c +0 -334
  447. package/deps/xz/src/liblzma/common/memcmplen.h +0 -175
  448. package/deps/xz/src/liblzma/common/outqueue.c +0 -184
  449. package/deps/xz/src/liblzma/common/outqueue.h +0 -156
  450. package/deps/xz/src/liblzma/common/stream_buffer_decoder.c +0 -91
  451. package/deps/xz/src/liblzma/common/stream_buffer_encoder.c +0 -141
  452. package/deps/xz/src/liblzma/common/stream_decoder.c +0 -462
  453. package/deps/xz/src/liblzma/common/stream_decoder.h +0 -22
  454. package/deps/xz/src/liblzma/common/stream_encoder.c +0 -332
  455. package/deps/xz/src/liblzma/common/stream_encoder_mt.c +0 -1131
  456. package/deps/xz/src/liblzma/common/stream_flags_common.c +0 -47
  457. package/deps/xz/src/liblzma/common/stream_flags_common.h +0 -33
  458. package/deps/xz/src/liblzma/common/stream_flags_decoder.c +0 -82
  459. package/deps/xz/src/liblzma/common/stream_flags_encoder.c +0 -86
  460. package/deps/xz/src/liblzma/common/vli_decoder.c +0 -86
  461. package/deps/xz/src/liblzma/common/vli_encoder.c +0 -69
  462. package/deps/xz/src/liblzma/common/vli_size.c +0 -30
  463. package/deps/xz/src/liblzma/delta/Makefile.inc +0 -23
  464. package/deps/xz/src/liblzma/delta/delta_common.c +0 -70
  465. package/deps/xz/src/liblzma/delta/delta_common.h +0 -20
  466. package/deps/xz/src/liblzma/delta/delta_decoder.c +0 -76
  467. package/deps/xz/src/liblzma/delta/delta_decoder.h +0 -26
  468. package/deps/xz/src/liblzma/delta/delta_encoder.c +0 -121
  469. package/deps/xz/src/liblzma/delta/delta_encoder.h +0 -24
  470. package/deps/xz/src/liblzma/delta/delta_private.h +0 -37
  471. package/deps/xz/src/liblzma/liblzma.la +0 -41
  472. package/deps/xz/src/liblzma/liblzma.map +0 -108
  473. package/deps/xz/src/liblzma/liblzma.pc +0 -19
  474. package/deps/xz/src/liblzma/liblzma.pc.in +0 -19
  475. package/deps/xz/src/liblzma/liblzma_la-alone_decoder.lo +0 -12
  476. package/deps/xz/src/liblzma/liblzma_la-alone_decoder.o +0 -0
  477. package/deps/xz/src/liblzma/liblzma_la-alone_encoder.lo +0 -12
  478. package/deps/xz/src/liblzma/liblzma_la-alone_encoder.o +0 -0
  479. package/deps/xz/src/liblzma/liblzma_la-arm.lo +0 -12
  480. package/deps/xz/src/liblzma/liblzma_la-arm.o +0 -0
  481. package/deps/xz/src/liblzma/liblzma_la-armthumb.lo +0 -12
  482. package/deps/xz/src/liblzma/liblzma_la-armthumb.o +0 -0
  483. package/deps/xz/src/liblzma/liblzma_la-auto_decoder.lo +0 -12
  484. package/deps/xz/src/liblzma/liblzma_la-auto_decoder.o +0 -0
  485. package/deps/xz/src/liblzma/liblzma_la-block_buffer_decoder.lo +0 -12
  486. package/deps/xz/src/liblzma/liblzma_la-block_buffer_decoder.o +0 -0
  487. package/deps/xz/src/liblzma/liblzma_la-block_buffer_encoder.lo +0 -12
  488. package/deps/xz/src/liblzma/liblzma_la-block_buffer_encoder.o +0 -0
  489. package/deps/xz/src/liblzma/liblzma_la-block_decoder.lo +0 -12
  490. package/deps/xz/src/liblzma/liblzma_la-block_decoder.o +0 -0
  491. package/deps/xz/src/liblzma/liblzma_la-block_encoder.lo +0 -12
  492. package/deps/xz/src/liblzma/liblzma_la-block_encoder.o +0 -0
  493. package/deps/xz/src/liblzma/liblzma_la-block_header_decoder.lo +0 -12
  494. package/deps/xz/src/liblzma/liblzma_la-block_header_decoder.o +0 -0
  495. package/deps/xz/src/liblzma/liblzma_la-block_header_encoder.lo +0 -12
  496. package/deps/xz/src/liblzma/liblzma_la-block_header_encoder.o +0 -0
  497. package/deps/xz/src/liblzma/liblzma_la-block_util.lo +0 -12
  498. package/deps/xz/src/liblzma/liblzma_la-block_util.o +0 -0
  499. package/deps/xz/src/liblzma/liblzma_la-check.lo +0 -12
  500. package/deps/xz/src/liblzma/liblzma_la-check.o +0 -0
  501. package/deps/xz/src/liblzma/liblzma_la-common.lo +0 -12
  502. package/deps/xz/src/liblzma/liblzma_la-common.o +0 -0
  503. package/deps/xz/src/liblzma/liblzma_la-crc32_fast.lo +0 -12
  504. package/deps/xz/src/liblzma/liblzma_la-crc32_fast.o +0 -0
  505. package/deps/xz/src/liblzma/liblzma_la-crc32_table.lo +0 -12
  506. package/deps/xz/src/liblzma/liblzma_la-crc32_table.o +0 -0
  507. package/deps/xz/src/liblzma/liblzma_la-crc64_fast.lo +0 -12
  508. package/deps/xz/src/liblzma/liblzma_la-crc64_fast.o +0 -0
  509. package/deps/xz/src/liblzma/liblzma_la-crc64_table.lo +0 -12
  510. package/deps/xz/src/liblzma/liblzma_la-crc64_table.o +0 -0
  511. package/deps/xz/src/liblzma/liblzma_la-delta_common.lo +0 -12
  512. package/deps/xz/src/liblzma/liblzma_la-delta_common.o +0 -0
  513. package/deps/xz/src/liblzma/liblzma_la-delta_decoder.lo +0 -12
  514. package/deps/xz/src/liblzma/liblzma_la-delta_decoder.o +0 -0
  515. package/deps/xz/src/liblzma/liblzma_la-delta_encoder.lo +0 -12
  516. package/deps/xz/src/liblzma/liblzma_la-delta_encoder.o +0 -0
  517. package/deps/xz/src/liblzma/liblzma_la-easy_buffer_encoder.lo +0 -12
  518. package/deps/xz/src/liblzma/liblzma_la-easy_buffer_encoder.o +0 -0
  519. package/deps/xz/src/liblzma/liblzma_la-easy_decoder_memusage.lo +0 -12
  520. package/deps/xz/src/liblzma/liblzma_la-easy_decoder_memusage.o +0 -0
  521. package/deps/xz/src/liblzma/liblzma_la-easy_encoder.lo +0 -12
  522. package/deps/xz/src/liblzma/liblzma_la-easy_encoder.o +0 -0
  523. package/deps/xz/src/liblzma/liblzma_la-easy_encoder_memusage.lo +0 -12
  524. package/deps/xz/src/liblzma/liblzma_la-easy_encoder_memusage.o +0 -0
  525. package/deps/xz/src/liblzma/liblzma_la-easy_preset.lo +0 -12
  526. package/deps/xz/src/liblzma/liblzma_la-easy_preset.o +0 -0
  527. package/deps/xz/src/liblzma/liblzma_la-fastpos_table.lo +0 -12
  528. package/deps/xz/src/liblzma/liblzma_la-fastpos_table.o +0 -0
  529. package/deps/xz/src/liblzma/liblzma_la-filter_buffer_decoder.lo +0 -12
  530. package/deps/xz/src/liblzma/liblzma_la-filter_buffer_decoder.o +0 -0
  531. package/deps/xz/src/liblzma/liblzma_la-filter_buffer_encoder.lo +0 -12
  532. package/deps/xz/src/liblzma/liblzma_la-filter_buffer_encoder.o +0 -0
  533. package/deps/xz/src/liblzma/liblzma_la-filter_common.lo +0 -12
  534. package/deps/xz/src/liblzma/liblzma_la-filter_common.o +0 -0
  535. package/deps/xz/src/liblzma/liblzma_la-filter_decoder.lo +0 -12
  536. package/deps/xz/src/liblzma/liblzma_la-filter_decoder.o +0 -0
  537. package/deps/xz/src/liblzma/liblzma_la-filter_encoder.lo +0 -12
  538. package/deps/xz/src/liblzma/liblzma_la-filter_encoder.o +0 -0
  539. package/deps/xz/src/liblzma/liblzma_la-filter_flags_decoder.lo +0 -12
  540. package/deps/xz/src/liblzma/liblzma_la-filter_flags_decoder.o +0 -0
  541. package/deps/xz/src/liblzma/liblzma_la-filter_flags_encoder.lo +0 -12
  542. package/deps/xz/src/liblzma/liblzma_la-filter_flags_encoder.o +0 -0
  543. package/deps/xz/src/liblzma/liblzma_la-hardware_cputhreads.lo +0 -12
  544. package/deps/xz/src/liblzma/liblzma_la-hardware_cputhreads.o +0 -0
  545. package/deps/xz/src/liblzma/liblzma_la-hardware_physmem.lo +0 -12
  546. package/deps/xz/src/liblzma/liblzma_la-hardware_physmem.o +0 -0
  547. package/deps/xz/src/liblzma/liblzma_la-ia64.lo +0 -12
  548. package/deps/xz/src/liblzma/liblzma_la-ia64.o +0 -0
  549. package/deps/xz/src/liblzma/liblzma_la-index.lo +0 -12
  550. package/deps/xz/src/liblzma/liblzma_la-index.o +0 -0
  551. package/deps/xz/src/liblzma/liblzma_la-index_decoder.lo +0 -12
  552. package/deps/xz/src/liblzma/liblzma_la-index_decoder.o +0 -0
  553. package/deps/xz/src/liblzma/liblzma_la-index_encoder.lo +0 -12
  554. package/deps/xz/src/liblzma/liblzma_la-index_encoder.o +0 -0
  555. package/deps/xz/src/liblzma/liblzma_la-index_hash.lo +0 -12
  556. package/deps/xz/src/liblzma/liblzma_la-index_hash.o +0 -0
  557. package/deps/xz/src/liblzma/liblzma_la-lz_decoder.lo +0 -12
  558. package/deps/xz/src/liblzma/liblzma_la-lz_decoder.o +0 -0
  559. package/deps/xz/src/liblzma/liblzma_la-lz_encoder.lo +0 -12
  560. package/deps/xz/src/liblzma/liblzma_la-lz_encoder.o +0 -0
  561. package/deps/xz/src/liblzma/liblzma_la-lz_encoder_mf.lo +0 -12
  562. package/deps/xz/src/liblzma/liblzma_la-lz_encoder_mf.o +0 -0
  563. package/deps/xz/src/liblzma/liblzma_la-lzma2_decoder.lo +0 -12
  564. package/deps/xz/src/liblzma/liblzma_la-lzma2_decoder.o +0 -0
  565. package/deps/xz/src/liblzma/liblzma_la-lzma2_encoder.lo +0 -12
  566. package/deps/xz/src/liblzma/liblzma_la-lzma2_encoder.o +0 -0
  567. package/deps/xz/src/liblzma/liblzma_la-lzma_decoder.lo +0 -12
  568. package/deps/xz/src/liblzma/liblzma_la-lzma_decoder.o +0 -0
  569. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder.lo +0 -12
  570. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder.o +0 -0
  571. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_optimum_fast.lo +0 -12
  572. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_optimum_fast.o +0 -0
  573. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_optimum_normal.lo +0 -12
  574. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_optimum_normal.o +0 -0
  575. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_presets.lo +0 -12
  576. package/deps/xz/src/liblzma/liblzma_la-lzma_encoder_presets.o +0 -0
  577. package/deps/xz/src/liblzma/liblzma_la-outqueue.lo +0 -12
  578. package/deps/xz/src/liblzma/liblzma_la-outqueue.o +0 -0
  579. package/deps/xz/src/liblzma/liblzma_la-powerpc.lo +0 -12
  580. package/deps/xz/src/liblzma/liblzma_la-powerpc.o +0 -0
  581. package/deps/xz/src/liblzma/liblzma_la-price_table.lo +0 -12
  582. package/deps/xz/src/liblzma/liblzma_la-price_table.o +0 -0
  583. package/deps/xz/src/liblzma/liblzma_la-sha256.lo +0 -12
  584. package/deps/xz/src/liblzma/liblzma_la-sha256.o +0 -0
  585. package/deps/xz/src/liblzma/liblzma_la-simple_coder.lo +0 -12
  586. package/deps/xz/src/liblzma/liblzma_la-simple_coder.o +0 -0
  587. package/deps/xz/src/liblzma/liblzma_la-simple_decoder.lo +0 -12
  588. package/deps/xz/src/liblzma/liblzma_la-simple_decoder.o +0 -0
  589. package/deps/xz/src/liblzma/liblzma_la-simple_encoder.lo +0 -12
  590. package/deps/xz/src/liblzma/liblzma_la-simple_encoder.o +0 -0
  591. package/deps/xz/src/liblzma/liblzma_la-sparc.lo +0 -12
  592. package/deps/xz/src/liblzma/liblzma_la-sparc.o +0 -0
  593. package/deps/xz/src/liblzma/liblzma_la-stream_buffer_decoder.lo +0 -12
  594. package/deps/xz/src/liblzma/liblzma_la-stream_buffer_decoder.o +0 -0
  595. package/deps/xz/src/liblzma/liblzma_la-stream_buffer_encoder.lo +0 -12
  596. package/deps/xz/src/liblzma/liblzma_la-stream_buffer_encoder.o +0 -0
  597. package/deps/xz/src/liblzma/liblzma_la-stream_decoder.lo +0 -12
  598. package/deps/xz/src/liblzma/liblzma_la-stream_decoder.o +0 -0
  599. package/deps/xz/src/liblzma/liblzma_la-stream_encoder.lo +0 -12
  600. package/deps/xz/src/liblzma/liblzma_la-stream_encoder.o +0 -0
  601. package/deps/xz/src/liblzma/liblzma_la-stream_encoder_mt.lo +0 -12
  602. package/deps/xz/src/liblzma/liblzma_la-stream_encoder_mt.o +0 -0
  603. package/deps/xz/src/liblzma/liblzma_la-stream_flags_common.lo +0 -12
  604. package/deps/xz/src/liblzma/liblzma_la-stream_flags_common.o +0 -0
  605. package/deps/xz/src/liblzma/liblzma_la-stream_flags_decoder.lo +0 -12
  606. package/deps/xz/src/liblzma/liblzma_la-stream_flags_decoder.o +0 -0
  607. package/deps/xz/src/liblzma/liblzma_la-stream_flags_encoder.lo +0 -12
  608. package/deps/xz/src/liblzma/liblzma_la-stream_flags_encoder.o +0 -0
  609. package/deps/xz/src/liblzma/liblzma_la-tuklib_cpucores.lo +0 -12
  610. package/deps/xz/src/liblzma/liblzma_la-tuklib_cpucores.o +0 -0
  611. package/deps/xz/src/liblzma/liblzma_la-tuklib_physmem.lo +0 -12
  612. package/deps/xz/src/liblzma/liblzma_la-tuklib_physmem.o +0 -0
  613. package/deps/xz/src/liblzma/liblzma_la-vli_decoder.lo +0 -12
  614. package/deps/xz/src/liblzma/liblzma_la-vli_decoder.o +0 -0
  615. package/deps/xz/src/liblzma/liblzma_la-vli_encoder.lo +0 -12
  616. package/deps/xz/src/liblzma/liblzma_la-vli_encoder.o +0 -0
  617. package/deps/xz/src/liblzma/liblzma_la-vli_size.lo +0 -12
  618. package/deps/xz/src/liblzma/liblzma_la-vli_size.o +0 -0
  619. package/deps/xz/src/liblzma/liblzma_la-x86.lo +0 -12
  620. package/deps/xz/src/liblzma/liblzma_la-x86.o +0 -0
  621. package/deps/xz/src/liblzma/liblzma_w32res.rc +0 -12
  622. package/deps/xz/src/liblzma/lz/Makefile.inc +0 -22
  623. package/deps/xz/src/liblzma/lz/lz_decoder.c +0 -300
  624. package/deps/xz/src/liblzma/lz/lz_decoder.h +0 -235
  625. package/deps/xz/src/liblzma/lz/lz_encoder.c +0 -605
  626. package/deps/xz/src/liblzma/lz/lz_encoder.h +0 -328
  627. package/deps/xz/src/liblzma/lz/lz_encoder_hash.h +0 -108
  628. package/deps/xz/src/liblzma/lz/lz_encoder_hash_table.h +0 -68
  629. package/deps/xz/src/liblzma/lz/lz_encoder_mf.c +0 -744
  630. package/deps/xz/src/liblzma/lzma/Makefile.inc +0 -43
  631. package/deps/xz/src/liblzma/lzma/fastpos.h +0 -141
  632. package/deps/xz/src/liblzma/lzma/fastpos_table.c +0 -519
  633. package/deps/xz/src/liblzma/lzma/fastpos_tablegen.c +0 -56
  634. package/deps/xz/src/liblzma/lzma/lzma2_decoder.c +0 -304
  635. package/deps/xz/src/liblzma/lzma/lzma2_decoder.h +0 -29
  636. package/deps/xz/src/liblzma/lzma/lzma2_encoder.c +0 -403
  637. package/deps/xz/src/liblzma/lzma/lzma2_encoder.h +0 -43
  638. package/deps/xz/src/liblzma/lzma/lzma_common.h +0 -224
  639. package/deps/xz/src/liblzma/lzma/lzma_decoder.c +0 -1061
  640. package/deps/xz/src/liblzma/lzma/lzma_decoder.h +0 -53
  641. package/deps/xz/src/liblzma/lzma/lzma_encoder.c +0 -676
  642. package/deps/xz/src/liblzma/lzma/lzma_encoder.h +0 -55
  643. package/deps/xz/src/liblzma/lzma/lzma_encoder_optimum_fast.c +0 -169
  644. package/deps/xz/src/liblzma/lzma/lzma_encoder_optimum_normal.c +0 -854
  645. package/deps/xz/src/liblzma/lzma/lzma_encoder_presets.c +0 -63
  646. package/deps/xz/src/liblzma/lzma/lzma_encoder_private.h +0 -148
  647. package/deps/xz/src/liblzma/rangecoder/Makefile.inc +0 -21
  648. package/deps/xz/src/liblzma/rangecoder/price.h +0 -92
  649. package/deps/xz/src/liblzma/rangecoder/price_table.c +0 -22
  650. package/deps/xz/src/liblzma/rangecoder/price_tablegen.c +0 -87
  651. package/deps/xz/src/liblzma/rangecoder/range_common.h +0 -73
  652. package/deps/xz/src/liblzma/rangecoder/range_decoder.h +0 -185
  653. package/deps/xz/src/liblzma/rangecoder/range_encoder.h +0 -231
  654. package/deps/xz/src/liblzma/simple/Makefile.inc +0 -47
  655. package/deps/xz/src/liblzma/simple/arm.c +0 -71
  656. package/deps/xz/src/liblzma/simple/armthumb.c +0 -76
  657. package/deps/xz/src/liblzma/simple/ia64.c +0 -112
  658. package/deps/xz/src/liblzma/simple/powerpc.c +0 -75
  659. package/deps/xz/src/liblzma/simple/simple_coder.c +0 -277
  660. package/deps/xz/src/liblzma/simple/simple_coder.h +0 -72
  661. package/deps/xz/src/liblzma/simple/simple_decoder.c +0 -40
  662. package/deps/xz/src/liblzma/simple/simple_decoder.h +0 -22
  663. package/deps/xz/src/liblzma/simple/simple_encoder.c +0 -38
  664. package/deps/xz/src/liblzma/simple/simple_encoder.h +0 -23
  665. package/deps/xz/src/liblzma/simple/simple_private.h +0 -76
  666. package/deps/xz/src/liblzma/simple/sparc.c +0 -83
  667. package/deps/xz/src/liblzma/simple/x86.c +0 -156
  668. package/deps/xz/src/liblzma/validate_map.sh +0 -68
  669. package/deps/xz/src/lzmainfo/.deps/lzmainfo-lzmainfo.Po +0 -1
  670. package/deps/xz/src/lzmainfo/.deps/lzmainfo-tuklib_exit.Po +0 -1
  671. package/deps/xz/src/lzmainfo/.deps/lzmainfo-tuklib_progname.Po +0 -1
  672. package/deps/xz/src/lzmainfo/Makefile +0 -802
  673. package/deps/xz/src/lzmainfo/Makefile.am +0 -39
  674. package/deps/xz/src/lzmainfo/Makefile.in +0 -802
  675. package/deps/xz/src/lzmainfo/lzmainfo.1 +0 -60
  676. package/deps/xz/src/lzmainfo/lzmainfo.c +0 -219
  677. package/deps/xz/src/lzmainfo/lzmainfo_w32res.rc +0 -12
  678. package/deps/xz/src/scripts/Makefile +0 -642
  679. package/deps/xz/src/scripts/Makefile.am +0 -55
  680. package/deps/xz/src/scripts/Makefile.in +0 -642
  681. package/deps/xz/src/scripts/xzdiff +0 -200
  682. package/deps/xz/src/scripts/xzdiff.1 +0 -77
  683. package/deps/xz/src/scripts/xzdiff.in +0 -200
  684. package/deps/xz/src/scripts/xzgrep +0 -215
  685. package/deps/xz/src/scripts/xzgrep.1 +0 -98
  686. package/deps/xz/src/scripts/xzgrep.in +0 -215
  687. package/deps/xz/src/scripts/xzless +0 -58
  688. package/deps/xz/src/scripts/xzless.1 +0 -69
  689. package/deps/xz/src/scripts/xzless.in +0 -58
  690. package/deps/xz/src/scripts/xzmore +0 -78
  691. package/deps/xz/src/scripts/xzmore.1 +0 -55
  692. package/deps/xz/src/scripts/xzmore.in +0 -78
  693. package/deps/xz/src/xz/.deps/xz-args.Po +0 -1
  694. package/deps/xz/src/xz/.deps/xz-coder.Po +0 -1
  695. package/deps/xz/src/xz/.deps/xz-file_io.Po +0 -1
  696. package/deps/xz/src/xz/.deps/xz-hardware.Po +0 -1
  697. package/deps/xz/src/xz/.deps/xz-list.Po +0 -1
  698. package/deps/xz/src/xz/.deps/xz-main.Po +0 -1
  699. package/deps/xz/src/xz/.deps/xz-message.Po +0 -1
  700. package/deps/xz/src/xz/.deps/xz-mytime.Po +0 -1
  701. package/deps/xz/src/xz/.deps/xz-options.Po +0 -1
  702. package/deps/xz/src/xz/.deps/xz-signals.Po +0 -1
  703. package/deps/xz/src/xz/.deps/xz-suffix.Po +0 -1
  704. package/deps/xz/src/xz/.deps/xz-tuklib_exit.Po +0 -1
  705. package/deps/xz/src/xz/.deps/xz-tuklib_mbstr_fw.Po +0 -1
  706. package/deps/xz/src/xz/.deps/xz-tuklib_mbstr_width.Po +0 -1
  707. package/deps/xz/src/xz/.deps/xz-tuklib_open_stdxxx.Po +0 -1
  708. package/deps/xz/src/xz/.deps/xz-tuklib_progname.Po +0 -1
  709. package/deps/xz/src/xz/.deps/xz-util.Po +0 -1
  710. package/deps/xz/src/xz/Makefile +0 -1066
  711. package/deps/xz/src/xz/Makefile.am +0 -107
  712. package/deps/xz/src/xz/Makefile.in +0 -1066
  713. package/deps/xz/src/xz/args.c +0 -684
  714. package/deps/xz/src/xz/args.h +0 -44
  715. package/deps/xz/src/xz/coder.c +0 -919
  716. package/deps/xz/src/xz/coder.h +0 -76
  717. package/deps/xz/src/xz/file_io.c +0 -1184
  718. package/deps/xz/src/xz/file_io.h +0 -150
  719. package/deps/xz/src/xz/hardware.c +0 -150
  720. package/deps/xz/src/xz/hardware.h +0 -37
  721. package/deps/xz/src/xz/list.c +0 -1186
  722. package/deps/xz/src/xz/list.h +0 -18
  723. package/deps/xz/src/xz/main.c +0 -307
  724. package/deps/xz/src/xz/main.h +0 -30
  725. package/deps/xz/src/xz/message.c +0 -1258
  726. package/deps/xz/src/xz/message.h +0 -167
  727. package/deps/xz/src/xz/mytime.c +0 -89
  728. package/deps/xz/src/xz/mytime.h +0 -47
  729. package/deps/xz/src/xz/options.c +0 -363
  730. package/deps/xz/src/xz/options.h +0 -31
  731. package/deps/xz/src/xz/private.h +0 -59
  732. package/deps/xz/src/xz/signals.c +0 -209
  733. package/deps/xz/src/xz/signals.h +0 -43
  734. package/deps/xz/src/xz/suffix.c +0 -399
  735. package/deps/xz/src/xz/suffix.h +0 -28
  736. package/deps/xz/src/xz/util.c +0 -288
  737. package/deps/xz/src/xz/util.h +0 -123
  738. package/deps/xz/src/xz/xz.1 +0 -2786
  739. package/deps/xz/src/xz/xz_w32res.rc +0 -12
  740. package/deps/xz/src/xzdec/.deps/lzmadec-tuklib_exit.Po +0 -1
  741. package/deps/xz/src/xzdec/.deps/lzmadec-tuklib_progname.Po +0 -1
  742. package/deps/xz/src/xzdec/.deps/lzmadec-xzdec.Po +0 -1
  743. package/deps/xz/src/xzdec/.deps/xzdec-tuklib_exit.Po +0 -1
  744. package/deps/xz/src/xzdec/.deps/xzdec-tuklib_progname.Po +0 -1
  745. package/deps/xz/src/xzdec/.deps/xzdec-xzdec.Po +0 -1
  746. package/deps/xz/src/xzdec/Makefile +0 -901
  747. package/deps/xz/src/xzdec/Makefile.am +0 -82
  748. package/deps/xz/src/xzdec/Makefile.in +0 -901
  749. package/deps/xz/src/xzdec/lzmadec_w32res.rc +0 -12
  750. package/deps/xz/src/xzdec/xzdec.1 +0 -146
  751. package/deps/xz/src/xzdec/xzdec.c +0 -323
  752. package/deps/xz/src/xzdec/xzdec_w32res.rc +0 -12
  753. package/deps/xz/stamp-h1 +0 -1
  754. package/deps/xz/tests/.deps/create_compress_files.Po +0 -1
  755. package/deps/xz/tests/.deps/test_bcj_exact_size.Po +0 -1
  756. package/deps/xz/tests/.deps/test_block_header.Po +0 -1
  757. package/deps/xz/tests/.deps/test_check.Po +0 -1
  758. package/deps/xz/tests/.deps/test_filter_flags.Po +0 -1
  759. package/deps/xz/tests/.deps/test_index.Po +0 -1
  760. package/deps/xz/tests/.deps/test_stream_flags.Po +0 -1
  761. package/deps/xz/tests/Makefile +0 -832
  762. package/deps/xz/tests/Makefile.am +0 -57
  763. package/deps/xz/tests/Makefile.in +0 -832
  764. package/deps/xz/tests/bcj_test.c +0 -65
  765. package/deps/xz/tests/compress_prepared_bcj_sparc +0 -0
  766. package/deps/xz/tests/compress_prepared_bcj_x86 +0 -0
  767. package/deps/xz/tests/create_compress_files.c +0 -158
  768. package/deps/xz/tests/files/README +0 -240
  769. package/deps/xz/tests/files/bad-0-backward_size.xz +0 -0
  770. package/deps/xz/tests/files/bad-0-empty-truncated.xz +0 -0
  771. package/deps/xz/tests/files/bad-0-footer_magic.xz +0 -0
  772. package/deps/xz/tests/files/bad-0-header_magic.xz +0 -0
  773. package/deps/xz/tests/files/bad-0-nonempty_index.xz +0 -0
  774. package/deps/xz/tests/files/bad-0cat-alone.xz +0 -0
  775. package/deps/xz/tests/files/bad-0cat-header_magic.xz +0 -0
  776. package/deps/xz/tests/files/bad-0catpad-empty.xz +0 -0
  777. package/deps/xz/tests/files/bad-0pad-empty.xz +0 -0
  778. package/deps/xz/tests/files/bad-1-block_header-1.xz +0 -0
  779. package/deps/xz/tests/files/bad-1-block_header-2.xz +0 -0
  780. package/deps/xz/tests/files/bad-1-block_header-3.xz +0 -0
  781. package/deps/xz/tests/files/bad-1-block_header-4.xz +0 -0
  782. package/deps/xz/tests/files/bad-1-block_header-5.xz +0 -0
  783. package/deps/xz/tests/files/bad-1-block_header-6.xz +0 -0
  784. package/deps/xz/tests/files/bad-1-check-crc32.xz +0 -0
  785. package/deps/xz/tests/files/bad-1-check-crc64.xz +0 -0
  786. package/deps/xz/tests/files/bad-1-check-sha256.xz +0 -0
  787. package/deps/xz/tests/files/bad-1-lzma2-1.xz +0 -0
  788. package/deps/xz/tests/files/bad-1-lzma2-2.xz +0 -0
  789. package/deps/xz/tests/files/bad-1-lzma2-3.xz +0 -0
  790. package/deps/xz/tests/files/bad-1-lzma2-4.xz +0 -0
  791. package/deps/xz/tests/files/bad-1-lzma2-5.xz +0 -0
  792. package/deps/xz/tests/files/bad-1-lzma2-6.xz +0 -0
  793. package/deps/xz/tests/files/bad-1-lzma2-7.xz +0 -0
  794. package/deps/xz/tests/files/bad-1-lzma2-8.xz +0 -0
  795. package/deps/xz/tests/files/bad-1-stream_flags-1.xz +0 -0
  796. package/deps/xz/tests/files/bad-1-stream_flags-2.xz +0 -0
  797. package/deps/xz/tests/files/bad-1-stream_flags-3.xz +0 -0
  798. package/deps/xz/tests/files/bad-1-vli-1.xz +0 -0
  799. package/deps/xz/tests/files/bad-1-vli-2.xz +0 -0
  800. package/deps/xz/tests/files/bad-2-compressed_data_padding.xz +0 -0
  801. package/deps/xz/tests/files/bad-2-index-1.xz +0 -0
  802. package/deps/xz/tests/files/bad-2-index-2.xz +0 -0
  803. package/deps/xz/tests/files/bad-2-index-3.xz +0 -0
  804. package/deps/xz/tests/files/bad-2-index-4.xz +0 -0
  805. package/deps/xz/tests/files/bad-2-index-5.xz +0 -0
  806. package/deps/xz/tests/files/good-0-empty.xz +0 -0
  807. package/deps/xz/tests/files/good-0cat-empty.xz +0 -0
  808. package/deps/xz/tests/files/good-0catpad-empty.xz +0 -0
  809. package/deps/xz/tests/files/good-0pad-empty.xz +0 -0
  810. package/deps/xz/tests/files/good-1-3delta-lzma2.xz +0 -0
  811. package/deps/xz/tests/files/good-1-block_header-1.xz +0 -0
  812. package/deps/xz/tests/files/good-1-block_header-2.xz +0 -0
  813. package/deps/xz/tests/files/good-1-block_header-3.xz +0 -0
  814. package/deps/xz/tests/files/good-1-check-crc32.xz +0 -0
  815. package/deps/xz/tests/files/good-1-check-crc64.xz +0 -0
  816. package/deps/xz/tests/files/good-1-check-none.xz +0 -0
  817. package/deps/xz/tests/files/good-1-check-sha256.xz +0 -0
  818. package/deps/xz/tests/files/good-1-delta-lzma2.tiff.xz +0 -0
  819. package/deps/xz/tests/files/good-1-lzma2-1.xz +0 -0
  820. package/deps/xz/tests/files/good-1-lzma2-2.xz +0 -0
  821. package/deps/xz/tests/files/good-1-lzma2-3.xz +0 -0
  822. package/deps/xz/tests/files/good-1-lzma2-4.xz +0 -0
  823. package/deps/xz/tests/files/good-1-lzma2-5.xz +0 -0
  824. package/deps/xz/tests/files/good-1-sparc-lzma2.xz +0 -0
  825. package/deps/xz/tests/files/good-1-x86-lzma2.xz +0 -0
  826. package/deps/xz/tests/files/good-2-lzma2.xz +0 -0
  827. package/deps/xz/tests/files/unsupported-block_header.xz +0 -0
  828. package/deps/xz/tests/files/unsupported-check.xz +0 -0
  829. package/deps/xz/tests/files/unsupported-filter_flags-1.xz +0 -0
  830. package/deps/xz/tests/files/unsupported-filter_flags-2.xz +0 -0
  831. package/deps/xz/tests/files/unsupported-filter_flags-3.xz +0 -0
  832. package/deps/xz/tests/test_bcj_exact_size.c +0 -113
  833. package/deps/xz/tests/test_block_header.c +0 -240
  834. package/deps/xz/tests/test_check.c +0 -83
  835. package/deps/xz/tests/test_compress.sh +0 -142
  836. package/deps/xz/tests/test_files.sh +0 -57
  837. package/deps/xz/tests/test_filter_flags.c +0 -258
  838. package/deps/xz/tests/test_index.c +0 -659
  839. package/deps/xz/tests/test_scripts.sh +0 -76
  840. package/deps/xz/tests/test_stream_flags.c +0 -180
  841. package/deps/xz/tests/tests.h +0 -124
  842. package/deps/xz/tests/xzgrep_expected_output +0 -39
  843. package/deps/xz/windows/INSTALL-MSVC.txt +0 -47
  844. package/deps/xz/windows/INSTALL-MinGW.txt +0 -138
  845. package/deps/xz/windows/README-Windows.txt +0 -122
  846. package/deps/xz/windows/build.bash +0 -203
  847. package/deps/xz/windows/config.h +0 -142
  848. package/deps/xz/windows/liblzma.vcxproj +0 -354
  849. package/deps/xz/windows/liblzma_dll.vcxproj +0 -383
  850. package/deps/xz/windows/xz_win.sln +0 -48
  851. package/lib/lzma.js +0 -377
  852. package/node_modules/node-pre-gyp/CHANGELOG.md +0 -319
  853. package/node_modules/node-pre-gyp/LICENSE +0 -27
  854. package/node_modules/node-pre-gyp/README.md +0 -570
  855. package/node_modules/node-pre-gyp/appveyor.yml +0 -30
  856. package/node_modules/node-pre-gyp/bin/node-pre-gyp +0 -131
  857. package/node_modules/node-pre-gyp/bin/node-pre-gyp.cmd +0 -2
  858. package/node_modules/node-pre-gyp/lib/build.js +0 -43
  859. package/node_modules/node-pre-gyp/lib/clean.js +0 -23
  860. package/node_modules/node-pre-gyp/lib/configure.js +0 -48
  861. package/node_modules/node-pre-gyp/lib/info.js +0 -40
  862. package/node_modules/node-pre-gyp/lib/install.js +0 -215
  863. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +0 -192
  864. package/node_modules/node-pre-gyp/lib/package.js +0 -46
  865. package/node_modules/node-pre-gyp/lib/pre-binding.js +0 -25
  866. package/node_modules/node-pre-gyp/lib/publish.js +0 -77
  867. package/node_modules/node-pre-gyp/lib/rebuild.js +0 -13
  868. package/node_modules/node-pre-gyp/lib/reinstall.js +0 -13
  869. package/node_modules/node-pre-gyp/lib/reveal.js +0 -31
  870. package/node_modules/node-pre-gyp/lib/testbinary.js +0 -73
  871. package/node_modules/node-pre-gyp/lib/testpackage.js +0 -49
  872. package/node_modules/node-pre-gyp/lib/unpublish.js +0 -41
  873. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +0 -1222
  874. package/node_modules/node-pre-gyp/lib/util/compile.js +0 -87
  875. package/node_modules/node-pre-gyp/lib/util/handle_gyp_opts.js +0 -94
  876. package/node_modules/node-pre-gyp/lib/util/nw-pre-gyp/index.html +0 -26
  877. package/node_modules/node-pre-gyp/lib/util/nw-pre-gyp/package.json +0 -9
  878. package/node_modules/node-pre-gyp/lib/util/s3_setup.js +0 -27
  879. package/node_modules/node-pre-gyp/lib/util/versioning.js +0 -308
  880. package/node_modules/node-pre-gyp/package.json +0 -136
@@ -1,919 +0,0 @@
1
- ///////////////////////////////////////////////////////////////////////////////
2
- //
3
- /// \file coder.c
4
- /// \brief Compresses or uncompresses a file
5
- //
6
- // Author: Lasse Collin
7
- //
8
- // This file has been put into the public domain.
9
- // You can do whatever you want with this file.
10
- //
11
- ///////////////////////////////////////////////////////////////////////////////
12
-
13
- #include "private.h"
14
-
15
-
16
- /// Return value type for coder_init().
17
- enum coder_init_ret {
18
- CODER_INIT_NORMAL,
19
- CODER_INIT_PASSTHRU,
20
- CODER_INIT_ERROR,
21
- };
22
-
23
-
24
- enum operation_mode opt_mode = MODE_COMPRESS;
25
- enum format_type opt_format = FORMAT_AUTO;
26
- bool opt_auto_adjust = true;
27
- bool opt_single_stream = false;
28
- uint64_t opt_block_size = 0;
29
- uint64_t *opt_block_list = NULL;
30
-
31
-
32
- /// Stream used to communicate with liblzma
33
- static lzma_stream strm = LZMA_STREAM_INIT;
34
-
35
- /// Filters needed for all encoding all formats, and also decoding in raw data
36
- static lzma_filter filters[LZMA_FILTERS_MAX + 1];
37
-
38
- /// Input and output buffers
39
- static io_buf in_buf;
40
- static io_buf out_buf;
41
-
42
- /// Number of filters. Zero indicates that we are using a preset.
43
- static uint32_t filters_count = 0;
44
-
45
- /// Number of the preset (0-9)
46
- static uint32_t preset_number = LZMA_PRESET_DEFAULT;
47
-
48
- /// Integrity check type
49
- static lzma_check check;
50
-
51
- /// This becomes false if the --check=CHECK option is used.
52
- static bool check_default = true;
53
-
54
- #ifdef MYTHREAD_ENABLED
55
- static lzma_mt mt_options = {
56
- .flags = 0,
57
- .timeout = 300,
58
- .filters = filters,
59
- };
60
- #endif
61
-
62
-
63
- extern void
64
- coder_set_check(lzma_check new_check)
65
- {
66
- check = new_check;
67
- check_default = false;
68
- return;
69
- }
70
-
71
-
72
- static void
73
- forget_filter_chain(void)
74
- {
75
- // Setting a preset makes us forget a possibly defined custom
76
- // filter chain.
77
- while (filters_count > 0) {
78
- --filters_count;
79
- free(filters[filters_count].options);
80
- filters[filters_count].options = NULL;
81
- }
82
-
83
- return;
84
- }
85
-
86
-
87
- extern void
88
- coder_set_preset(uint32_t new_preset)
89
- {
90
- preset_number &= ~LZMA_PRESET_LEVEL_MASK;
91
- preset_number |= new_preset;
92
- forget_filter_chain();
93
- return;
94
- }
95
-
96
-
97
- extern void
98
- coder_set_extreme(void)
99
- {
100
- preset_number |= LZMA_PRESET_EXTREME;
101
- forget_filter_chain();
102
- return;
103
- }
104
-
105
-
106
- extern void
107
- coder_add_filter(lzma_vli id, void *options)
108
- {
109
- if (filters_count == LZMA_FILTERS_MAX)
110
- message_fatal(_("Maximum number of filters is four"));
111
-
112
- filters[filters_count].id = id;
113
- filters[filters_count].options = options;
114
- ++filters_count;
115
-
116
- // Setting a custom filter chain makes us forget the preset options.
117
- // This makes a difference if one specifies e.g. "xz -9 --lzma2 -e"
118
- // where the custom filter chain resets the preset level back to
119
- // the default 6, making the example equivalent to "xz -6e".
120
- preset_number = LZMA_PRESET_DEFAULT;
121
-
122
- return;
123
- }
124
-
125
-
126
- static void lzma_attribute((__noreturn__))
127
- memlimit_too_small(uint64_t memory_usage)
128
- {
129
- message(V_ERROR, _("Memory usage limit is too low for the given "
130
- "filter setup."));
131
- message_mem_needed(V_ERROR, memory_usage);
132
- tuklib_exit(E_ERROR, E_ERROR, false);
133
- }
134
-
135
-
136
- extern void
137
- coder_set_compression_settings(void)
138
- {
139
- // The default check type is CRC64, but fallback to CRC32
140
- // if CRC64 isn't supported by the copy of liblzma we are
141
- // using. CRC32 is always supported.
142
- if (check_default) {
143
- check = LZMA_CHECK_CRC64;
144
- if (!lzma_check_is_supported(check))
145
- check = LZMA_CHECK_CRC32;
146
- }
147
-
148
- // Options for LZMA1 or LZMA2 in case we are using a preset.
149
- static lzma_options_lzma opt_lzma;
150
-
151
- if (filters_count == 0) {
152
- // We are using a preset. This is not a good idea in raw mode
153
- // except when playing around with things. Different versions
154
- // of this software may use different options in presets, and
155
- // thus make uncompressing the raw data difficult.
156
- if (opt_format == FORMAT_RAW) {
157
- // The message is shown only if warnings are allowed
158
- // but the exit status isn't changed.
159
- message(V_WARNING, _("Using a preset in raw mode "
160
- "is discouraged."));
161
- message(V_WARNING, _("The exact options of the "
162
- "presets may vary between software "
163
- "versions."));
164
- }
165
-
166
- // Get the preset for LZMA1 or LZMA2.
167
- if (lzma_lzma_preset(&opt_lzma, preset_number))
168
- message_bug();
169
-
170
- // Use LZMA2 except with --format=lzma we use LZMA1.
171
- filters[0].id = opt_format == FORMAT_LZMA
172
- ? LZMA_FILTER_LZMA1 : LZMA_FILTER_LZMA2;
173
- filters[0].options = &opt_lzma;
174
- filters_count = 1;
175
- }
176
-
177
- // Terminate the filter options array.
178
- filters[filters_count].id = LZMA_VLI_UNKNOWN;
179
-
180
- // If we are using the .lzma format, allow exactly one filter
181
- // which has to be LZMA1.
182
- if (opt_format == FORMAT_LZMA && (filters_count != 1
183
- || filters[0].id != LZMA_FILTER_LZMA1))
184
- message_fatal(_("The .lzma format supports only "
185
- "the LZMA1 filter"));
186
-
187
- // If we are using the .xz format, make sure that there is no LZMA1
188
- // filter to prevent LZMA_PROG_ERROR.
189
- if (opt_format == FORMAT_XZ)
190
- for (size_t i = 0; i < filters_count; ++i)
191
- if (filters[i].id == LZMA_FILTER_LZMA1)
192
- message_fatal(_("LZMA1 cannot be used "
193
- "with the .xz format"));
194
-
195
- // Print the selected filter chain.
196
- message_filters_show(V_DEBUG, filters);
197
-
198
- // The --flush-timeout option requires LZMA_SYNC_FLUSH support
199
- // from the filter chain. Currently threaded encoder doesn't support
200
- // LZMA_SYNC_FLUSH so single-threaded mode must be used.
201
- if (opt_mode == MODE_COMPRESS && opt_flush_timeout != 0) {
202
- for (size_t i = 0; i < filters_count; ++i) {
203
- switch (filters[i].id) {
204
- case LZMA_FILTER_LZMA2:
205
- case LZMA_FILTER_DELTA:
206
- break;
207
-
208
- default:
209
- message_fatal(_("The filter chain is "
210
- "incompatible with --flush-timeout"));
211
- }
212
- }
213
-
214
- if (hardware_threads_get() > 1) {
215
- message(V_WARNING, _("Switching to single-threaded "
216
- "mode due to --flush-timeout"));
217
- hardware_threads_set(1);
218
- }
219
- }
220
-
221
- // Get the memory usage. Note that if --format=raw was used,
222
- // we can be decompressing.
223
- const uint64_t memory_limit = hardware_memlimit_get(opt_mode);
224
- uint64_t memory_usage;
225
- if (opt_mode == MODE_COMPRESS) {
226
- #ifdef MYTHREAD_ENABLED
227
- if (opt_format == FORMAT_XZ && hardware_threads_get() > 1) {
228
- mt_options.threads = hardware_threads_get();
229
- mt_options.block_size = opt_block_size;
230
- mt_options.check = check;
231
- memory_usage = lzma_stream_encoder_mt_memusage(
232
- &mt_options);
233
- if (memory_usage != UINT64_MAX)
234
- message(V_DEBUG, _("Using up to %" PRIu32
235
- " threads."),
236
- mt_options.threads);
237
- } else
238
- #endif
239
- {
240
- memory_usage = lzma_raw_encoder_memusage(filters);
241
- }
242
- } else {
243
- memory_usage = lzma_raw_decoder_memusage(filters);
244
- }
245
-
246
- if (memory_usage == UINT64_MAX)
247
- message_fatal(_("Unsupported filter chain or filter options"));
248
-
249
- // Print memory usage info before possible dictionary
250
- // size auto-adjusting.
251
- message_mem_needed(V_DEBUG, memory_usage);
252
- if (opt_mode == MODE_COMPRESS) {
253
- const uint64_t decmem = lzma_raw_decoder_memusage(filters);
254
- if (decmem != UINT64_MAX)
255
- message(V_DEBUG, _("Decompression will need "
256
- "%s MiB of memory."), uint64_to_str(
257
- round_up_to_mib(decmem), 0));
258
- }
259
-
260
- if (memory_usage <= memory_limit)
261
- return;
262
-
263
- // If --no-adjust was used or we didn't find LZMA1 or
264
- // LZMA2 as the last filter, give an error immediately.
265
- // --format=raw implies --no-adjust.
266
- if (!opt_auto_adjust || opt_format == FORMAT_RAW)
267
- memlimit_too_small(memory_usage);
268
-
269
- assert(opt_mode == MODE_COMPRESS);
270
-
271
- #ifdef MYTHREAD_ENABLED
272
- if (opt_format == FORMAT_XZ && mt_options.threads > 1) {
273
- // Try to reduce the number of threads before
274
- // adjusting the compression settings down.
275
- do {
276
- // FIXME? The real single-threaded mode has
277
- // lower memory usage, but it's not comparable
278
- // because it doesn't write the size info
279
- // into Block Headers.
280
- if (--mt_options.threads == 0)
281
- memlimit_too_small(memory_usage);
282
-
283
- memory_usage = lzma_stream_encoder_mt_memusage(
284
- &mt_options);
285
- if (memory_usage == UINT64_MAX)
286
- message_bug();
287
-
288
- } while (memory_usage > memory_limit);
289
-
290
- message(V_WARNING, _("Adjusted the number of threads "
291
- "from %s to %s to not exceed "
292
- "the memory usage limit of %s MiB"),
293
- uint64_to_str(hardware_threads_get(), 0),
294
- uint64_to_str(mt_options.threads, 1),
295
- uint64_to_str(round_up_to_mib(
296
- memory_limit), 2));
297
- }
298
- #endif
299
-
300
- if (memory_usage <= memory_limit)
301
- return;
302
-
303
- // Look for the last filter if it is LZMA2 or LZMA1, so we can make
304
- // it use less RAM. With other filters we don't know what to do.
305
- size_t i = 0;
306
- while (filters[i].id != LZMA_FILTER_LZMA2
307
- && filters[i].id != LZMA_FILTER_LZMA1) {
308
- if (filters[i].id == LZMA_VLI_UNKNOWN)
309
- memlimit_too_small(memory_usage);
310
-
311
- ++i;
312
- }
313
-
314
- // Decrease the dictionary size until we meet the memory
315
- // usage limit. First round down to full mebibytes.
316
- lzma_options_lzma *opt = filters[i].options;
317
- const uint32_t orig_dict_size = opt->dict_size;
318
- opt->dict_size &= ~((UINT32_C(1) << 20) - 1);
319
- while (true) {
320
- // If it is below 1 MiB, auto-adjusting failed. We could be
321
- // more sophisticated and scale it down even more, but let's
322
- // see if many complain about this version.
323
- //
324
- // FIXME: Displays the scaled memory usage instead
325
- // of the original.
326
- if (opt->dict_size < (UINT32_C(1) << 20))
327
- memlimit_too_small(memory_usage);
328
-
329
- memory_usage = lzma_raw_encoder_memusage(filters);
330
- if (memory_usage == UINT64_MAX)
331
- message_bug();
332
-
333
- // Accept it if it is low enough.
334
- if (memory_usage <= memory_limit)
335
- break;
336
-
337
- // Otherwise 1 MiB down and try again. I hope this
338
- // isn't too slow method for cases where the original
339
- // dict_size is very big.
340
- opt->dict_size -= UINT32_C(1) << 20;
341
- }
342
-
343
- // Tell the user that we decreased the dictionary size.
344
- message(V_WARNING, _("Adjusted LZMA%c dictionary size "
345
- "from %s MiB to %s MiB to not exceed "
346
- "the memory usage limit of %s MiB"),
347
- filters[i].id == LZMA_FILTER_LZMA2
348
- ? '2' : '1',
349
- uint64_to_str(orig_dict_size >> 20, 0),
350
- uint64_to_str(opt->dict_size >> 20, 1),
351
- uint64_to_str(round_up_to_mib(memory_limit), 2));
352
-
353
- return;
354
- }
355
-
356
-
357
- /// Return true if the data in in_buf seems to be in the .xz format.
358
- static bool
359
- is_format_xz(void)
360
- {
361
- // Specify the magic as hex to be compatible with EBCDIC systems.
362
- static const uint8_t magic[6] = { 0xFD, 0x37, 0x7A, 0x58, 0x5A, 0x00 };
363
- return strm.avail_in >= sizeof(magic)
364
- && memcmp(in_buf.u8, magic, sizeof(magic)) == 0;
365
- }
366
-
367
-
368
- /// Return true if the data in in_buf seems to be in the .lzma format.
369
- static bool
370
- is_format_lzma(void)
371
- {
372
- // The .lzma header is 13 bytes.
373
- if (strm.avail_in < 13)
374
- return false;
375
-
376
- // Decode the LZMA1 properties.
377
- lzma_filter filter = { .id = LZMA_FILTER_LZMA1 };
378
- if (lzma_properties_decode(&filter, NULL, in_buf.u8, 5) != LZMA_OK)
379
- return false;
380
-
381
- // A hack to ditch tons of false positives: We allow only dictionary
382
- // sizes that are 2^n or 2^n + 2^(n-1) or UINT32_MAX. LZMA_Alone
383
- // created only files with 2^n, but accepts any dictionary size.
384
- // If someone complains, this will be reconsidered.
385
- lzma_options_lzma *opt = filter.options;
386
- const uint32_t dict_size = opt->dict_size;
387
- free(opt);
388
-
389
- if (dict_size != UINT32_MAX) {
390
- uint32_t d = dict_size - 1;
391
- d |= d >> 2;
392
- d |= d >> 3;
393
- d |= d >> 4;
394
- d |= d >> 8;
395
- d |= d >> 16;
396
- ++d;
397
- if (d != dict_size || dict_size == 0)
398
- return false;
399
- }
400
-
401
- // Another hack to ditch false positives: Assume that if the
402
- // uncompressed size is known, it must be less than 256 GiB.
403
- // Again, if someone complains, this will be reconsidered.
404
- uint64_t uncompressed_size = 0;
405
- for (size_t i = 0; i < 8; ++i)
406
- uncompressed_size |= (uint64_t)(in_buf.u8[5 + i]) << (i * 8);
407
-
408
- if (uncompressed_size != UINT64_MAX
409
- && uncompressed_size > (UINT64_C(1) << 38))
410
- return false;
411
-
412
- return true;
413
- }
414
-
415
-
416
- /// Detect the input file type (for now, this done only when decompressing),
417
- /// and initialize an appropriate coder. Return value indicates if a normal
418
- /// liblzma-based coder was initialized (CODER_INIT_NORMAL), if passthru
419
- /// mode should be used (CODER_INIT_PASSTHRU), or if an error occurred
420
- /// (CODER_INIT_ERROR).
421
- static enum coder_init_ret
422
- coder_init(file_pair *pair)
423
- {
424
- lzma_ret ret = LZMA_PROG_ERROR;
425
-
426
- if (opt_mode == MODE_COMPRESS) {
427
- switch (opt_format) {
428
- case FORMAT_AUTO:
429
- // args.c ensures this.
430
- assert(0);
431
- break;
432
-
433
- case FORMAT_XZ:
434
- #ifdef MYTHREAD_ENABLED
435
- if (hardware_threads_get() > 1)
436
- ret = lzma_stream_encoder_mt(
437
- &strm, &mt_options);
438
- else
439
- #endif
440
- ret = lzma_stream_encoder(
441
- &strm, filters, check);
442
- break;
443
-
444
- case FORMAT_LZMA:
445
- ret = lzma_alone_encoder(&strm, filters[0].options);
446
- break;
447
-
448
- case FORMAT_RAW:
449
- ret = lzma_raw_encoder(&strm, filters);
450
- break;
451
- }
452
- } else {
453
- uint32_t flags = 0;
454
-
455
- // It seems silly to warn about unsupported check if the
456
- // check won't be verified anyway due to --ignore-check.
457
- if (opt_ignore_check)
458
- flags |= LZMA_IGNORE_CHECK;
459
- else
460
- flags |= LZMA_TELL_UNSUPPORTED_CHECK;
461
-
462
- if (!opt_single_stream)
463
- flags |= LZMA_CONCATENATED;
464
-
465
- // We abuse FORMAT_AUTO to indicate unknown file format,
466
- // for which we may consider passthru mode.
467
- enum format_type init_format = FORMAT_AUTO;
468
-
469
- switch (opt_format) {
470
- case FORMAT_AUTO:
471
- if (is_format_xz())
472
- init_format = FORMAT_XZ;
473
- else if (is_format_lzma())
474
- init_format = FORMAT_LZMA;
475
- break;
476
-
477
- case FORMAT_XZ:
478
- if (is_format_xz())
479
- init_format = FORMAT_XZ;
480
- break;
481
-
482
- case FORMAT_LZMA:
483
- if (is_format_lzma())
484
- init_format = FORMAT_LZMA;
485
- break;
486
-
487
- case FORMAT_RAW:
488
- init_format = FORMAT_RAW;
489
- break;
490
- }
491
-
492
- switch (init_format) {
493
- case FORMAT_AUTO:
494
- // Unknown file format. If --decompress --stdout
495
- // --force have been given, then we copy the input
496
- // as is to stdout. Checking for MODE_DECOMPRESS
497
- // is needed, because we don't want to do use
498
- // passthru mode with --test.
499
- if (opt_mode == MODE_DECOMPRESS
500
- && opt_stdout && opt_force)
501
- return CODER_INIT_PASSTHRU;
502
-
503
- ret = LZMA_FORMAT_ERROR;
504
- break;
505
-
506
- case FORMAT_XZ:
507
- ret = lzma_stream_decoder(&strm,
508
- hardware_memlimit_get(
509
- MODE_DECOMPRESS), flags);
510
- break;
511
-
512
- case FORMAT_LZMA:
513
- ret = lzma_alone_decoder(&strm,
514
- hardware_memlimit_get(
515
- MODE_DECOMPRESS));
516
- break;
517
-
518
- case FORMAT_RAW:
519
- // Memory usage has already been checked in
520
- // coder_set_compression_settings().
521
- ret = lzma_raw_decoder(&strm, filters);
522
- break;
523
- }
524
-
525
- // Try to decode the headers. This will catch too low
526
- // memory usage limit in case it happens in the first
527
- // Block of the first Stream, which is where it very
528
- // probably will happen if it is going to happen.
529
- if (ret == LZMA_OK && init_format != FORMAT_RAW) {
530
- strm.next_out = NULL;
531
- strm.avail_out = 0;
532
- ret = lzma_code(&strm, LZMA_RUN);
533
- }
534
- }
535
-
536
- if (ret != LZMA_OK) {
537
- message_error("%s: %s", pair->src_name, message_strm(ret));
538
- if (ret == LZMA_MEMLIMIT_ERROR)
539
- message_mem_needed(V_ERROR, lzma_memusage(&strm));
540
-
541
- return CODER_INIT_ERROR;
542
- }
543
-
544
- return CODER_INIT_NORMAL;
545
- }
546
-
547
-
548
- /// Resolve conflicts between opt_block_size and opt_block_list in single
549
- /// threaded mode. We want to default to opt_block_list, except when it is
550
- /// larger than opt_block_size. If this is the case for the current Block
551
- /// at *list_pos, then we break into smaller Blocks. Otherwise advance
552
- /// to the next Block in opt_block_list, and break apart if needed.
553
- static void
554
- split_block(uint64_t *block_remaining,
555
- uint64_t *next_block_remaining,
556
- size_t *list_pos)
557
- {
558
- if (*next_block_remaining > 0) {
559
- // The Block at *list_pos has previously been split up.
560
- assert(hardware_threads_get() == 1);
561
- assert(opt_block_size > 0);
562
- assert(opt_block_list != NULL);
563
-
564
- if (*next_block_remaining > opt_block_size) {
565
- // We have to split the current Block at *list_pos
566
- // into another opt_block_size length Block.
567
- *block_remaining = opt_block_size;
568
- } else {
569
- // This is the last remaining split Block for the
570
- // Block at *list_pos.
571
- *block_remaining = *next_block_remaining;
572
- }
573
-
574
- *next_block_remaining -= *block_remaining;
575
-
576
- } else {
577
- // The Block at *list_pos has been finished. Go to the next
578
- // entry in the list. If the end of the list has been reached,
579
- // reuse the size of the last Block.
580
- if (opt_block_list[*list_pos + 1] != 0)
581
- ++*list_pos;
582
-
583
- *block_remaining = opt_block_list[*list_pos];
584
-
585
- // If in single-threaded mode, split up the Block if needed.
586
- // This is not needed in multi-threaded mode because liblzma
587
- // will do this due to how threaded encoding works.
588
- if (hardware_threads_get() == 1 && opt_block_size > 0
589
- && *block_remaining > opt_block_size) {
590
- *next_block_remaining
591
- = *block_remaining - opt_block_size;
592
- *block_remaining = opt_block_size;
593
- }
594
- }
595
- }
596
-
597
-
598
- /// Compress or decompress using liblzma.
599
- static bool
600
- coder_normal(file_pair *pair)
601
- {
602
- // Encoder needs to know when we have given all the input to it.
603
- // The decoders need to know it too when we are using
604
- // LZMA_CONCATENATED. We need to check for src_eof here, because
605
- // the first input chunk has been already read if decompressing,
606
- // and that may have been the only chunk we will read.
607
- lzma_action action = pair->src_eof ? LZMA_FINISH : LZMA_RUN;
608
-
609
- lzma_ret ret;
610
-
611
- // Assume that something goes wrong.
612
- bool success = false;
613
-
614
- // block_remaining indicates how many input bytes to encode before
615
- // finishing the current .xz Block. The Block size is set with
616
- // --block-size=SIZE and --block-list. They have an effect only when
617
- // compressing to the .xz format. If block_remaining == UINT64_MAX,
618
- // only a single block is created.
619
- uint64_t block_remaining = UINT64_MAX;
620
-
621
- // next_block_remining for when we are in single-threaded mode and
622
- // the Block in --block-list is larger than the --block-size=SIZE.
623
- uint64_t next_block_remaining = 0;
624
-
625
- // Position in opt_block_list. Unused if --block-list wasn't used.
626
- size_t list_pos = 0;
627
-
628
- // Handle --block-size for single-threaded mode and the first step
629
- // of --block-list.
630
- if (opt_mode == MODE_COMPRESS && opt_format == FORMAT_XZ) {
631
- // --block-size doesn't do anything here in threaded mode,
632
- // because the threaded encoder will take care of splitting
633
- // to fixed-sized Blocks.
634
- if (hardware_threads_get() == 1 && opt_block_size > 0)
635
- block_remaining = opt_block_size;
636
-
637
- // If --block-list was used, start with the first size.
638
- //
639
- // For threaded case, --block-size specifies how big Blocks
640
- // the encoder needs to be prepared to create at maximum
641
- // and --block-list will simultaneously cause new Blocks
642
- // to be started at specified intervals. To keep things
643
- // logical, the same is done in single-threaded mode. The
644
- // output is still not identical because in single-threaded
645
- // mode the size info isn't written into Block Headers.
646
- if (opt_block_list != NULL) {
647
- if (block_remaining < opt_block_list[list_pos]) {
648
- assert(hardware_threads_get() == 1);
649
- next_block_remaining = opt_block_list[list_pos]
650
- - block_remaining;
651
- } else {
652
- block_remaining = opt_block_list[list_pos];
653
- }
654
- }
655
- }
656
-
657
- strm.next_out = out_buf.u8;
658
- strm.avail_out = IO_BUFFER_SIZE;
659
-
660
- while (!user_abort) {
661
- // Fill the input buffer if it is empty and we aren't
662
- // flushing or finishing.
663
- if (strm.avail_in == 0 && action == LZMA_RUN) {
664
- strm.next_in = in_buf.u8;
665
- strm.avail_in = io_read(pair, &in_buf,
666
- my_min(block_remaining,
667
- IO_BUFFER_SIZE));
668
-
669
- if (strm.avail_in == SIZE_MAX)
670
- break;
671
-
672
- if (pair->src_eof) {
673
- action = LZMA_FINISH;
674
-
675
- } else if (block_remaining != UINT64_MAX) {
676
- // Start a new Block after every
677
- // opt_block_size bytes of input.
678
- block_remaining -= strm.avail_in;
679
- if (block_remaining == 0)
680
- action = LZMA_FULL_BARRIER;
681
- }
682
-
683
- if (action == LZMA_RUN && flush_needed)
684
- action = LZMA_SYNC_FLUSH;
685
- }
686
-
687
- // Let liblzma do the actual work.
688
- ret = lzma_code(&strm, action);
689
-
690
- // Write out if the output buffer became full.
691
- if (strm.avail_out == 0) {
692
- if (opt_mode != MODE_TEST && io_write(pair, &out_buf,
693
- IO_BUFFER_SIZE - strm.avail_out))
694
- break;
695
-
696
- strm.next_out = out_buf.u8;
697
- strm.avail_out = IO_BUFFER_SIZE;
698
- }
699
-
700
- if (ret == LZMA_STREAM_END && (action == LZMA_SYNC_FLUSH
701
- || action == LZMA_FULL_BARRIER)) {
702
- if (action == LZMA_SYNC_FLUSH) {
703
- // Flushing completed. Write the pending data
704
- // out immediatelly so that the reading side
705
- // can decompress everything compressed so far.
706
- if (io_write(pair, &out_buf, IO_BUFFER_SIZE
707
- - strm.avail_out))
708
- break;
709
-
710
- strm.next_out = out_buf.u8;
711
- strm.avail_out = IO_BUFFER_SIZE;
712
-
713
- // Set the time of the most recent flushing.
714
- mytime_set_flush_time();
715
- } else {
716
- // Start a new Block after LZMA_FULL_BARRIER.
717
- if (opt_block_list == NULL) {
718
- assert(hardware_threads_get() == 1);
719
- assert(opt_block_size > 0);
720
- block_remaining = opt_block_size;
721
- } else {
722
- split_block(&block_remaining,
723
- &next_block_remaining,
724
- &list_pos);
725
- }
726
- }
727
-
728
- // Start a new Block after LZMA_FULL_FLUSH or continue
729
- // the same block after LZMA_SYNC_FLUSH.
730
- action = LZMA_RUN;
731
-
732
- } else if (ret != LZMA_OK) {
733
- // Determine if the return value indicates that we
734
- // won't continue coding.
735
- const bool stop = ret != LZMA_NO_CHECK
736
- && ret != LZMA_UNSUPPORTED_CHECK;
737
-
738
- if (stop) {
739
- // Write the remaining bytes even if something
740
- // went wrong, because that way the user gets
741
- // as much data as possible, which can be good
742
- // when trying to get at least some useful
743
- // data out of damaged files.
744
- if (opt_mode != MODE_TEST && io_write(pair,
745
- &out_buf, IO_BUFFER_SIZE
746
- - strm.avail_out))
747
- break;
748
- }
749
-
750
- if (ret == LZMA_STREAM_END) {
751
- if (opt_single_stream) {
752
- io_fix_src_pos(pair, strm.avail_in);
753
- success = true;
754
- break;
755
- }
756
-
757
- // Check that there is no trailing garbage.
758
- // This is needed for LZMA_Alone and raw
759
- // streams.
760
- if (strm.avail_in == 0 && !pair->src_eof) {
761
- // Try reading one more byte.
762
- // Hopefully we don't get any more
763
- // input, and thus pair->src_eof
764
- // becomes true.
765
- strm.avail_in = io_read(
766
- pair, &in_buf, 1);
767
- if (strm.avail_in == SIZE_MAX)
768
- break;
769
-
770
- assert(strm.avail_in == 0
771
- || strm.avail_in == 1);
772
- }
773
-
774
- if (strm.avail_in == 0) {
775
- assert(pair->src_eof);
776
- success = true;
777
- break;
778
- }
779
-
780
- // We hadn't reached the end of the file.
781
- ret = LZMA_DATA_ERROR;
782
- assert(stop);
783
- }
784
-
785
- // If we get here and stop is true, something went
786
- // wrong and we print an error. Otherwise it's just
787
- // a warning and coding can continue.
788
- if (stop) {
789
- message_error("%s: %s", pair->src_name,
790
- message_strm(ret));
791
- } else {
792
- message_warning("%s: %s", pair->src_name,
793
- message_strm(ret));
794
-
795
- // When compressing, all possible errors set
796
- // stop to true.
797
- assert(opt_mode != MODE_COMPRESS);
798
- }
799
-
800
- if (ret == LZMA_MEMLIMIT_ERROR) {
801
- // Display how much memory it would have
802
- // actually needed.
803
- message_mem_needed(V_ERROR,
804
- lzma_memusage(&strm));
805
- }
806
-
807
- if (stop)
808
- break;
809
- }
810
-
811
- // Show progress information under certain conditions.
812
- message_progress_update();
813
- }
814
-
815
- return success;
816
- }
817
-
818
-
819
- /// Copy from input file to output file without processing the data in any
820
- /// way. This is used only when trying to decompress unrecognized files
821
- /// with --decompress --stdout --force, so the output is always stdout.
822
- static bool
823
- coder_passthru(file_pair *pair)
824
- {
825
- while (strm.avail_in != 0) {
826
- if (user_abort)
827
- return false;
828
-
829
- if (io_write(pair, &in_buf, strm.avail_in))
830
- return false;
831
-
832
- strm.total_in += strm.avail_in;
833
- strm.total_out = strm.total_in;
834
- message_progress_update();
835
-
836
- strm.avail_in = io_read(pair, &in_buf, IO_BUFFER_SIZE);
837
- if (strm.avail_in == SIZE_MAX)
838
- return false;
839
- }
840
-
841
- return true;
842
- }
843
-
844
-
845
- extern void
846
- coder_run(const char *filename)
847
- {
848
- // Set and possibly print the filename for the progress message.
849
- message_filename(filename);
850
-
851
- // Try to open the input file.
852
- file_pair *pair = io_open_src(filename);
853
- if (pair == NULL)
854
- return;
855
-
856
- // Assume that something goes wrong.
857
- bool success = false;
858
-
859
- if (opt_mode == MODE_COMPRESS) {
860
- strm.next_in = NULL;
861
- strm.avail_in = 0;
862
- } else {
863
- // Read the first chunk of input data. This is needed
864
- // to detect the input file type.
865
- strm.next_in = in_buf.u8;
866
- strm.avail_in = io_read(pair, &in_buf, IO_BUFFER_SIZE);
867
- }
868
-
869
- if (strm.avail_in != SIZE_MAX) {
870
- // Initialize the coder. This will detect the file format
871
- // and, in decompression or testing mode, check the memory
872
- // usage of the first Block too. This way we don't try to
873
- // open the destination file if we see that coding wouldn't
874
- // work at all anyway. This also avoids deleting the old
875
- // "target" file if --force was used.
876
- const enum coder_init_ret init_ret = coder_init(pair);
877
-
878
- if (init_ret != CODER_INIT_ERROR && !user_abort) {
879
- // Don't open the destination file when --test
880
- // is used.
881
- if (opt_mode == MODE_TEST || !io_open_dest(pair)) {
882
- // Remember the current time. It is needed
883
- // for progress indicator and for timed
884
- // flushing.
885
- mytime_set_start_time();
886
-
887
- // Initialize the progress indicator.
888
- const uint64_t in_size
889
- = pair->src_st.st_size <= 0
890
- ? 0 : pair->src_st.st_size;
891
- message_progress_start(&strm, in_size);
892
-
893
- // Do the actual coding or passthru.
894
- if (init_ret == CODER_INIT_NORMAL)
895
- success = coder_normal(pair);
896
- else
897
- success = coder_passthru(pair);
898
-
899
- message_progress_end(success);
900
- }
901
- }
902
- }
903
-
904
- // Close the file pair. It needs to know if coding was successful to
905
- // know if the source or target file should be unlinked.
906
- io_close(pair, success);
907
-
908
- return;
909
- }
910
-
911
-
912
- #ifndef NDEBUG
913
- extern void
914
- coder_free(void)
915
- {
916
- lzma_end(&strm);
917
- return;
918
- }
919
- #endif