react-native-update 8.5.5 → 8.5.6

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 (762) hide show
  1. package/.swcrc +15 -0
  2. package/dist/endpoint.d.ts +13 -0
  3. package/dist/endpoint.js +62 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.js +18 -0
  6. package/dist/main.d.ts +33 -0
  7. package/dist/main.js +346 -0
  8. package/dist/simpleUpdate.d.ts +61 -0
  9. package/dist/simpleUpdate.js +146 -0
  10. package/dist/type.d.ts +51 -0
  11. package/dist/type.js +2 -0
  12. package/dist/utils.d.ts +4 -0
  13. package/dist/utils.js +83 -0
  14. package/lib/endpoint.ts +1 -1
  15. package/lib/main.ts +5 -5
  16. package/lib/simpleUpdate.tsx +3 -3
  17. package/package.json +7 -4
  18. package/tsconfig.json +18 -0
  19. package/harmony/src/main/cpp/HDiffPatch/CHANGELOG.md +0 -153
  20. package/harmony/src/main/cpp/HDiffPatch/LICENSE +0 -48
  21. package/harmony/src/main/cpp/HDiffPatch/Makefile +0 -157
  22. package/harmony/src/main/cpp/HDiffPatch/README.md +0 -307
  23. package/harmony/src/main/cpp/HDiffPatch/_atosize.h +0 -83
  24. package/harmony/src/main/cpp/HDiffPatch/_clock_for_demo.h +0 -47
  25. package/harmony/src/main/cpp/HDiffPatch/_dir_ignore.h +0 -191
  26. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +0 -37
  27. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +0 -7
  28. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.bat +0 -1
  29. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.sh +0 -1
  30. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +0 -18
  31. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +0 -20
  32. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +0 -28
  33. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +0 -8
  34. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +0 -8
  35. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffZ.cbp +0 -219
  36. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HPatchZ.cbp +0 -156
  37. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/unitTest.cbp +0 -65
  38. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffPatch.sln +0 -105
  39. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj +0 -237
  40. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +0 -3
  41. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj +0 -318
  42. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +0 -3
  43. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj +0 -182
  44. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj.user +0 -3
  45. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -30
  46. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  47. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +0 -408
  48. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +0 -573
  49. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +0 -396
  50. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lz4.xcodeproj/project.pbxproj +0 -268
  51. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +0 -361
  52. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +0 -301
  53. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +0 -411
  54. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +0 -504
  55. package/harmony/src/main/cpp/HDiffPatch/checksum_plugin_demo.h +0 -344
  56. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.cpp +0 -166
  57. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.h +0 -59
  58. package/harmony/src/main/cpp/HDiffPatch/compress_plugin_demo.h +0 -1152
  59. package/harmony/src/main/cpp/HDiffPatch/decompress_plugin_demo.h +0 -995
  60. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +0 -797
  61. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +0 -65
  62. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +0 -200
  63. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +0 -178
  64. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +0 -357
  65. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.h +0 -87
  66. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +0 -151
  67. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +0 -770
  68. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +0 -236
  69. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_private.h +0 -47
  70. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +0 -112
  71. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +0 -53
  72. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_types.h +0 -61
  73. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +0 -331
  74. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +0 -144
  75. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +0 -176
  76. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +0 -84
  77. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +0 -146
  78. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +0 -61
  79. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +0 -152
  80. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +0 -76
  81. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.c +0 -524
  82. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.h +0 -259
  83. package/harmony/src/main/cpp/HDiffPatch/hdiffz.cpp +0 -1570
  84. package/harmony/src/main/cpp/HDiffPatch/hpatch_dir_listener.h +0 -290
  85. package/harmony/src/main/cpp/HDiffPatch/hpatchz.c +0 -1221
  86. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +0 -1025
  87. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.h +0 -116
  88. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -72
  89. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +0 -213
  90. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +0 -63
  91. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +0 -170
  92. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +0 -86
  93. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/config.h +0 -89
  94. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c +0 -13
  95. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +0 -398
  96. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +0 -194
  97. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +0 -13
  98. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +0 -204
  99. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +0 -207
  100. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +0 -815
  101. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +0 -586
  102. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +0 -381
  103. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +0 -352
  104. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +0 -137
  105. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +0 -137
  106. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +0 -70
  107. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +0 -628
  108. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +0 -87
  109. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +0 -363
  110. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +0 -139
  111. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +0 -68
  112. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +0 -115
  113. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +0 -342
  114. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +0 -94
  115. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/checksum_plugin.h +0 -52
  116. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.c +0 -2292
  117. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.h +0 -215
  118. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_private.h +0 -165
  119. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_types.h +0 -251
  120. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.cpp +0 -174
  121. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.h +0 -73
  122. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.cpp +0 -367
  123. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.h +0 -92
  124. package/harmony/src/main/cpp/HDiffPatch/test/_private_searchBestParams.cpp +0 -301
  125. package/harmony/src/main/cpp/HDiffPatch/test/hpatchz_test.cpp +0 -292
  126. package/harmony/src/main/cpp/HDiffPatch/test/testHashClash.cpp +0 -436
  127. package/harmony/src/main/cpp/HDiffPatch/test/unit_test.cpp +0 -417
  128. package/harmony/src/main/cpp/lzma/Asm/arm/7zCrcOpt.asm +0 -100
  129. package/harmony/src/main/cpp/lzma/Asm/x86/7zAsm.asm +0 -147
  130. package/harmony/src/main/cpp/lzma/Asm/x86/7zCrcOpt.asm +0 -147
  131. package/harmony/src/main/cpp/lzma/Asm/x86/AesOpt.asm +0 -237
  132. package/harmony/src/main/cpp/lzma/Asm/x86/LzmaDecOpt.asm +0 -1258
  133. package/harmony/src/main/cpp/lzma/Asm/x86/XzCrc64Opt.asm +0 -205
  134. package/harmony/src/main/cpp/lzma/C/7z.h +0 -202
  135. package/harmony/src/main/cpp/lzma/C/7zAlloc.c +0 -80
  136. package/harmony/src/main/cpp/lzma/C/7zAlloc.h +0 -19
  137. package/harmony/src/main/cpp/lzma/C/7zArcIn.c +0 -1771
  138. package/harmony/src/main/cpp/lzma/C/7zBuf.c +0 -36
  139. package/harmony/src/main/cpp/lzma/C/7zBuf.h +0 -35
  140. package/harmony/src/main/cpp/lzma/C/7zBuf2.c +0 -52
  141. package/harmony/src/main/cpp/lzma/C/7zCrc.c +0 -128
  142. package/harmony/src/main/cpp/lzma/C/7zCrc.h +0 -25
  143. package/harmony/src/main/cpp/lzma/C/7zCrcOpt.c +0 -115
  144. package/harmony/src/main/cpp/lzma/C/7zDec.c +0 -591
  145. package/harmony/src/main/cpp/lzma/C/7zFile.c +0 -286
  146. package/harmony/src/main/cpp/lzma/C/7zFile.h +0 -83
  147. package/harmony/src/main/cpp/lzma/C/7zStream.c +0 -176
  148. package/harmony/src/main/cpp/lzma/C/7zTypes.h +0 -375
  149. package/harmony/src/main/cpp/lzma/C/7zVersion.h +0 -27
  150. package/harmony/src/main/cpp/lzma/C/7zVersion.rc +0 -55
  151. package/harmony/src/main/cpp/lzma/C/Aes.c +0 -306
  152. package/harmony/src/main/cpp/lzma/C/Aes.h +0 -38
  153. package/harmony/src/main/cpp/lzma/C/AesOpt.c +0 -184
  154. package/harmony/src/main/cpp/lzma/C/Alloc.c +0 -455
  155. package/harmony/src/main/cpp/lzma/C/Alloc.h +0 -51
  156. package/harmony/src/main/cpp/lzma/C/Bcj2.c +0 -257
  157. package/harmony/src/main/cpp/lzma/C/Bcj2.h +0 -146
  158. package/harmony/src/main/cpp/lzma/C/Bcj2Enc.c +0 -311
  159. package/harmony/src/main/cpp/lzma/C/Bra.c +0 -230
  160. package/harmony/src/main/cpp/lzma/C/Bra.h +0 -64
  161. package/harmony/src/main/cpp/lzma/C/Bra86.c +0 -82
  162. package/harmony/src/main/cpp/lzma/C/BraIA64.c +0 -53
  163. package/harmony/src/main/cpp/lzma/C/Compiler.h +0 -33
  164. package/harmony/src/main/cpp/lzma/C/CpuArch.c +0 -218
  165. package/harmony/src/main/cpp/lzma/C/CpuArch.h +0 -336
  166. package/harmony/src/main/cpp/lzma/C/Delta.c +0 -64
  167. package/harmony/src/main/cpp/lzma/C/Delta.h +0 -19
  168. package/harmony/src/main/cpp/lzma/C/DllSecur.c +0 -108
  169. package/harmony/src/main/cpp/lzma/C/DllSecur.h +0 -20
  170. package/harmony/src/main/cpp/lzma/C/LzFind.c +0 -1127
  171. package/harmony/src/main/cpp/lzma/C/LzFind.h +0 -121
  172. package/harmony/src/main/cpp/lzma/C/LzFindMt.c +0 -853
  173. package/harmony/src/main/cpp/lzma/C/LzFindMt.h +0 -101
  174. package/harmony/src/main/cpp/lzma/C/LzHash.h +0 -57
  175. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.c +0 -488
  176. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.h +0 -120
  177. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.c +0 -1082
  178. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.h +0 -79
  179. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.c +0 -803
  180. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.h +0 -55
  181. package/harmony/src/main/cpp/lzma/C/Lzma86.h +0 -111
  182. package/harmony/src/main/cpp/lzma/C/Lzma86Dec.c +0 -54
  183. package/harmony/src/main/cpp/lzma/C/Lzma86Enc.c +0 -106
  184. package/harmony/src/main/cpp/lzma/C/LzmaDec.c +0 -1185
  185. package/harmony/src/main/cpp/lzma/C/LzmaDec.h +0 -234
  186. package/harmony/src/main/cpp/lzma/C/LzmaEnc.c +0 -2976
  187. package/harmony/src/main/cpp/lzma/C/LzmaEnc.h +0 -76
  188. package/harmony/src/main/cpp/lzma/C/LzmaLib.c +0 -40
  189. package/harmony/src/main/cpp/lzma/C/LzmaLib.h +0 -131
  190. package/harmony/src/main/cpp/lzma/C/MtCoder.c +0 -601
  191. package/harmony/src/main/cpp/lzma/C/MtCoder.h +0 -141
  192. package/harmony/src/main/cpp/lzma/C/MtDec.c +0 -1138
  193. package/harmony/src/main/cpp/lzma/C/MtDec.h +0 -201
  194. package/harmony/src/main/cpp/lzma/C/Ppmd.h +0 -85
  195. package/harmony/src/main/cpp/lzma/C/Ppmd7.c +0 -712
  196. package/harmony/src/main/cpp/lzma/C/Ppmd7.h +0 -142
  197. package/harmony/src/main/cpp/lzma/C/Ppmd7Dec.c +0 -191
  198. package/harmony/src/main/cpp/lzma/C/Ppmd7Enc.c +0 -187
  199. package/harmony/src/main/cpp/lzma/C/Precomp.h +0 -10
  200. package/harmony/src/main/cpp/lzma/C/RotateDefs.h +0 -30
  201. package/harmony/src/main/cpp/lzma/C/Sha256.c +0 -248
  202. package/harmony/src/main/cpp/lzma/C/Sha256.h +0 -26
  203. package/harmony/src/main/cpp/lzma/C/Sort.c +0 -141
  204. package/harmony/src/main/cpp/lzma/C/Sort.h +0 -18
  205. package/harmony/src/main/cpp/lzma/C/Threads.c +0 -95
  206. package/harmony/src/main/cpp/lzma/C/Threads.h +0 -70
  207. package/harmony/src/main/cpp/lzma/C/ThreadsP.c +0 -396
  208. package/harmony/src/main/cpp/lzma/C/ThreadsP.h +0 -31
  209. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsp +0 -241
  210. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsw +0 -29
  211. package/harmony/src/main/cpp/lzma/C/Util/7z/7zMain.c +0 -686
  212. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.c +0 -4
  213. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.h +0 -10
  214. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile +0 -40
  215. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile.gcc +0 -75
  216. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.c +0 -258
  217. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -168
  218. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsw +0 -29
  219. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile +0 -28
  220. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile.gcc +0 -44
  221. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.def +0 -4
  222. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsp +0 -178
  223. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsw +0 -29
  224. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLibExports.c +0 -14
  225. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/makefile +0 -34
  226. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/resource.rc +0 -3
  227. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.c +0 -4
  228. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.h +0 -10
  229. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.c +0 -640
  230. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsp +0 -231
  231. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsw +0 -29
  232. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile +0 -37
  233. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile_con +0 -38
  234. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/resource.rc +0 -5
  235. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/setup.ico +0 -0
  236. package/harmony/src/main/cpp/lzma/C/Xz.c +0 -90
  237. package/harmony/src/main/cpp/lzma/C/Xz.h +0 -460
  238. package/harmony/src/main/cpp/lzma/C/XzCrc64.c +0 -86
  239. package/harmony/src/main/cpp/lzma/C/XzCrc64.h +0 -26
  240. package/harmony/src/main/cpp/lzma/C/XzCrc64Opt.c +0 -69
  241. package/harmony/src/main/cpp/lzma/C/XzDec.c +0 -2766
  242. package/harmony/src/main/cpp/lzma/C/XzEnc.c +0 -1329
  243. package/harmony/src/main/cpp/lzma/C/XzEnc.h +0 -60
  244. package/harmony/src/main/cpp/lzma/C/XzIn.c +0 -319
  245. package/harmony/src/main/cpp/lzma/CPP/7zip/7zip.mak +0 -240
  246. package/harmony/src/main/cpp/lzma/CPP/7zip/Aes.mak +0 -7
  247. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.cpp +0 -3
  248. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +0 -76
  249. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +0 -569
  250. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.h +0 -70
  251. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +0 -678
  252. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.h +0 -92
  253. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +0 -423
  254. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +0 -139
  255. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +0 -61
  256. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +0 -763
  257. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.h +0 -181
  258. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +0 -942
  259. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +0 -19
  260. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.h +0 -148
  261. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.cpp +0 -1666
  262. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.h +0 -445
  263. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zItem.h +0 -202
  264. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.cpp +0 -901
  265. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.h +0 -335
  266. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +0 -174
  267. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.h +0 -22
  268. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +0 -21
  269. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +0 -22
  270. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +0 -35
  271. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +0 -2500
  272. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.h +0 -139
  273. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.cpp +0 -3
  274. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.h +0 -8
  275. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive.def +0 -12
  276. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive2.def +0 -19
  277. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/ArchiveExports.cpp +0 -151
  278. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +0 -1125
  279. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +0 -447
  280. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +0 -17
  281. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +0 -25
  282. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +0 -232
  283. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.h +0 -110
  284. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +0 -46
  285. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +0 -67
  286. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +0 -88
  287. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +0 -28
  288. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +0 -191
  289. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.h +0 -89
  290. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +0 -18
  291. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +0 -37
  292. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.cpp +0 -3
  293. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.h +0 -6
  294. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/StdAfx.h +0 -8
  295. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/DllExports2.cpp +0 -122
  296. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/IArchive.h +0 -608
  297. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Icons/7z.ico +0 -0
  298. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/LzmaHandler.cpp +0 -629
  299. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/SplitHandler.cpp +0 -359
  300. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/StdAfx.h +0 -8
  301. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.cpp +0 -1308
  302. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.h +0 -11
  303. package/harmony/src/main/cpp/lzma/CPP/7zip/Asm.mak +0 -9
  304. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +0 -1910
  305. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsw +0 -29
  306. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.cpp +0 -3
  307. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +0 -8
  308. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile +0 -154
  309. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/resource.rc +0 -7
  310. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.cpp +0 -3
  311. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +0 -8
  312. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +0 -96
  313. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/resource.rc +0 -5
  314. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.cpp +0 -3
  315. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +0 -8
  316. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/makefile +0 -116
  317. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/resource.rc +0 -5
  318. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +0 -799
  319. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +0 -477
  320. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsw +0 -29
  321. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.cpp +0 -3
  322. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +0 -8
  323. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile +0 -59
  324. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +0 -195
  325. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/resource.rc +0 -3
  326. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaSpec/LzmaSpec.cpp +0 -715
  327. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/7z.ico +0 -0
  328. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +0 -912
  329. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsw +0 -29
  330. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +0 -482
  331. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.cpp +0 -3
  332. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +0 -8
  333. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile +0 -134
  334. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +0 -5
  335. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +0 -246
  336. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +0 -86
  337. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +0 -137
  338. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +0 -11
  339. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +0 -803
  340. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsw +0 -29
  341. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +0 -364
  342. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.cpp +0 -3
  343. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +0 -13
  344. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/makefile +0 -117
  345. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.h +0 -6
  346. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.rc +0 -16
  347. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/setup.ico +0 -0
  348. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/7z.ico +0 -0
  349. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +0 -988
  350. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsw +0 -29
  351. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +0 -241
  352. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.cpp +0 -3
  353. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +0 -14
  354. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/makefile +0 -153
  355. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.h +0 -1
  356. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -50
  357. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.cpp +0 -250
  358. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.h +0 -120
  359. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.cpp +0 -536
  360. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.h +0 -192
  361. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +0 -46
  362. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.h +0 -10
  363. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.cpp +0 -475
  364. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.h +0 -166
  365. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.cpp +0 -435
  366. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.h +0 -205
  367. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.cpp +0 -163
  368. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.h +0 -92
  369. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +0 -127
  370. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.h +0 -48
  371. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.cpp +0 -367
  372. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.h +0 -252
  373. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.cpp +0 -3
  374. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.h +0 -6
  375. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.cpp +0 -3
  376. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.h +0 -10
  377. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.cpp +0 -509
  378. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.h +0 -264
  379. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.cpp +0 -39
  380. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.h +0 -26
  381. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.cpp +0 -111
  382. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.h +0 -66
  383. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.cpp +0 -51
  384. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.h +0 -35
  385. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/PropId.cpp +0 -108
  386. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterArc.h +0 -78
  387. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterCodec.h +0 -106
  388. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StdAfx.h +0 -8
  389. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.cpp +0 -156
  390. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.h +0 -60
  391. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.cpp +0 -285
  392. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.h +0 -157
  393. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.cpp +0 -56
  394. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.h +0 -13
  395. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.cpp +0 -57
  396. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.h +0 -26
  397. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.cpp +0 -48
  398. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.h +0 -24
  399. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +0 -666
  400. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.h +0 -120
  401. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Register.cpp +0 -24
  402. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.cpp +0 -24
  403. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.h +0 -31
  404. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjRegister.cpp +0 -17
  405. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.cpp +0 -23
  406. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.h +0 -35
  407. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchRegister.cpp +0 -41
  408. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/ByteSwap.cpp +0 -92
  409. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CodecExports.cpp +0 -344
  410. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.cpp +0 -120
  411. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.h +0 -49
  412. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyRegister.cpp +0 -15
  413. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/DeltaFilter.cpp +0 -128
  414. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +0 -265
  415. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.h +0 -96
  416. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +0 -122
  417. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.h +0 -42
  418. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Register.cpp +0 -22
  419. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +0 -343
  420. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.h +0 -113
  421. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +0 -182
  422. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.h +0 -46
  423. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaRegister.cpp +0 -22
  424. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +0 -170
  425. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.h +0 -86
  426. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +0 -152
  427. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.h +0 -58
  428. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdRegister.cpp +0 -22
  429. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/StdAfx.h +0 -8
  430. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.cpp +0 -150
  431. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.h +0 -92
  432. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.cpp +0 -245
  433. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.h +0 -46
  434. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc.mak +0 -8
  435. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc64.mak +0 -8
  436. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.cpp +0 -280
  437. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.h +0 -118
  438. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +0 -17
  439. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.cpp +0 -112
  440. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.h +0 -57
  441. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAesReg.cpp +0 -16
  442. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.cpp +0 -233
  443. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.h +0 -40
  444. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/StdAfx.h +0 -8
  445. package/harmony/src/main/cpp/lzma/CPP/7zip/GuiCommon.rc +0 -84
  446. package/harmony/src/main/cpp/lzma/CPP/7zip/Guid.txt +0 -220
  447. package/harmony/src/main/cpp/lzma/CPP/7zip/ICoder.h +0 -399
  448. package/harmony/src/main/cpp/lzma/CPP/7zip/IDecl.h +0 -28
  449. package/harmony/src/main/cpp/lzma/CPP/7zip/IPassword.h +0 -23
  450. package/harmony/src/main/cpp/lzma/CPP/7zip/IProgress.h +0 -19
  451. package/harmony/src/main/cpp/lzma/CPP/7zip/IStream.h +0 -127
  452. package/harmony/src/main/cpp/lzma/CPP/7zip/LzmaDec.mak +0 -5
  453. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersion.h +0 -2
  454. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersionInfo.rc +0 -2
  455. package/harmony/src/main/cpp/lzma/CPP/7zip/PropID.h +0 -127
  456. package/harmony/src/main/cpp/lzma/CPP/7zip/SubBuild.mak +0 -3
  457. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +0 -993
  458. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +0 -235
  459. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsw +0 -29
  460. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.cpp +0 -3
  461. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.h +0 -8
  462. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile +0 -28
  463. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/resource.rc +0 -3
  464. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +0 -1295
  465. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +0 -136
  466. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +0 -1715
  467. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +0 -403
  468. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +0 -155
  469. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.h +0 -10
  470. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +0 -161
  471. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +0 -112
  472. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.cpp +0 -3618
  473. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.h +0 -77
  474. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.cpp +0 -37
  475. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.h +0 -11
  476. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DirItem.h +0 -190
  477. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +0 -1096
  478. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.h +0 -42
  479. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExitCode.h +0 -27
  480. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.cpp +0 -482
  481. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.h +0 -94
  482. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractMode.h +0 -34
  483. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +0 -280
  484. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +0 -31
  485. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.cpp +0 -347
  486. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.h +0 -110
  487. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +0 -114
  488. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +0 -1074
  489. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.h +0 -424
  490. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +0 -3553
  491. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.h +0 -436
  492. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +0 -668
  493. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.h +0 -18
  494. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Property.h +0 -14
  495. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.cpp +0 -80
  496. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.h +0 -10
  497. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.cpp +0 -25
  498. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.h +0 -10
  499. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/StdAfx.h +0 -8
  500. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.cpp +0 -19
  501. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.h +0 -16
  502. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.cpp +0 -1704
  503. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.h +0 -200
  504. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.cpp +0 -64
  505. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.h +0 -66
  506. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +0 -771
  507. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.h +0 -162
  508. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +0 -233
  509. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.h +0 -27
  510. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +0 -70
  511. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.h +0 -55
  512. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.cpp +0 -94
  513. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.h +0 -26
  514. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ZipRegistry.h +0 -130
  515. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.cpp +0 -41
  516. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.h +0 -14
  517. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.mak +0 -43
  518. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.manifest +0 -13
  519. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +0 -69
  520. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.h +0 -33
  521. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +0 -825
  522. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +0 -164
  523. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.cpp +0 -367
  524. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.h +0 -48
  525. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.cpp +0 -1359
  526. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.h +0 -27
  527. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Main.cpp +0 -1154
  528. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/MainAr.cpp +0 -175
  529. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +0 -115
  530. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +0 -66
  531. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +0 -183
  532. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.h +0 -62
  533. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.cpp +0 -3
  534. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.h +0 -8
  535. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +0 -702
  536. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +0 -124
  537. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +0 -110
  538. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.h +0 -27
  539. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile +0 -64
  540. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/resource.rc +0 -7
  541. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +0 -37
  542. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.h +0 -16
  543. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +0 -1025
  544. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +0 -21
  545. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialogRes.h +0 -9
  546. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +0 -64
  547. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +0 -28
  548. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialogRes.h +0 -4
  549. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/DialogSize.h +0 -16
  550. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +0 -1037
  551. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +0 -328
  552. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.cpp +0 -28
  553. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +0 -14
  554. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/LangUtils.h +0 -40
  555. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +0 -76
  556. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +0 -122
  557. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +0 -69
  558. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +0 -91
  559. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +0 -17
  560. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +0 -58
  561. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +0 -28
  562. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -14
  563. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialogRes.h +0 -5
  564. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +0 -196
  565. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +0 -170
  566. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.rc +0 -12
  567. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +0 -1337
  568. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +0 -351
  569. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.rc +0 -40
  570. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +0 -48
  571. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +0 -80
  572. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialogRes.h +0 -3
  573. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.cpp +0 -23
  574. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.h +0 -10
  575. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -95
  576. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +0 -255
  577. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +0 -62
  578. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resource.h +0 -177
  579. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -15
  580. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/Extract.rc +0 -59
  581. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +0 -418
  582. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +0 -113
  583. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc +0 -98
  584. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h +0 -24
  585. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +0 -280
  586. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +0 -38
  587. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractRes.h +0 -51
  588. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/HashGUI.h +0 -27
  589. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/resource2.h +0 -2
  590. package/harmony/src/main/cpp/lzma/CPP/Build.mak +0 -156
  591. package/harmony/src/main/cpp/lzma/CPP/Common/AutoPtr.h +0 -35
  592. package/harmony/src/main/cpp/lzma/CPP/Common/CRC.cpp +0 -7
  593. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.cpp +0 -92
  594. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.h +0 -53
  595. package/harmony/src/main/cpp/lzma/CPP/Common/ComTry.h +0 -21
  596. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.cpp +0 -197
  597. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.h +0 -63
  598. package/harmony/src/main/cpp/lzma/CPP/Common/Common.h +0 -43
  599. package/harmony/src/main/cpp/lzma/CPP/Common/CrcReg.cpp +0 -98
  600. package/harmony/src/main/cpp/lzma/CPP/Common/Defs.h +0 -15
  601. package/harmony/src/main/cpp/lzma/CPP/Common/DynamicBuffer.h +0 -64
  602. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.cpp +0 -193
  603. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.h +0 -28
  604. package/harmony/src/main/cpp/lzma/CPP/Common/Lang.h +0 -23
  605. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.cpp +0 -132
  606. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.h +0 -18
  607. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer.h +0 -259
  608. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer2.h +0 -100
  609. package/harmony/src/main/cpp/lzma/CPP/Common/MyCom.h +0 -277
  610. package/harmony/src/main/cpp/lzma/CPP/Common/MyException.h +0 -14
  611. package/harmony/src/main/cpp/lzma/CPP/Common/MyGuidDef.h +0 -54
  612. package/harmony/src/main/cpp/lzma/CPP/Common/MyInitGuid.h +0 -45
  613. package/harmony/src/main/cpp/lzma/CPP/Common/MyLinux.h +0 -42
  614. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.cpp +0 -1659
  615. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.h +0 -868
  616. package/harmony/src/main/cpp/lzma/CPP/Common/MyTypes.h +0 -35
  617. package/harmony/src/main/cpp/lzma/CPP/Common/MyUnknown.h +0 -17
  618. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.cpp +0 -3
  619. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.h +0 -634
  620. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.cpp +0 -145
  621. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.h +0 -231
  622. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.cpp +0 -163
  623. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.h +0 -88
  624. package/harmony/src/main/cpp/lzma/CPP/Common/Sha256Reg.cpp +0 -40
  625. package/harmony/src/main/cpp/lzma/CPP/Common/StdAfx.h +0 -8
  626. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.cpp +0 -89
  627. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.h +0 -38
  628. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.cpp +0 -163
  629. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.h +0 -71
  630. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.cpp +0 -319
  631. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.h +0 -88
  632. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.cpp +0 -144
  633. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.h +0 -21
  634. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.cpp +0 -124
  635. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.h +0 -19
  636. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.cpp +0 -288
  637. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.h +0 -12
  638. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.cpp +0 -676
  639. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.h +0 -149
  640. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Init.cpp +0 -7
  641. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Reg.cpp +0 -42
  642. package/harmony/src/main/cpp/lzma/CPP/Windows/COM.h +0 -70
  643. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.cpp +0 -185
  644. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.h +0 -23
  645. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.cpp +0 -66
  646. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.h +0 -65
  647. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/CommandBar.h +0 -52
  648. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.cpp +0 -251
  649. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.h +0 -170
  650. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Edit.h +0 -19
  651. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.cpp +0 -10
  652. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.h +0 -87
  653. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.cpp +0 -155
  654. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.h +0 -146
  655. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ProgressBar.h +0 -35
  656. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.cpp +0 -143
  657. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.h +0 -50
  658. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ReBar.h +0 -34
  659. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Static.h +0 -28
  660. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StatusBar.h +0 -42
  661. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StdAfx.h +0 -8
  662. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ToolBar.h +0 -43
  663. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Trackbar.h +0 -27
  664. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.cpp +0 -200
  665. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.h +0 -51
  666. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.cpp +0 -109
  667. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.h +0 -58
  668. package/harmony/src/main/cpp/lzma/CPP/Windows/Defs.h +0 -17
  669. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.cpp +0 -66
  670. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.h +0 -15
  671. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.cpp +0 -714
  672. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.h +0 -117
  673. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.cpp +0 -749
  674. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.h +0 -161
  675. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.cpp +0 -432
  676. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.h +0 -212
  677. package/harmony/src/main/cpp/lzma/CPP/Windows/FileLink.cpp +0 -440
  678. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.cpp +0 -12
  679. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.h +0 -66
  680. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.cpp +0 -839
  681. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.h +0 -115
  682. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.cpp +0 -131
  683. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.h +0 -27
  684. package/harmony/src/main/cpp/lzma/CPP/Windows/Handle.h +0 -37
  685. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.cpp +0 -112
  686. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.h +0 -40
  687. package/harmony/src/main/cpp/lzma/CPP/Windows/NtCheck.h +0 -46
  688. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.cpp +0 -347
  689. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.h +0 -114
  690. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.cpp +0 -138
  691. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.h +0 -37
  692. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.cpp +0 -390
  693. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.h +0 -84
  694. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.cpp +0 -103
  695. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.h +0 -16
  696. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.cpp +0 -181
  697. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.h +0 -167
  698. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.cpp +0 -358
  699. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.h +0 -94
  700. package/harmony/src/main/cpp/lzma/CPP/Windows/StdAfx.h +0 -8
  701. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.cpp +0 -10
  702. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.h +0 -164
  703. package/harmony/src/main/cpp/lzma/CPP/Windows/System.cpp +0 -142
  704. package/harmony/src/main/cpp/lzma/CPP/Windows/System.h +0 -40
  705. package/harmony/src/main/cpp/lzma/CPP/Windows/Thread.h +0 -38
  706. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.cpp +0 -213
  707. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.h +0 -32
  708. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.cpp +0 -179
  709. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.h +0 -284
  710. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CRC.cs +0 -55
  711. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CommandLineParser.cs +0 -274
  712. package/harmony/src/main/cpp/lzma/CS/7zip/Common/InBuffer.cs +0 -72
  713. package/harmony/src/main/cpp/lzma/CS/7zip/Common/OutBuffer.cs +0 -47
  714. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/IMatchFinder.cs +0 -24
  715. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzBinTree.cs +0 -367
  716. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzInWindow.cs +0 -132
  717. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzOutWindow.cs +0 -110
  718. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaBase.cs +0 -76
  719. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaDecoder.cs +0 -398
  720. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaEncoder.cs +0 -1480
  721. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.cs +0 -364
  722. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +0 -90
  723. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.sln +0 -20
  724. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaBench.cs +0 -340
  725. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/AssemblyInfo.cs +0 -29
  726. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Resources.cs +0 -70
  727. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Settings.cs +0 -42
  728. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoder.cs +0 -234
  729. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBit.cs +0 -117
  730. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBitTree.cs +0 -157
  731. package/harmony/src/main/cpp/lzma/CS/7zip/ICoder.cs +0 -157
  732. package/harmony/src/main/cpp/lzma/DOC/7zC.txt +0 -187
  733. package/harmony/src/main/cpp/lzma/DOC/7zFormat.txt +0 -469
  734. package/harmony/src/main/cpp/lzma/DOC/Methods.txt +0 -173
  735. package/harmony/src/main/cpp/lzma/DOC/installer.txt +0 -166
  736. package/harmony/src/main/cpp/lzma/DOC/lzma-history.txt +0 -446
  737. package/harmony/src/main/cpp/lzma/DOC/lzma-sdk.txt +0 -357
  738. package/harmony/src/main/cpp/lzma/DOC/lzma-specification.txt +0 -1176
  739. package/harmony/src/main/cpp/lzma/DOC/lzma.txt +0 -328
  740. package/harmony/src/main/cpp/lzma/Java/SevenZip/CRC.java +0 -52
  741. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/BinTree.java +0 -382
  742. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/InWindow.java +0 -131
  743. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/OutWindow.java +0 -85
  744. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Base.java +0 -88
  745. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Decoder.java +0 -329
  746. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Encoder.java +0 -1416
  747. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeDecoder.java +0 -55
  748. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeEncoder.java +0 -99
  749. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Decoder.java +0 -88
  750. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Encoder.java +0 -151
  751. package/harmony/src/main/cpp/lzma/Java/SevenZip/ICodeProgress.java +0 -6
  752. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaAlone.java +0 -253
  753. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaBench.java +0 -392
  754. package/harmony/src/main/cpp/lzma/bin/7zS2.sfx +0 -0
  755. package/harmony/src/main/cpp/lzma/bin/7zS2con.sfx +0 -0
  756. package/harmony/src/main/cpp/lzma/bin/7zSD.sfx +0 -0
  757. package/harmony/src/main/cpp/lzma/bin/7zdec.exe +0 -0
  758. package/harmony/src/main/cpp/lzma/bin/7zr.exe +0 -0
  759. package/harmony/src/main/cpp/lzma/bin/installer/config.txt +0 -5
  760. package/harmony/src/main/cpp/lzma/bin/installer/cr.bat +0 -5
  761. package/harmony/src/main/cpp/lzma/bin/lzma.exe +0 -0
  762. package/harmony/src/main/cpp/lzma/bin/x64/7zr.exe +0 -0
@@ -1,1771 +0,0 @@
1
- /* 7zArcIn.c -- 7z Input functions
2
- 2018-12-31 : Igor Pavlov : Public domain */
3
-
4
- #include "Precomp.h"
5
-
6
- #include <string.h>
7
-
8
- #include "7z.h"
9
- #include "7zBuf.h"
10
- #include "7zCrc.h"
11
- #include "CpuArch.h"
12
-
13
- #define MY_ALLOC(T, p, size, alloc) { \
14
- if ((p = (T *)ISzAlloc_Alloc(alloc, (size) * sizeof(T))) == NULL) return SZ_ERROR_MEM; }
15
-
16
- #define MY_ALLOC_ZE(T, p, size, alloc) { if ((size) == 0) p = NULL; else MY_ALLOC(T, p, size, alloc) }
17
-
18
- #define MY_ALLOC_AND_CPY(to, size, from, alloc) \
19
- { MY_ALLOC(Byte, to, size, alloc); memcpy(to, from, size); }
20
-
21
- #define MY_ALLOC_ZE_AND_CPY(to, size, from, alloc) \
22
- { if ((size) == 0) to = NULL; else { MY_ALLOC_AND_CPY(to, size, from, alloc) } }
23
-
24
- #define k7zMajorVersion 0
25
-
26
- enum EIdEnum
27
- {
28
- k7zIdEnd,
29
- k7zIdHeader,
30
- k7zIdArchiveProperties,
31
- k7zIdAdditionalStreamsInfo,
32
- k7zIdMainStreamsInfo,
33
- k7zIdFilesInfo,
34
- k7zIdPackInfo,
35
- k7zIdUnpackInfo,
36
- k7zIdSubStreamsInfo,
37
- k7zIdSize,
38
- k7zIdCRC,
39
- k7zIdFolder,
40
- k7zIdCodersUnpackSize,
41
- k7zIdNumUnpackStream,
42
- k7zIdEmptyStream,
43
- k7zIdEmptyFile,
44
- k7zIdAnti,
45
- k7zIdName,
46
- k7zIdCTime,
47
- k7zIdATime,
48
- k7zIdMTime,
49
- k7zIdWinAttrib,
50
- k7zIdComment,
51
- k7zIdEncodedHeader,
52
- k7zIdStartPos,
53
- k7zIdDummy
54
- // k7zNtSecure,
55
- // k7zParent,
56
- // k7zIsReal
57
- };
58
-
59
- const Byte k7zSignature[k7zSignatureSize] = {'7', 'z', 0xBC, 0xAF, 0x27, 0x1C};
60
-
61
- #define SzBitUi32s_Init(p) { (p)->Defs = NULL; (p)->Vals = NULL; }
62
-
63
- static SRes SzBitUi32s_Alloc(CSzBitUi32s *p, size_t num, ISzAllocPtr alloc)
64
- {
65
- if (num == 0)
66
- {
67
- p->Defs = NULL;
68
- p->Vals = NULL;
69
- }
70
- else
71
- {
72
- MY_ALLOC(Byte, p->Defs, (num + 7) >> 3, alloc);
73
- MY_ALLOC(UInt32, p->Vals, num, alloc);
74
- }
75
- return SZ_OK;
76
- }
77
-
78
- void SzBitUi32s_Free(CSzBitUi32s *p, ISzAllocPtr alloc)
79
- {
80
- ISzAlloc_Free(alloc, p->Defs); p->Defs = NULL;
81
- ISzAlloc_Free(alloc, p->Vals); p->Vals = NULL;
82
- }
83
-
84
- #define SzBitUi64s_Init(p) { (p)->Defs = NULL; (p)->Vals = NULL; }
85
-
86
- void SzBitUi64s_Free(CSzBitUi64s *p, ISzAllocPtr alloc)
87
- {
88
- ISzAlloc_Free(alloc, p->Defs); p->Defs = NULL;
89
- ISzAlloc_Free(alloc, p->Vals); p->Vals = NULL;
90
- }
91
-
92
-
93
- static void SzAr_Init(CSzAr *p)
94
- {
95
- p->NumPackStreams = 0;
96
- p->NumFolders = 0;
97
-
98
- p->PackPositions = NULL;
99
- SzBitUi32s_Init(&p->FolderCRCs);
100
-
101
- p->FoCodersOffsets = NULL;
102
- p->FoStartPackStreamIndex = NULL;
103
- p->FoToCoderUnpackSizes = NULL;
104
- p->FoToMainUnpackSizeIndex = NULL;
105
- p->CoderUnpackSizes = NULL;
106
-
107
- p->CodersData = NULL;
108
- }
109
-
110
- static void SzAr_Free(CSzAr *p, ISzAllocPtr alloc)
111
- {
112
- ISzAlloc_Free(alloc, p->PackPositions);
113
- SzBitUi32s_Free(&p->FolderCRCs, alloc);
114
-
115
- ISzAlloc_Free(alloc, p->FoCodersOffsets);
116
- ISzAlloc_Free(alloc, p->FoStartPackStreamIndex);
117
- ISzAlloc_Free(alloc, p->FoToCoderUnpackSizes);
118
- ISzAlloc_Free(alloc, p->FoToMainUnpackSizeIndex);
119
- ISzAlloc_Free(alloc, p->CoderUnpackSizes);
120
-
121
- ISzAlloc_Free(alloc, p->CodersData);
122
-
123
- SzAr_Init(p);
124
- }
125
-
126
-
127
- void SzArEx_Init(CSzArEx *p)
128
- {
129
- SzAr_Init(&p->db);
130
-
131
- p->NumFiles = 0;
132
- p->dataPos = 0;
133
-
134
- p->UnpackPositions = NULL;
135
- p->IsDirs = NULL;
136
-
137
- p->FolderToFile = NULL;
138
- p->FileToFolder = NULL;
139
-
140
- p->FileNameOffsets = NULL;
141
- p->FileNames = NULL;
142
-
143
- SzBitUi32s_Init(&p->CRCs);
144
- SzBitUi32s_Init(&p->Attribs);
145
- // SzBitUi32s_Init(&p->Parents);
146
- SzBitUi64s_Init(&p->MTime);
147
- SzBitUi64s_Init(&p->CTime);
148
- }
149
-
150
- void SzArEx_Free(CSzArEx *p, ISzAllocPtr alloc)
151
- {
152
- ISzAlloc_Free(alloc, p->UnpackPositions);
153
- ISzAlloc_Free(alloc, p->IsDirs);
154
-
155
- ISzAlloc_Free(alloc, p->FolderToFile);
156
- ISzAlloc_Free(alloc, p->FileToFolder);
157
-
158
- ISzAlloc_Free(alloc, p->FileNameOffsets);
159
- ISzAlloc_Free(alloc, p->FileNames);
160
-
161
- SzBitUi32s_Free(&p->CRCs, alloc);
162
- SzBitUi32s_Free(&p->Attribs, alloc);
163
- // SzBitUi32s_Free(&p->Parents, alloc);
164
- SzBitUi64s_Free(&p->MTime, alloc);
165
- SzBitUi64s_Free(&p->CTime, alloc);
166
-
167
- SzAr_Free(&p->db, alloc);
168
- SzArEx_Init(p);
169
- }
170
-
171
-
172
- static int TestSignatureCandidate(const Byte *testBytes)
173
- {
174
- unsigned i;
175
- for (i = 0; i < k7zSignatureSize; i++)
176
- if (testBytes[i] != k7zSignature[i])
177
- return 0;
178
- return 1;
179
- }
180
-
181
- #define SzData_Clear(p) { (p)->Data = NULL; (p)->Size = 0; }
182
-
183
- #define SZ_READ_BYTE_SD(_sd_, dest) if ((_sd_)->Size == 0) return SZ_ERROR_ARCHIVE; (_sd_)->Size--; dest = *(_sd_)->Data++;
184
- #define SZ_READ_BYTE(dest) SZ_READ_BYTE_SD(sd, dest)
185
- #define SZ_READ_BYTE_2(dest) if (sd.Size == 0) return SZ_ERROR_ARCHIVE; sd.Size--; dest = *sd.Data++;
186
-
187
- #define SKIP_DATA(sd, size) { sd->Size -= (size_t)(size); sd->Data += (size_t)(size); }
188
- #define SKIP_DATA2(sd, size) { sd.Size -= (size_t)(size); sd.Data += (size_t)(size); }
189
-
190
- #define SZ_READ_32(dest) if (sd.Size < 4) return SZ_ERROR_ARCHIVE; \
191
- dest = GetUi32(sd.Data); SKIP_DATA2(sd, 4);
192
-
193
- static MY_NO_INLINE SRes ReadNumber(CSzData *sd, UInt64 *value)
194
- {
195
- Byte firstByte, mask;
196
- unsigned i;
197
- UInt32 v;
198
-
199
- SZ_READ_BYTE(firstByte);
200
- if ((firstByte & 0x80) == 0)
201
- {
202
- *value = firstByte;
203
- return SZ_OK;
204
- }
205
- SZ_READ_BYTE(v);
206
- if ((firstByte & 0x40) == 0)
207
- {
208
- *value = (((UInt32)firstByte & 0x3F) << 8) | v;
209
- return SZ_OK;
210
- }
211
- SZ_READ_BYTE(mask);
212
- *value = v | ((UInt32)mask << 8);
213
- mask = 0x20;
214
- for (i = 2; i < 8; i++)
215
- {
216
- Byte b;
217
- if ((firstByte & mask) == 0)
218
- {
219
- UInt64 highPart = (unsigned)firstByte & (unsigned)(mask - 1);
220
- *value |= (highPart << (8 * i));
221
- return SZ_OK;
222
- }
223
- SZ_READ_BYTE(b);
224
- *value |= ((UInt64)b << (8 * i));
225
- mask >>= 1;
226
- }
227
- return SZ_OK;
228
- }
229
-
230
-
231
- static MY_NO_INLINE SRes SzReadNumber32(CSzData *sd, UInt32 *value)
232
- {
233
- Byte firstByte;
234
- UInt64 value64;
235
- if (sd->Size == 0)
236
- return SZ_ERROR_ARCHIVE;
237
- firstByte = *sd->Data;
238
- if ((firstByte & 0x80) == 0)
239
- {
240
- *value = firstByte;
241
- sd->Data++;
242
- sd->Size--;
243
- return SZ_OK;
244
- }
245
- RINOK(ReadNumber(sd, &value64));
246
- if (value64 >= (UInt32)0x80000000 - 1)
247
- return SZ_ERROR_UNSUPPORTED;
248
- if (value64 >= ((UInt64)(1) << ((sizeof(size_t) - 1) * 8 + 4)))
249
- return SZ_ERROR_UNSUPPORTED;
250
- *value = (UInt32)value64;
251
- return SZ_OK;
252
- }
253
-
254
- #define ReadID(sd, value) ReadNumber(sd, value)
255
-
256
- static SRes SkipData(CSzData *sd)
257
- {
258
- UInt64 size;
259
- RINOK(ReadNumber(sd, &size));
260
- if (size > sd->Size)
261
- return SZ_ERROR_ARCHIVE;
262
- SKIP_DATA(sd, size);
263
- return SZ_OK;
264
- }
265
-
266
- static SRes WaitId(CSzData *sd, UInt32 id)
267
- {
268
- for (;;)
269
- {
270
- UInt64 type;
271
- RINOK(ReadID(sd, &type));
272
- if (type == id)
273
- return SZ_OK;
274
- if (type == k7zIdEnd)
275
- return SZ_ERROR_ARCHIVE;
276
- RINOK(SkipData(sd));
277
- }
278
- }
279
-
280
- static SRes RememberBitVector(CSzData *sd, UInt32 numItems, const Byte **v)
281
- {
282
- UInt32 numBytes = (numItems + 7) >> 3;
283
- if (numBytes > sd->Size)
284
- return SZ_ERROR_ARCHIVE;
285
- *v = sd->Data;
286
- SKIP_DATA(sd, numBytes);
287
- return SZ_OK;
288
- }
289
-
290
- static UInt32 CountDefinedBits(const Byte *bits, UInt32 numItems)
291
- {
292
- Byte b = 0;
293
- unsigned m = 0;
294
- UInt32 sum = 0;
295
- for (; numItems != 0; numItems--)
296
- {
297
- if (m == 0)
298
- {
299
- b = *bits++;
300
- m = 8;
301
- }
302
- m--;
303
- sum += ((b >> m) & 1);
304
- }
305
- return sum;
306
- }
307
-
308
- static MY_NO_INLINE SRes ReadBitVector(CSzData *sd, UInt32 numItems, Byte **v, ISzAllocPtr alloc)
309
- {
310
- Byte allAreDefined;
311
- Byte *v2;
312
- UInt32 numBytes = (numItems + 7) >> 3;
313
- *v = NULL;
314
- SZ_READ_BYTE(allAreDefined);
315
- if (numBytes == 0)
316
- return SZ_OK;
317
- if (allAreDefined == 0)
318
- {
319
- if (numBytes > sd->Size)
320
- return SZ_ERROR_ARCHIVE;
321
- MY_ALLOC_AND_CPY(*v, numBytes, sd->Data, alloc);
322
- SKIP_DATA(sd, numBytes);
323
- return SZ_OK;
324
- }
325
- MY_ALLOC(Byte, *v, numBytes, alloc);
326
- v2 = *v;
327
- memset(v2, 0xFF, (size_t)numBytes);
328
- {
329
- unsigned numBits = (unsigned)numItems & 7;
330
- if (numBits != 0)
331
- v2[(size_t)numBytes - 1] = (Byte)((((UInt32)1 << numBits) - 1) << (8 - numBits));
332
- }
333
- return SZ_OK;
334
- }
335
-
336
- static MY_NO_INLINE SRes ReadUi32s(CSzData *sd2, UInt32 numItems, CSzBitUi32s *crcs, ISzAllocPtr alloc)
337
- {
338
- UInt32 i;
339
- CSzData sd;
340
- UInt32 *vals;
341
- const Byte *defs;
342
- MY_ALLOC_ZE(UInt32, crcs->Vals, numItems, alloc);
343
- sd = *sd2;
344
- defs = crcs->Defs;
345
- vals = crcs->Vals;
346
- for (i = 0; i < numItems; i++)
347
- if (SzBitArray_Check(defs, i))
348
- {
349
- SZ_READ_32(vals[i]);
350
- }
351
- else
352
- vals[i] = 0;
353
- *sd2 = sd;
354
- return SZ_OK;
355
- }
356
-
357
- static SRes ReadBitUi32s(CSzData *sd, UInt32 numItems, CSzBitUi32s *crcs, ISzAllocPtr alloc)
358
- {
359
- SzBitUi32s_Free(crcs, alloc);
360
- RINOK(ReadBitVector(sd, numItems, &crcs->Defs, alloc));
361
- return ReadUi32s(sd, numItems, crcs, alloc);
362
- }
363
-
364
- static SRes SkipBitUi32s(CSzData *sd, UInt32 numItems)
365
- {
366
- Byte allAreDefined;
367
- UInt32 numDefined = numItems;
368
- SZ_READ_BYTE(allAreDefined);
369
- if (!allAreDefined)
370
- {
371
- size_t numBytes = (numItems + 7) >> 3;
372
- if (numBytes > sd->Size)
373
- return SZ_ERROR_ARCHIVE;
374
- numDefined = CountDefinedBits(sd->Data, numItems);
375
- SKIP_DATA(sd, numBytes);
376
- }
377
- if (numDefined > (sd->Size >> 2))
378
- return SZ_ERROR_ARCHIVE;
379
- SKIP_DATA(sd, (size_t)numDefined * 4);
380
- return SZ_OK;
381
- }
382
-
383
- static SRes ReadPackInfo(CSzAr *p, CSzData *sd, ISzAllocPtr alloc)
384
- {
385
- RINOK(SzReadNumber32(sd, &p->NumPackStreams));
386
-
387
- RINOK(WaitId(sd, k7zIdSize));
388
- MY_ALLOC(UInt64, p->PackPositions, (size_t)p->NumPackStreams + 1, alloc);
389
- {
390
- UInt64 sum = 0;
391
- UInt32 i;
392
- UInt32 numPackStreams = p->NumPackStreams;
393
- for (i = 0; i < numPackStreams; i++)
394
- {
395
- UInt64 packSize;
396
- p->PackPositions[i] = sum;
397
- RINOK(ReadNumber(sd, &packSize));
398
- sum += packSize;
399
- if (sum < packSize)
400
- return SZ_ERROR_ARCHIVE;
401
- }
402
- p->PackPositions[i] = sum;
403
- }
404
-
405
- for (;;)
406
- {
407
- UInt64 type;
408
- RINOK(ReadID(sd, &type));
409
- if (type == k7zIdEnd)
410
- return SZ_OK;
411
- if (type == k7zIdCRC)
412
- {
413
- /* CRC of packed streams is unused now */
414
- RINOK(SkipBitUi32s(sd, p->NumPackStreams));
415
- continue;
416
- }
417
- RINOK(SkipData(sd));
418
- }
419
- }
420
-
421
- /*
422
- static SRes SzReadSwitch(CSzData *sd)
423
- {
424
- Byte external;
425
- RINOK(SzReadByte(sd, &external));
426
- return (external == 0) ? SZ_OK: SZ_ERROR_UNSUPPORTED;
427
- }
428
- */
429
-
430
- #define k_NumCodersStreams_in_Folder_MAX (SZ_NUM_BONDS_IN_FOLDER_MAX + SZ_NUM_PACK_STREAMS_IN_FOLDER_MAX)
431
-
432
- SRes SzGetNextFolderItem(CSzFolder *f, CSzData *sd)
433
- {
434
- UInt32 numCoders, i;
435
- UInt32 numInStreams = 0;
436
- const Byte *dataStart = sd->Data;
437
-
438
- f->NumCoders = 0;
439
- f->NumBonds = 0;
440
- f->NumPackStreams = 0;
441
- f->UnpackStream = 0;
442
-
443
- RINOK(SzReadNumber32(sd, &numCoders));
444
- if (numCoders == 0 || numCoders > SZ_NUM_CODERS_IN_FOLDER_MAX)
445
- return SZ_ERROR_UNSUPPORTED;
446
-
447
- for (i = 0; i < numCoders; i++)
448
- {
449
- Byte mainByte;
450
- CSzCoderInfo *coder = f->Coders + i;
451
- unsigned idSize, j;
452
- UInt64 id;
453
-
454
- SZ_READ_BYTE(mainByte);
455
- if ((mainByte & 0xC0) != 0)
456
- return SZ_ERROR_UNSUPPORTED;
457
-
458
- idSize = (unsigned)(mainByte & 0xF);
459
- if (idSize > sizeof(id))
460
- return SZ_ERROR_UNSUPPORTED;
461
- if (idSize > sd->Size)
462
- return SZ_ERROR_ARCHIVE;
463
- id = 0;
464
- for (j = 0; j < idSize; j++)
465
- {
466
- id = ((id << 8) | *sd->Data);
467
- sd->Data++;
468
- sd->Size--;
469
- }
470
- if (id > (UInt32)0xFFFFFFFF)
471
- return SZ_ERROR_UNSUPPORTED;
472
- coder->MethodID = (UInt32)id;
473
-
474
- coder->NumStreams = 1;
475
- coder->PropsOffset = 0;
476
- coder->PropsSize = 0;
477
-
478
- if ((mainByte & 0x10) != 0)
479
- {
480
- UInt32 numStreams;
481
-
482
- RINOK(SzReadNumber32(sd, &numStreams));
483
- if (numStreams > k_NumCodersStreams_in_Folder_MAX)
484
- return SZ_ERROR_UNSUPPORTED;
485
- coder->NumStreams = (Byte)numStreams;
486
-
487
- RINOK(SzReadNumber32(sd, &numStreams));
488
- if (numStreams != 1)
489
- return SZ_ERROR_UNSUPPORTED;
490
- }
491
-
492
- numInStreams += coder->NumStreams;
493
-
494
- if (numInStreams > k_NumCodersStreams_in_Folder_MAX)
495
- return SZ_ERROR_UNSUPPORTED;
496
-
497
- if ((mainByte & 0x20) != 0)
498
- {
499
- UInt32 propsSize = 0;
500
- RINOK(SzReadNumber32(sd, &propsSize));
501
- if (propsSize > sd->Size)
502
- return SZ_ERROR_ARCHIVE;
503
- if (propsSize >= 0x80)
504
- return SZ_ERROR_UNSUPPORTED;
505
- coder->PropsOffset = sd->Data - dataStart;
506
- coder->PropsSize = (Byte)propsSize;
507
- sd->Data += (size_t)propsSize;
508
- sd->Size -= (size_t)propsSize;
509
- }
510
- }
511
-
512
- /*
513
- if (numInStreams == 1 && numCoders == 1)
514
- {
515
- f->NumPackStreams = 1;
516
- f->PackStreams[0] = 0;
517
- }
518
- else
519
- */
520
- {
521
- Byte streamUsed[k_NumCodersStreams_in_Folder_MAX];
522
- UInt32 numBonds, numPackStreams;
523
-
524
- numBonds = numCoders - 1;
525
- if (numInStreams < numBonds)
526
- return SZ_ERROR_ARCHIVE;
527
- if (numBonds > SZ_NUM_BONDS_IN_FOLDER_MAX)
528
- return SZ_ERROR_UNSUPPORTED;
529
- f->NumBonds = numBonds;
530
-
531
- numPackStreams = numInStreams - numBonds;
532
- if (numPackStreams > SZ_NUM_PACK_STREAMS_IN_FOLDER_MAX)
533
- return SZ_ERROR_UNSUPPORTED;
534
- f->NumPackStreams = numPackStreams;
535
-
536
- for (i = 0; i < numInStreams; i++)
537
- streamUsed[i] = False;
538
-
539
- if (numBonds != 0)
540
- {
541
- Byte coderUsed[SZ_NUM_CODERS_IN_FOLDER_MAX];
542
-
543
- for (i = 0; i < numCoders; i++)
544
- coderUsed[i] = False;
545
-
546
- for (i = 0; i < numBonds; i++)
547
- {
548
- CSzBond *bp = f->Bonds + i;
549
-
550
- RINOK(SzReadNumber32(sd, &bp->InIndex));
551
- if (bp->InIndex >= numInStreams || streamUsed[bp->InIndex])
552
- return SZ_ERROR_ARCHIVE;
553
- streamUsed[bp->InIndex] = True;
554
-
555
- RINOK(SzReadNumber32(sd, &bp->OutIndex));
556
- if (bp->OutIndex >= numCoders || coderUsed[bp->OutIndex])
557
- return SZ_ERROR_ARCHIVE;
558
- coderUsed[bp->OutIndex] = True;
559
- }
560
-
561
- for (i = 0; i < numCoders; i++)
562
- if (!coderUsed[i])
563
- {
564
- f->UnpackStream = i;
565
- break;
566
- }
567
-
568
- if (i == numCoders)
569
- return SZ_ERROR_ARCHIVE;
570
- }
571
-
572
- if (numPackStreams == 1)
573
- {
574
- for (i = 0; i < numInStreams; i++)
575
- if (!streamUsed[i])
576
- break;
577
- if (i == numInStreams)
578
- return SZ_ERROR_ARCHIVE;
579
- f->PackStreams[0] = i;
580
- }
581
- else
582
- for (i = 0; i < numPackStreams; i++)
583
- {
584
- UInt32 index;
585
- RINOK(SzReadNumber32(sd, &index));
586
- if (index >= numInStreams || streamUsed[index])
587
- return SZ_ERROR_ARCHIVE;
588
- streamUsed[index] = True;
589
- f->PackStreams[i] = index;
590
- }
591
- }
592
-
593
- f->NumCoders = numCoders;
594
-
595
- return SZ_OK;
596
- }
597
-
598
-
599
- static MY_NO_INLINE SRes SkipNumbers(CSzData *sd2, UInt32 num)
600
- {
601
- CSzData sd;
602
- sd = *sd2;
603
- for (; num != 0; num--)
604
- {
605
- Byte firstByte, mask;
606
- unsigned i;
607
- SZ_READ_BYTE_2(firstByte);
608
- if ((firstByte & 0x80) == 0)
609
- continue;
610
- if ((firstByte & 0x40) == 0)
611
- {
612
- if (sd.Size == 0)
613
- return SZ_ERROR_ARCHIVE;
614
- sd.Size--;
615
- sd.Data++;
616
- continue;
617
- }
618
- mask = 0x20;
619
- for (i = 2; i < 8 && (firstByte & mask) != 0; i++)
620
- mask >>= 1;
621
- if (i > sd.Size)
622
- return SZ_ERROR_ARCHIVE;
623
- SKIP_DATA2(sd, i);
624
- }
625
- *sd2 = sd;
626
- return SZ_OK;
627
- }
628
-
629
-
630
- #define k_Scan_NumCoders_MAX 64
631
- #define k_Scan_NumCodersStreams_in_Folder_MAX 64
632
-
633
-
634
- static SRes ReadUnpackInfo(CSzAr *p,
635
- CSzData *sd2,
636
- UInt32 numFoldersMax,
637
- const CBuf *tempBufs, UInt32 numTempBufs,
638
- ISzAllocPtr alloc)
639
- {
640
- CSzData sd;
641
-
642
- UInt32 fo, numFolders, numCodersOutStreams, packStreamIndex;
643
- const Byte *startBufPtr;
644
- Byte external;
645
-
646
- RINOK(WaitId(sd2, k7zIdFolder));
647
-
648
- RINOK(SzReadNumber32(sd2, &numFolders));
649
- if (numFolders > numFoldersMax)
650
- return SZ_ERROR_UNSUPPORTED;
651
- p->NumFolders = numFolders;
652
-
653
- SZ_READ_BYTE_SD(sd2, external);
654
- if (external == 0)
655
- sd = *sd2;
656
- else
657
- {
658
- UInt32 index;
659
- RINOK(SzReadNumber32(sd2, &index));
660
- if (index >= numTempBufs)
661
- return SZ_ERROR_ARCHIVE;
662
- sd.Data = tempBufs[index].data;
663
- sd.Size = tempBufs[index].size;
664
- }
665
-
666
- MY_ALLOC(size_t, p->FoCodersOffsets, (size_t)numFolders + 1, alloc);
667
- MY_ALLOC(UInt32, p->FoStartPackStreamIndex, (size_t)numFolders + 1, alloc);
668
- MY_ALLOC(UInt32, p->FoToCoderUnpackSizes, (size_t)numFolders + 1, alloc);
669
- MY_ALLOC_ZE(Byte, p->FoToMainUnpackSizeIndex, (size_t)numFolders, alloc);
670
-
671
- startBufPtr = sd.Data;
672
-
673
- packStreamIndex = 0;
674
- numCodersOutStreams = 0;
675
-
676
- for (fo = 0; fo < numFolders; fo++)
677
- {
678
- UInt32 numCoders, ci, numInStreams = 0;
679
-
680
- p->FoCodersOffsets[fo] = sd.Data - startBufPtr;
681
-
682
- RINOK(SzReadNumber32(&sd, &numCoders));
683
- if (numCoders == 0 || numCoders > k_Scan_NumCoders_MAX)
684
- return SZ_ERROR_UNSUPPORTED;
685
-
686
- for (ci = 0; ci < numCoders; ci++)
687
- {
688
- Byte mainByte;
689
- unsigned idSize;
690
- UInt32 coderInStreams;
691
-
692
- SZ_READ_BYTE_2(mainByte);
693
- if ((mainByte & 0xC0) != 0)
694
- return SZ_ERROR_UNSUPPORTED;
695
- idSize = (mainByte & 0xF);
696
- if (idSize > 8)
697
- return SZ_ERROR_UNSUPPORTED;
698
- if (idSize > sd.Size)
699
- return SZ_ERROR_ARCHIVE;
700
- SKIP_DATA2(sd, idSize);
701
-
702
- coderInStreams = 1;
703
-
704
- if ((mainByte & 0x10) != 0)
705
- {
706
- UInt32 coderOutStreams;
707
- RINOK(SzReadNumber32(&sd, &coderInStreams));
708
- RINOK(SzReadNumber32(&sd, &coderOutStreams));
709
- if (coderInStreams > k_Scan_NumCodersStreams_in_Folder_MAX || coderOutStreams != 1)
710
- return SZ_ERROR_UNSUPPORTED;
711
- }
712
-
713
- numInStreams += coderInStreams;
714
-
715
- if ((mainByte & 0x20) != 0)
716
- {
717
- UInt32 propsSize;
718
- RINOK(SzReadNumber32(&sd, &propsSize));
719
- if (propsSize > sd.Size)
720
- return SZ_ERROR_ARCHIVE;
721
- SKIP_DATA2(sd, propsSize);
722
- }
723
- }
724
-
725
- {
726
- UInt32 indexOfMainStream = 0;
727
- UInt32 numPackStreams = 1;
728
-
729
- if (numCoders != 1 || numInStreams != 1)
730
- {
731
- Byte streamUsed[k_Scan_NumCodersStreams_in_Folder_MAX];
732
- Byte coderUsed[k_Scan_NumCoders_MAX];
733
-
734
- UInt32 i;
735
- UInt32 numBonds = numCoders - 1;
736
- if (numInStreams < numBonds)
737
- return SZ_ERROR_ARCHIVE;
738
-
739
- if (numInStreams > k_Scan_NumCodersStreams_in_Folder_MAX)
740
- return SZ_ERROR_UNSUPPORTED;
741
-
742
- for (i = 0; i < numInStreams; i++)
743
- streamUsed[i] = False;
744
- for (i = 0; i < numCoders; i++)
745
- coderUsed[i] = False;
746
-
747
- for (i = 0; i < numBonds; i++)
748
- {
749
- UInt32 index;
750
-
751
- RINOK(SzReadNumber32(&sd, &index));
752
- if (index >= numInStreams || streamUsed[index])
753
- return SZ_ERROR_ARCHIVE;
754
- streamUsed[index] = True;
755
-
756
- RINOK(SzReadNumber32(&sd, &index));
757
- if (index >= numCoders || coderUsed[index])
758
- return SZ_ERROR_ARCHIVE;
759
- coderUsed[index] = True;
760
- }
761
-
762
- numPackStreams = numInStreams - numBonds;
763
-
764
- if (numPackStreams != 1)
765
- for (i = 0; i < numPackStreams; i++)
766
- {
767
- UInt32 index;
768
- RINOK(SzReadNumber32(&sd, &index));
769
- if (index >= numInStreams || streamUsed[index])
770
- return SZ_ERROR_ARCHIVE;
771
- streamUsed[index] = True;
772
- }
773
-
774
- for (i = 0; i < numCoders; i++)
775
- if (!coderUsed[i])
776
- {
777
- indexOfMainStream = i;
778
- break;
779
- }
780
-
781
- if (i == numCoders)
782
- return SZ_ERROR_ARCHIVE;
783
- }
784
-
785
- p->FoStartPackStreamIndex[fo] = packStreamIndex;
786
- p->FoToCoderUnpackSizes[fo] = numCodersOutStreams;
787
- p->FoToMainUnpackSizeIndex[fo] = (Byte)indexOfMainStream;
788
- numCodersOutStreams += numCoders;
789
- if (numCodersOutStreams < numCoders)
790
- return SZ_ERROR_UNSUPPORTED;
791
- if (numPackStreams > p->NumPackStreams - packStreamIndex)
792
- return SZ_ERROR_ARCHIVE;
793
- packStreamIndex += numPackStreams;
794
- }
795
- }
796
-
797
- p->FoToCoderUnpackSizes[fo] = numCodersOutStreams;
798
-
799
- {
800
- size_t dataSize = sd.Data - startBufPtr;
801
- p->FoStartPackStreamIndex[fo] = packStreamIndex;
802
- p->FoCodersOffsets[fo] = dataSize;
803
- MY_ALLOC_ZE_AND_CPY(p->CodersData, dataSize, startBufPtr, alloc);
804
- }
805
-
806
- if (external != 0)
807
- {
808
- if (sd.Size != 0)
809
- return SZ_ERROR_ARCHIVE;
810
- sd = *sd2;
811
- }
812
-
813
- RINOK(WaitId(&sd, k7zIdCodersUnpackSize));
814
-
815
- MY_ALLOC_ZE(UInt64, p->CoderUnpackSizes, (size_t)numCodersOutStreams, alloc);
816
- {
817
- UInt32 i;
818
- for (i = 0; i < numCodersOutStreams; i++)
819
- {
820
- RINOK(ReadNumber(&sd, p->CoderUnpackSizes + i));
821
- }
822
- }
823
-
824
- for (;;)
825
- {
826
- UInt64 type;
827
- RINOK(ReadID(&sd, &type));
828
- if (type == k7zIdEnd)
829
- {
830
- *sd2 = sd;
831
- return SZ_OK;
832
- }
833
- if (type == k7zIdCRC)
834
- {
835
- RINOK(ReadBitUi32s(&sd, numFolders, &p->FolderCRCs, alloc));
836
- continue;
837
- }
838
- RINOK(SkipData(&sd));
839
- }
840
- }
841
-
842
-
843
- UInt64 SzAr_GetFolderUnpackSize(const CSzAr *p, UInt32 folderIndex)
844
- {
845
- return p->CoderUnpackSizes[p->FoToCoderUnpackSizes[folderIndex] + p->FoToMainUnpackSizeIndex[folderIndex]];
846
- }
847
-
848
-
849
- typedef struct
850
- {
851
- UInt32 NumTotalSubStreams;
852
- UInt32 NumSubDigests;
853
- CSzData sdNumSubStreams;
854
- CSzData sdSizes;
855
- CSzData sdCRCs;
856
- } CSubStreamInfo;
857
-
858
-
859
- static SRes ReadSubStreamsInfo(CSzAr *p, CSzData *sd, CSubStreamInfo *ssi)
860
- {
861
- UInt64 type = 0;
862
- UInt32 numSubDigests = 0;
863
- UInt32 numFolders = p->NumFolders;
864
- UInt32 numUnpackStreams = numFolders;
865
- UInt32 numUnpackSizesInData = 0;
866
-
867
- for (;;)
868
- {
869
- RINOK(ReadID(sd, &type));
870
- if (type == k7zIdNumUnpackStream)
871
- {
872
- UInt32 i;
873
- ssi->sdNumSubStreams.Data = sd->Data;
874
- numUnpackStreams = 0;
875
- numSubDigests = 0;
876
- for (i = 0; i < numFolders; i++)
877
- {
878
- UInt32 numStreams;
879
- RINOK(SzReadNumber32(sd, &numStreams));
880
- if (numUnpackStreams > numUnpackStreams + numStreams)
881
- return SZ_ERROR_UNSUPPORTED;
882
- numUnpackStreams += numStreams;
883
- if (numStreams != 0)
884
- numUnpackSizesInData += (numStreams - 1);
885
- if (numStreams != 1 || !SzBitWithVals_Check(&p->FolderCRCs, i))
886
- numSubDigests += numStreams;
887
- }
888
- ssi->sdNumSubStreams.Size = sd->Data - ssi->sdNumSubStreams.Data;
889
- continue;
890
- }
891
- if (type == k7zIdCRC || type == k7zIdSize || type == k7zIdEnd)
892
- break;
893
- RINOK(SkipData(sd));
894
- }
895
-
896
- if (!ssi->sdNumSubStreams.Data)
897
- {
898
- numSubDigests = numFolders;
899
- if (p->FolderCRCs.Defs)
900
- numSubDigests = numFolders - CountDefinedBits(p->FolderCRCs.Defs, numFolders);
901
- }
902
-
903
- ssi->NumTotalSubStreams = numUnpackStreams;
904
- ssi->NumSubDigests = numSubDigests;
905
-
906
- if (type == k7zIdSize)
907
- {
908
- ssi->sdSizes.Data = sd->Data;
909
- RINOK(SkipNumbers(sd, numUnpackSizesInData));
910
- ssi->sdSizes.Size = sd->Data - ssi->sdSizes.Data;
911
- RINOK(ReadID(sd, &type));
912
- }
913
-
914
- for (;;)
915
- {
916
- if (type == k7zIdEnd)
917
- return SZ_OK;
918
- if (type == k7zIdCRC)
919
- {
920
- ssi->sdCRCs.Data = sd->Data;
921
- RINOK(SkipBitUi32s(sd, numSubDigests));
922
- ssi->sdCRCs.Size = sd->Data - ssi->sdCRCs.Data;
923
- }
924
- else
925
- {
926
- RINOK(SkipData(sd));
927
- }
928
- RINOK(ReadID(sd, &type));
929
- }
930
- }
931
-
932
- static SRes SzReadStreamsInfo(CSzAr *p,
933
- CSzData *sd,
934
- UInt32 numFoldersMax, const CBuf *tempBufs, UInt32 numTempBufs,
935
- UInt64 *dataOffset,
936
- CSubStreamInfo *ssi,
937
- ISzAllocPtr alloc)
938
- {
939
- UInt64 type;
940
-
941
- SzData_Clear(&ssi->sdSizes);
942
- SzData_Clear(&ssi->sdCRCs);
943
- SzData_Clear(&ssi->sdNumSubStreams);
944
-
945
- *dataOffset = 0;
946
- RINOK(ReadID(sd, &type));
947
- if (type == k7zIdPackInfo)
948
- {
949
- RINOK(ReadNumber(sd, dataOffset));
950
- RINOK(ReadPackInfo(p, sd, alloc));
951
- RINOK(ReadID(sd, &type));
952
- }
953
- if (type == k7zIdUnpackInfo)
954
- {
955
- RINOK(ReadUnpackInfo(p, sd, numFoldersMax, tempBufs, numTempBufs, alloc));
956
- RINOK(ReadID(sd, &type));
957
- }
958
- if (type == k7zIdSubStreamsInfo)
959
- {
960
- RINOK(ReadSubStreamsInfo(p, sd, ssi));
961
- RINOK(ReadID(sd, &type));
962
- }
963
- else
964
- {
965
- ssi->NumTotalSubStreams = p->NumFolders;
966
- // ssi->NumSubDigests = 0;
967
- }
968
-
969
- return (type == k7zIdEnd ? SZ_OK : SZ_ERROR_UNSUPPORTED);
970
- }
971
-
972
- static SRes SzReadAndDecodePackedStreams(
973
- ILookInStream *inStream,
974
- CSzData *sd,
975
- CBuf *tempBufs,
976
- UInt32 numFoldersMax,
977
- UInt64 baseOffset,
978
- CSzAr *p,
979
- ISzAllocPtr allocTemp)
980
- {
981
- UInt64 dataStartPos;
982
- UInt32 fo;
983
- CSubStreamInfo ssi;
984
-
985
- RINOK(SzReadStreamsInfo(p, sd, numFoldersMax, NULL, 0, &dataStartPos, &ssi, allocTemp));
986
-
987
- dataStartPos += baseOffset;
988
- if (p->NumFolders == 0)
989
- return SZ_ERROR_ARCHIVE;
990
-
991
- for (fo = 0; fo < p->NumFolders; fo++)
992
- Buf_Init(tempBufs + fo);
993
-
994
- for (fo = 0; fo < p->NumFolders; fo++)
995
- {
996
- CBuf *tempBuf = tempBufs + fo;
997
- UInt64 unpackSize = SzAr_GetFolderUnpackSize(p, fo);
998
- if ((size_t)unpackSize != unpackSize)
999
- return SZ_ERROR_MEM;
1000
- if (!Buf_Create(tempBuf, (size_t)unpackSize, allocTemp))
1001
- return SZ_ERROR_MEM;
1002
- }
1003
-
1004
- for (fo = 0; fo < p->NumFolders; fo++)
1005
- {
1006
- const CBuf *tempBuf = tempBufs + fo;
1007
- RINOK(LookInStream_SeekTo(inStream, dataStartPos));
1008
- RINOK(SzAr_DecodeFolder(p, fo, inStream, dataStartPos, tempBuf->data, tempBuf->size, allocTemp));
1009
- }
1010
-
1011
- return SZ_OK;
1012
- }
1013
-
1014
- static SRes SzReadFileNames(const Byte *data, size_t size, UInt32 numFiles, size_t *offsets)
1015
- {
1016
- size_t pos = 0;
1017
- *offsets++ = 0;
1018
- if (numFiles == 0)
1019
- return (size == 0) ? SZ_OK : SZ_ERROR_ARCHIVE;
1020
- if (size < 2)
1021
- return SZ_ERROR_ARCHIVE;
1022
- if (data[size - 2] != 0 || data[size - 1] != 0)
1023
- return SZ_ERROR_ARCHIVE;
1024
- do
1025
- {
1026
- const Byte *p;
1027
- if (pos == size)
1028
- return SZ_ERROR_ARCHIVE;
1029
- for (p = data + pos;
1030
- #ifdef _WIN32
1031
- *(const UInt16 *)p != 0
1032
- #else
1033
- p[0] != 0 || p[1] != 0
1034
- #endif
1035
- ; p += 2);
1036
- pos = p - data + 2;
1037
- *offsets++ = (pos >> 1);
1038
- }
1039
- while (--numFiles);
1040
- return (pos == size) ? SZ_OK : SZ_ERROR_ARCHIVE;
1041
- }
1042
-
1043
- static MY_NO_INLINE SRes ReadTime(CSzBitUi64s *p, UInt32 num,
1044
- CSzData *sd2,
1045
- const CBuf *tempBufs, UInt32 numTempBufs,
1046
- ISzAllocPtr alloc)
1047
- {
1048
- CSzData sd;
1049
- UInt32 i;
1050
- CNtfsFileTime *vals;
1051
- Byte *defs;
1052
- Byte external;
1053
-
1054
- RINOK(ReadBitVector(sd2, num, &p->Defs, alloc));
1055
-
1056
- SZ_READ_BYTE_SD(sd2, external);
1057
- if (external == 0)
1058
- sd = *sd2;
1059
- else
1060
- {
1061
- UInt32 index;
1062
- RINOK(SzReadNumber32(sd2, &index));
1063
- if (index >= numTempBufs)
1064
- return SZ_ERROR_ARCHIVE;
1065
- sd.Data = tempBufs[index].data;
1066
- sd.Size = tempBufs[index].size;
1067
- }
1068
-
1069
- MY_ALLOC_ZE(CNtfsFileTime, p->Vals, num, alloc);
1070
- vals = p->Vals;
1071
- defs = p->Defs;
1072
- for (i = 0; i < num; i++)
1073
- if (SzBitArray_Check(defs, i))
1074
- {
1075
- if (sd.Size < 8)
1076
- return SZ_ERROR_ARCHIVE;
1077
- vals[i].Low = GetUi32(sd.Data);
1078
- vals[i].High = GetUi32(sd.Data + 4);
1079
- SKIP_DATA2(sd, 8);
1080
- }
1081
- else
1082
- vals[i].High = vals[i].Low = 0;
1083
-
1084
- if (external == 0)
1085
- *sd2 = sd;
1086
-
1087
- return SZ_OK;
1088
- }
1089
-
1090
-
1091
- #define NUM_ADDITIONAL_STREAMS_MAX 8
1092
-
1093
-
1094
- static SRes SzReadHeader2(
1095
- CSzArEx *p, /* allocMain */
1096
- CSzData *sd,
1097
- ILookInStream *inStream,
1098
- CBuf *tempBufs, UInt32 *numTempBufs,
1099
- ISzAllocPtr allocMain,
1100
- ISzAllocPtr allocTemp
1101
- )
1102
- {
1103
- CSubStreamInfo ssi;
1104
-
1105
- {
1106
- UInt64 type;
1107
-
1108
- SzData_Clear(&ssi.sdSizes);
1109
- SzData_Clear(&ssi.sdCRCs);
1110
- SzData_Clear(&ssi.sdNumSubStreams);
1111
-
1112
- ssi.NumSubDigests = 0;
1113
- ssi.NumTotalSubStreams = 0;
1114
-
1115
- RINOK(ReadID(sd, &type));
1116
-
1117
- if (type == k7zIdArchiveProperties)
1118
- {
1119
- for (;;)
1120
- {
1121
- UInt64 type2;
1122
- RINOK(ReadID(sd, &type2));
1123
- if (type2 == k7zIdEnd)
1124
- break;
1125
- RINOK(SkipData(sd));
1126
- }
1127
- RINOK(ReadID(sd, &type));
1128
- }
1129
-
1130
- if (type == k7zIdAdditionalStreamsInfo)
1131
- {
1132
- CSzAr tempAr;
1133
- SRes res;
1134
-
1135
- SzAr_Init(&tempAr);
1136
- res = SzReadAndDecodePackedStreams(inStream, sd, tempBufs, NUM_ADDITIONAL_STREAMS_MAX,
1137
- p->startPosAfterHeader, &tempAr, allocTemp);
1138
- *numTempBufs = tempAr.NumFolders;
1139
- SzAr_Free(&tempAr, allocTemp);
1140
-
1141
- if (res != SZ_OK)
1142
- return res;
1143
- RINOK(ReadID(sd, &type));
1144
- }
1145
-
1146
- if (type == k7zIdMainStreamsInfo)
1147
- {
1148
- RINOK(SzReadStreamsInfo(&p->db, sd, (UInt32)1 << 30, tempBufs, *numTempBufs,
1149
- &p->dataPos, &ssi, allocMain));
1150
- p->dataPos += p->startPosAfterHeader;
1151
- RINOK(ReadID(sd, &type));
1152
- }
1153
-
1154
- if (type == k7zIdEnd)
1155
- {
1156
- return SZ_OK;
1157
- }
1158
-
1159
- if (type != k7zIdFilesInfo)
1160
- return SZ_ERROR_ARCHIVE;
1161
- }
1162
-
1163
- {
1164
- UInt32 numFiles = 0;
1165
- UInt32 numEmptyStreams = 0;
1166
- const Byte *emptyStreams = NULL;
1167
- const Byte *emptyFiles = NULL;
1168
-
1169
- RINOK(SzReadNumber32(sd, &numFiles));
1170
- p->NumFiles = numFiles;
1171
-
1172
- for (;;)
1173
- {
1174
- UInt64 type;
1175
- UInt64 size;
1176
- RINOK(ReadID(sd, &type));
1177
- if (type == k7zIdEnd)
1178
- break;
1179
- RINOK(ReadNumber(sd, &size));
1180
- if (size > sd->Size)
1181
- return SZ_ERROR_ARCHIVE;
1182
-
1183
- if (type >= ((UInt32)1 << 8))
1184
- {
1185
- SKIP_DATA(sd, size);
1186
- }
1187
- else switch ((unsigned)type)
1188
- {
1189
- case k7zIdName:
1190
- {
1191
- size_t namesSize;
1192
- const Byte *namesData;
1193
- Byte external;
1194
-
1195
- SZ_READ_BYTE(external);
1196
- if (external == 0)
1197
- {
1198
- namesSize = (size_t)size - 1;
1199
- namesData = sd->Data;
1200
- }
1201
- else
1202
- {
1203
- UInt32 index;
1204
- RINOK(SzReadNumber32(sd, &index));
1205
- if (index >= *numTempBufs)
1206
- return SZ_ERROR_ARCHIVE;
1207
- namesData = (tempBufs)[index].data;
1208
- namesSize = (tempBufs)[index].size;
1209
- }
1210
-
1211
- if ((namesSize & 1) != 0)
1212
- return SZ_ERROR_ARCHIVE;
1213
- MY_ALLOC(size_t, p->FileNameOffsets, numFiles + 1, allocMain);
1214
- MY_ALLOC_ZE_AND_CPY(p->FileNames, namesSize, namesData, allocMain);
1215
- RINOK(SzReadFileNames(p->FileNames, namesSize, numFiles, p->FileNameOffsets))
1216
- if (external == 0)
1217
- {
1218
- SKIP_DATA(sd, namesSize);
1219
- }
1220
- break;
1221
- }
1222
- case k7zIdEmptyStream:
1223
- {
1224
- RINOK(RememberBitVector(sd, numFiles, &emptyStreams));
1225
- numEmptyStreams = CountDefinedBits(emptyStreams, numFiles);
1226
- emptyFiles = NULL;
1227
- break;
1228
- }
1229
- case k7zIdEmptyFile:
1230
- {
1231
- RINOK(RememberBitVector(sd, numEmptyStreams, &emptyFiles));
1232
- break;
1233
- }
1234
- case k7zIdWinAttrib:
1235
- {
1236
- Byte external;
1237
- CSzData sdSwitch;
1238
- CSzData *sdPtr;
1239
- SzBitUi32s_Free(&p->Attribs, allocMain);
1240
- RINOK(ReadBitVector(sd, numFiles, &p->Attribs.Defs, allocMain));
1241
-
1242
- SZ_READ_BYTE(external);
1243
- if (external == 0)
1244
- sdPtr = sd;
1245
- else
1246
- {
1247
- UInt32 index;
1248
- RINOK(SzReadNumber32(sd, &index));
1249
- if (index >= *numTempBufs)
1250
- return SZ_ERROR_ARCHIVE;
1251
- sdSwitch.Data = (tempBufs)[index].data;
1252
- sdSwitch.Size = (tempBufs)[index].size;
1253
- sdPtr = &sdSwitch;
1254
- }
1255
- RINOK(ReadUi32s(sdPtr, numFiles, &p->Attribs, allocMain));
1256
- break;
1257
- }
1258
- /*
1259
- case k7zParent:
1260
- {
1261
- SzBitUi32s_Free(&p->Parents, allocMain);
1262
- RINOK(ReadBitVector(sd, numFiles, &p->Parents.Defs, allocMain));
1263
- RINOK(SzReadSwitch(sd));
1264
- RINOK(ReadUi32s(sd, numFiles, &p->Parents, allocMain));
1265
- break;
1266
- }
1267
- */
1268
- case k7zIdMTime: RINOK(ReadTime(&p->MTime, numFiles, sd, tempBufs, *numTempBufs, allocMain)); break;
1269
- case k7zIdCTime: RINOK(ReadTime(&p->CTime, numFiles, sd, tempBufs, *numTempBufs, allocMain)); break;
1270
- default:
1271
- {
1272
- SKIP_DATA(sd, size);
1273
- }
1274
- }
1275
- }
1276
-
1277
- if (numFiles - numEmptyStreams != ssi.NumTotalSubStreams)
1278
- return SZ_ERROR_ARCHIVE;
1279
-
1280
- for (;;)
1281
- {
1282
- UInt64 type;
1283
- RINOK(ReadID(sd, &type));
1284
- if (type == k7zIdEnd)
1285
- break;
1286
- RINOK(SkipData(sd));
1287
- }
1288
-
1289
- {
1290
- UInt32 i;
1291
- UInt32 emptyFileIndex = 0;
1292
- UInt32 folderIndex = 0;
1293
- UInt32 remSubStreams = 0;
1294
- UInt32 numSubStreams = 0;
1295
- UInt64 unpackPos = 0;
1296
- const Byte *digestsDefs = NULL;
1297
- const Byte *digestsVals = NULL;
1298
- UInt32 digestsValsIndex = 0;
1299
- UInt32 digestIndex;
1300
- Byte allDigestsDefined = 0;
1301
- Byte isDirMask = 0;
1302
- Byte crcMask = 0;
1303
- Byte mask = 0x80;
1304
-
1305
- MY_ALLOC(UInt32, p->FolderToFile, p->db.NumFolders + 1, allocMain);
1306
- MY_ALLOC_ZE(UInt32, p->FileToFolder, p->NumFiles, allocMain);
1307
- MY_ALLOC(UInt64, p->UnpackPositions, p->NumFiles + 1, allocMain);
1308
- MY_ALLOC_ZE(Byte, p->IsDirs, (p->NumFiles + 7) >> 3, allocMain);
1309
-
1310
- RINOK(SzBitUi32s_Alloc(&p->CRCs, p->NumFiles, allocMain));
1311
-
1312
- if (ssi.sdCRCs.Size != 0)
1313
- {
1314
- SZ_READ_BYTE_SD(&ssi.sdCRCs, allDigestsDefined);
1315
- if (allDigestsDefined)
1316
- digestsVals = ssi.sdCRCs.Data;
1317
- else
1318
- {
1319
- size_t numBytes = (ssi.NumSubDigests + 7) >> 3;
1320
- digestsDefs = ssi.sdCRCs.Data;
1321
- digestsVals = digestsDefs + numBytes;
1322
- }
1323
- }
1324
-
1325
- digestIndex = 0;
1326
-
1327
- for (i = 0; i < numFiles; i++, mask >>= 1)
1328
- {
1329
- if (mask == 0)
1330
- {
1331
- UInt32 byteIndex = (i - 1) >> 3;
1332
- p->IsDirs[byteIndex] = isDirMask;
1333
- p->CRCs.Defs[byteIndex] = crcMask;
1334
- isDirMask = 0;
1335
- crcMask = 0;
1336
- mask = 0x80;
1337
- }
1338
-
1339
- p->UnpackPositions[i] = unpackPos;
1340
- p->CRCs.Vals[i] = 0;
1341
-
1342
- if (emptyStreams && SzBitArray_Check(emptyStreams, i))
1343
- {
1344
- if (emptyFiles)
1345
- {
1346
- if (!SzBitArray_Check(emptyFiles, emptyFileIndex))
1347
- isDirMask |= mask;
1348
- emptyFileIndex++;
1349
- }
1350
- else
1351
- isDirMask |= mask;
1352
- if (remSubStreams == 0)
1353
- {
1354
- p->FileToFolder[i] = (UInt32)-1;
1355
- continue;
1356
- }
1357
- }
1358
-
1359
- if (remSubStreams == 0)
1360
- {
1361
- for (;;)
1362
- {
1363
- if (folderIndex >= p->db.NumFolders)
1364
- return SZ_ERROR_ARCHIVE;
1365
- p->FolderToFile[folderIndex] = i;
1366
- numSubStreams = 1;
1367
- if (ssi.sdNumSubStreams.Data)
1368
- {
1369
- RINOK(SzReadNumber32(&ssi.sdNumSubStreams, &numSubStreams));
1370
- }
1371
- remSubStreams = numSubStreams;
1372
- if (numSubStreams != 0)
1373
- break;
1374
- {
1375
- UInt64 folderUnpackSize = SzAr_GetFolderUnpackSize(&p->db, folderIndex);
1376
- unpackPos += folderUnpackSize;
1377
- if (unpackPos < folderUnpackSize)
1378
- return SZ_ERROR_ARCHIVE;
1379
- }
1380
-
1381
- folderIndex++;
1382
- }
1383
- }
1384
-
1385
- p->FileToFolder[i] = folderIndex;
1386
-
1387
- if (emptyStreams && SzBitArray_Check(emptyStreams, i))
1388
- continue;
1389
-
1390
- if (--remSubStreams == 0)
1391
- {
1392
- UInt64 folderUnpackSize = SzAr_GetFolderUnpackSize(&p->db, folderIndex);
1393
- UInt64 startFolderUnpackPos = p->UnpackPositions[p->FolderToFile[folderIndex]];
1394
- if (folderUnpackSize < unpackPos - startFolderUnpackPos)
1395
- return SZ_ERROR_ARCHIVE;
1396
- unpackPos = startFolderUnpackPos + folderUnpackSize;
1397
- if (unpackPos < folderUnpackSize)
1398
- return SZ_ERROR_ARCHIVE;
1399
-
1400
- if (numSubStreams == 1 && SzBitWithVals_Check(&p->db.FolderCRCs, i))
1401
- {
1402
- p->CRCs.Vals[i] = p->db.FolderCRCs.Vals[folderIndex];
1403
- crcMask |= mask;
1404
- }
1405
- else if (allDigestsDefined || (digestsDefs && SzBitArray_Check(digestsDefs, digestIndex)))
1406
- {
1407
- p->CRCs.Vals[i] = GetUi32(digestsVals + (size_t)digestsValsIndex * 4);
1408
- digestsValsIndex++;
1409
- crcMask |= mask;
1410
- }
1411
-
1412
- folderIndex++;
1413
- }
1414
- else
1415
- {
1416
- UInt64 v;
1417
- RINOK(ReadNumber(&ssi.sdSizes, &v));
1418
- unpackPos += v;
1419
- if (unpackPos < v)
1420
- return SZ_ERROR_ARCHIVE;
1421
- if (allDigestsDefined || (digestsDefs && SzBitArray_Check(digestsDefs, digestIndex)))
1422
- {
1423
- p->CRCs.Vals[i] = GetUi32(digestsVals + (size_t)digestsValsIndex * 4);
1424
- digestsValsIndex++;
1425
- crcMask |= mask;
1426
- }
1427
- }
1428
- }
1429
-
1430
- if (mask != 0x80)
1431
- {
1432
- UInt32 byteIndex = (i - 1) >> 3;
1433
- p->IsDirs[byteIndex] = isDirMask;
1434
- p->CRCs.Defs[byteIndex] = crcMask;
1435
- }
1436
-
1437
- p->UnpackPositions[i] = unpackPos;
1438
-
1439
- if (remSubStreams != 0)
1440
- return SZ_ERROR_ARCHIVE;
1441
-
1442
- for (;;)
1443
- {
1444
- p->FolderToFile[folderIndex] = i;
1445
- if (folderIndex >= p->db.NumFolders)
1446
- break;
1447
- if (!ssi.sdNumSubStreams.Data)
1448
- return SZ_ERROR_ARCHIVE;
1449
- RINOK(SzReadNumber32(&ssi.sdNumSubStreams, &numSubStreams));
1450
- if (numSubStreams != 0)
1451
- return SZ_ERROR_ARCHIVE;
1452
- /*
1453
- {
1454
- UInt64 folderUnpackSize = SzAr_GetFolderUnpackSize(&p->db, folderIndex);
1455
- unpackPos += folderUnpackSize;
1456
- if (unpackPos < folderUnpackSize)
1457
- return SZ_ERROR_ARCHIVE;
1458
- }
1459
- */
1460
- folderIndex++;
1461
- }
1462
-
1463
- if (ssi.sdNumSubStreams.Data && ssi.sdNumSubStreams.Size != 0)
1464
- return SZ_ERROR_ARCHIVE;
1465
- }
1466
- }
1467
- return SZ_OK;
1468
- }
1469
-
1470
-
1471
- static SRes SzReadHeader(
1472
- CSzArEx *p,
1473
- CSzData *sd,
1474
- ILookInStream *inStream,
1475
- ISzAllocPtr allocMain,
1476
- ISzAllocPtr allocTemp)
1477
- {
1478
- UInt32 i;
1479
- UInt32 numTempBufs = 0;
1480
- SRes res;
1481
- CBuf tempBufs[NUM_ADDITIONAL_STREAMS_MAX];
1482
-
1483
- for (i = 0; i < NUM_ADDITIONAL_STREAMS_MAX; i++)
1484
- Buf_Init(tempBufs + i);
1485
-
1486
- res = SzReadHeader2(p, sd, inStream,
1487
- tempBufs, &numTempBufs,
1488
- allocMain, allocTemp);
1489
-
1490
- for (i = 0; i < NUM_ADDITIONAL_STREAMS_MAX; i++)
1491
- Buf_Free(tempBufs + i, allocTemp);
1492
-
1493
- RINOK(res);
1494
-
1495
- if (sd->Size != 0)
1496
- return SZ_ERROR_FAIL;
1497
-
1498
- return res;
1499
- }
1500
-
1501
- static SRes SzArEx_Open2(
1502
- CSzArEx *p,
1503
- ILookInStream *inStream,
1504
- ISzAllocPtr allocMain,
1505
- ISzAllocPtr allocTemp)
1506
- {
1507
- Byte header[k7zStartHeaderSize];
1508
- Int64 startArcPos;
1509
- UInt64 nextHeaderOffset, nextHeaderSize;
1510
- size_t nextHeaderSizeT;
1511
- UInt32 nextHeaderCRC;
1512
- CBuf buf;
1513
- SRes res;
1514
-
1515
- startArcPos = 0;
1516
- RINOK(ILookInStream_Seek(inStream, &startArcPos, SZ_SEEK_CUR));
1517
-
1518
- RINOK(LookInStream_Read2(inStream, header, k7zStartHeaderSize, SZ_ERROR_NO_ARCHIVE));
1519
-
1520
- if (!TestSignatureCandidate(header))
1521
- return SZ_ERROR_NO_ARCHIVE;
1522
- if (header[6] != k7zMajorVersion)
1523
- return SZ_ERROR_UNSUPPORTED;
1524
-
1525
- nextHeaderOffset = GetUi64(header + 12);
1526
- nextHeaderSize = GetUi64(header + 20);
1527
- nextHeaderCRC = GetUi32(header + 28);
1528
-
1529
- p->startPosAfterHeader = startArcPos + k7zStartHeaderSize;
1530
-
1531
- if (CrcCalc(header + 12, 20) != GetUi32(header + 8))
1532
- return SZ_ERROR_CRC;
1533
-
1534
- nextHeaderSizeT = (size_t)nextHeaderSize;
1535
- if (nextHeaderSizeT != nextHeaderSize)
1536
- return SZ_ERROR_MEM;
1537
- if (nextHeaderSizeT == 0)
1538
- return SZ_OK;
1539
- if (nextHeaderOffset > nextHeaderOffset + nextHeaderSize ||
1540
- nextHeaderOffset > nextHeaderOffset + nextHeaderSize + k7zStartHeaderSize)
1541
- return SZ_ERROR_NO_ARCHIVE;
1542
-
1543
- {
1544
- Int64 pos = 0;
1545
- RINOK(ILookInStream_Seek(inStream, &pos, SZ_SEEK_END));
1546
- if ((UInt64)pos < startArcPos + nextHeaderOffset ||
1547
- (UInt64)pos < startArcPos + k7zStartHeaderSize + nextHeaderOffset ||
1548
- (UInt64)pos < startArcPos + k7zStartHeaderSize + nextHeaderOffset + nextHeaderSize)
1549
- return SZ_ERROR_INPUT_EOF;
1550
- }
1551
-
1552
- RINOK(LookInStream_SeekTo(inStream, startArcPos + k7zStartHeaderSize + nextHeaderOffset));
1553
-
1554
- if (!Buf_Create(&buf, nextHeaderSizeT, allocTemp))
1555
- return SZ_ERROR_MEM;
1556
-
1557
- res = LookInStream_Read(inStream, buf.data, nextHeaderSizeT);
1558
-
1559
- if (res == SZ_OK)
1560
- {
1561
- res = SZ_ERROR_ARCHIVE;
1562
- if (CrcCalc(buf.data, nextHeaderSizeT) == nextHeaderCRC)
1563
- {
1564
- CSzData sd;
1565
- UInt64 type;
1566
- sd.Data = buf.data;
1567
- sd.Size = buf.size;
1568
-
1569
- res = ReadID(&sd, &type);
1570
-
1571
- if (res == SZ_OK && type == k7zIdEncodedHeader)
1572
- {
1573
- CSzAr tempAr;
1574
- CBuf tempBuf;
1575
- Buf_Init(&tempBuf);
1576
-
1577
- SzAr_Init(&tempAr);
1578
- res = SzReadAndDecodePackedStreams(inStream, &sd, &tempBuf, 1, p->startPosAfterHeader, &tempAr, allocTemp);
1579
- SzAr_Free(&tempAr, allocTemp);
1580
-
1581
- if (res != SZ_OK)
1582
- {
1583
- Buf_Free(&tempBuf, allocTemp);
1584
- }
1585
- else
1586
- {
1587
- Buf_Free(&buf, allocTemp);
1588
- buf.data = tempBuf.data;
1589
- buf.size = tempBuf.size;
1590
- sd.Data = buf.data;
1591
- sd.Size = buf.size;
1592
- res = ReadID(&sd, &type);
1593
- }
1594
- }
1595
-
1596
- if (res == SZ_OK)
1597
- {
1598
- if (type == k7zIdHeader)
1599
- {
1600
- /*
1601
- CSzData sd2;
1602
- unsigned ttt;
1603
- for (ttt = 0; ttt < 40000; ttt++)
1604
- {
1605
- SzArEx_Free(p, allocMain);
1606
- sd2 = sd;
1607
- res = SzReadHeader(p, &sd2, inStream, allocMain, allocTemp);
1608
- if (res != SZ_OK)
1609
- break;
1610
- }
1611
- */
1612
- res = SzReadHeader(p, &sd, inStream, allocMain, allocTemp);
1613
- }
1614
- else
1615
- res = SZ_ERROR_UNSUPPORTED;
1616
- }
1617
- }
1618
- }
1619
-
1620
- Buf_Free(&buf, allocTemp);
1621
- return res;
1622
- }
1623
-
1624
-
1625
- SRes SzArEx_Open(CSzArEx *p, ILookInStream *inStream,
1626
- ISzAllocPtr allocMain, ISzAllocPtr allocTemp)
1627
- {
1628
- SRes res = SzArEx_Open2(p, inStream, allocMain, allocTemp);
1629
- if (res != SZ_OK)
1630
- SzArEx_Free(p, allocMain);
1631
- return res;
1632
- }
1633
-
1634
-
1635
- SRes SzArEx_Extract(
1636
- const CSzArEx *p,
1637
- ILookInStream *inStream,
1638
- UInt32 fileIndex,
1639
- UInt32 *blockIndex,
1640
- Byte **tempBuf,
1641
- size_t *outBufferSize,
1642
- size_t *offset,
1643
- size_t *outSizeProcessed,
1644
- ISzAllocPtr allocMain,
1645
- ISzAllocPtr allocTemp)
1646
- {
1647
- UInt32 folderIndex = p->FileToFolder[fileIndex];
1648
- SRes res = SZ_OK;
1649
-
1650
- *offset = 0;
1651
- *outSizeProcessed = 0;
1652
-
1653
- if (folderIndex == (UInt32)-1)
1654
- {
1655
- ISzAlloc_Free(allocMain, *tempBuf);
1656
- *blockIndex = folderIndex;
1657
- *tempBuf = NULL;
1658
- *outBufferSize = 0;
1659
- return SZ_OK;
1660
- }
1661
-
1662
- if (*tempBuf == NULL || *blockIndex != folderIndex)
1663
- {
1664
- UInt64 unpackSizeSpec = SzAr_GetFolderUnpackSize(&p->db, folderIndex);
1665
- /*
1666
- UInt64 unpackSizeSpec =
1667
- p->UnpackPositions[p->FolderToFile[(size_t)folderIndex + 1]] -
1668
- p->UnpackPositions[p->FolderToFile[folderIndex]];
1669
- */
1670
- size_t unpackSize = (size_t)unpackSizeSpec;
1671
-
1672
- if (unpackSize != unpackSizeSpec)
1673
- return SZ_ERROR_MEM;
1674
- *blockIndex = folderIndex;
1675
- ISzAlloc_Free(allocMain, *tempBuf);
1676
- *tempBuf = NULL;
1677
-
1678
- if (res == SZ_OK)
1679
- {
1680
- *outBufferSize = unpackSize;
1681
- if (unpackSize != 0)
1682
- {
1683
- *tempBuf = (Byte *)ISzAlloc_Alloc(allocMain, unpackSize);
1684
- if (*tempBuf == NULL)
1685
- res = SZ_ERROR_MEM;
1686
- }
1687
-
1688
- if (res == SZ_OK)
1689
- {
1690
- res = SzAr_DecodeFolder(&p->db, folderIndex,
1691
- inStream, p->dataPos, *tempBuf, unpackSize, allocTemp);
1692
- }
1693
- }
1694
- }
1695
-
1696
- if (res == SZ_OK)
1697
- {
1698
- UInt64 unpackPos = p->UnpackPositions[fileIndex];
1699
- *offset = (size_t)(unpackPos - p->UnpackPositions[p->FolderToFile[folderIndex]]);
1700
- *outSizeProcessed = (size_t)(p->UnpackPositions[(size_t)fileIndex + 1] - unpackPos);
1701
- if (*offset + *outSizeProcessed > *outBufferSize)
1702
- return SZ_ERROR_FAIL;
1703
- if (SzBitWithVals_Check(&p->CRCs, fileIndex))
1704
- if (CrcCalc(*tempBuf + *offset, *outSizeProcessed) != p->CRCs.Vals[fileIndex])
1705
- res = SZ_ERROR_CRC;
1706
- }
1707
-
1708
- return res;
1709
- }
1710
-
1711
-
1712
- size_t SzArEx_GetFileNameUtf16(const CSzArEx *p, size_t fileIndex, UInt16 *dest)
1713
- {
1714
- size_t offs = p->FileNameOffsets[fileIndex];
1715
- size_t len = p->FileNameOffsets[fileIndex + 1] - offs;
1716
- if (dest != 0)
1717
- {
1718
- size_t i;
1719
- const Byte *src = p->FileNames + offs * 2;
1720
- for (i = 0; i < len; i++)
1721
- dest[i] = GetUi16(src + i * 2);
1722
- }
1723
- return len;
1724
- }
1725
-
1726
- /*
1727
- size_t SzArEx_GetFullNameLen(const CSzArEx *p, size_t fileIndex)
1728
- {
1729
- size_t len;
1730
- if (!p->FileNameOffsets)
1731
- return 1;
1732
- len = 0;
1733
- for (;;)
1734
- {
1735
- UInt32 parent = (UInt32)(Int32)-1;
1736
- len += p->FileNameOffsets[fileIndex + 1] - p->FileNameOffsets[fileIndex];
1737
- if SzBitWithVals_Check(&p->Parents, fileIndex)
1738
- parent = p->Parents.Vals[fileIndex];
1739
- if (parent == (UInt32)(Int32)-1)
1740
- return len;
1741
- fileIndex = parent;
1742
- }
1743
- }
1744
-
1745
- UInt16 *SzArEx_GetFullNameUtf16_Back(const CSzArEx *p, size_t fileIndex, UInt16 *dest)
1746
- {
1747
- BoolInt needSlash;
1748
- if (!p->FileNameOffsets)
1749
- {
1750
- *(--dest) = 0;
1751
- return dest;
1752
- }
1753
- needSlash = False;
1754
- for (;;)
1755
- {
1756
- UInt32 parent = (UInt32)(Int32)-1;
1757
- size_t curLen = p->FileNameOffsets[fileIndex + 1] - p->FileNameOffsets[fileIndex];
1758
- SzArEx_GetFileNameUtf16(p, fileIndex, dest - curLen);
1759
- if (needSlash)
1760
- *(dest - 1) = '/';
1761
- needSlash = True;
1762
- dest -= curLen;
1763
-
1764
- if SzBitWithVals_Check(&p->Parents, fileIndex)
1765
- parent = p->Parents.Vals[fileIndex];
1766
- if (parent == (UInt32)(Int32)-1)
1767
- return dest;
1768
- fileIndex = parent;
1769
- }
1770
- }
1771
- */