react-native-update 10.28.10 → 10.29.0-beta.0

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 (782) hide show
  1. package/android/.project +28 -0
  2. package/android/bin/.project +34 -0
  3. package/android/bin/.settings/org.eclipse.buildship.core.prefs +13 -0
  4. package/harmony/pushy.har +0 -0
  5. package/package.json +3 -2
  6. package/src/client.ts +37 -48
  7. package/src/provider.tsx +1 -1
  8. package/src/utils.ts +19 -12
  9. package/harmony/src/main/cpp/HDiffPatch/CHANGELOG.md +0 -153
  10. package/harmony/src/main/cpp/HDiffPatch/LICENSE +0 -48
  11. package/harmony/src/main/cpp/HDiffPatch/Makefile +0 -157
  12. package/harmony/src/main/cpp/HDiffPatch/README.md +0 -307
  13. package/harmony/src/main/cpp/HDiffPatch/_atosize.h +0 -83
  14. package/harmony/src/main/cpp/HDiffPatch/_clock_for_demo.h +0 -47
  15. package/harmony/src/main/cpp/HDiffPatch/_dir_ignore.h +0 -191
  16. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +0 -37
  17. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +0 -7
  18. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.bat +0 -1
  19. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.sh +0 -1
  20. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +0 -18
  21. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +0 -20
  22. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +0 -28
  23. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +0 -8
  24. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +0 -8
  25. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffZ.cbp +0 -219
  26. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HPatchZ.cbp +0 -156
  27. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/unitTest.cbp +0 -65
  28. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffPatch.sln +0 -105
  29. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj +0 -237
  30. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +0 -3
  31. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj +0 -318
  32. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +0 -3
  33. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj +0 -182
  34. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj.user +0 -3
  35. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -30
  36. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  37. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +0 -408
  38. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +0 -573
  39. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +0 -396
  40. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lz4.xcodeproj/project.pbxproj +0 -268
  41. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +0 -361
  42. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +0 -301
  43. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +0 -411
  44. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +0 -504
  45. package/harmony/src/main/cpp/HDiffPatch/checksum_plugin_demo.h +0 -344
  46. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.cpp +0 -166
  47. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.h +0 -59
  48. package/harmony/src/main/cpp/HDiffPatch/compress_plugin_demo.h +0 -1152
  49. package/harmony/src/main/cpp/HDiffPatch/decompress_plugin_demo.h +0 -995
  50. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +0 -797
  51. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +0 -65
  52. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +0 -200
  53. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +0 -178
  54. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +0 -357
  55. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.h +0 -87
  56. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +0 -151
  57. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +0 -770
  58. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +0 -236
  59. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_private.h +0 -47
  60. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +0 -112
  61. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +0 -53
  62. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_types.h +0 -61
  63. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +0 -331
  64. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +0 -144
  65. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +0 -176
  66. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +0 -84
  67. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +0 -146
  68. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +0 -61
  69. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +0 -152
  70. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +0 -76
  71. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.c +0 -524
  72. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.h +0 -259
  73. package/harmony/src/main/cpp/HDiffPatch/hdiffz.cpp +0 -1570
  74. package/harmony/src/main/cpp/HDiffPatch/hpatch_dir_listener.h +0 -290
  75. package/harmony/src/main/cpp/HDiffPatch/hpatchz.c +0 -1221
  76. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +0 -1025
  77. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.h +0 -116
  78. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -72
  79. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +0 -213
  80. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +0 -63
  81. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +0 -170
  82. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +0 -86
  83. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/config.h +0 -89
  84. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c +0 -13
  85. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +0 -398
  86. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +0 -194
  87. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +0 -13
  88. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +0 -204
  89. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +0 -207
  90. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +0 -815
  91. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +0 -586
  92. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +0 -381
  93. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +0 -352
  94. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +0 -137
  95. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +0 -137
  96. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +0 -70
  97. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +0 -628
  98. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +0 -87
  99. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +0 -363
  100. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +0 -139
  101. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +0 -68
  102. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +0 -115
  103. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +0 -342
  104. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +0 -94
  105. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/checksum_plugin.h +0 -52
  106. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.c +0 -2292
  107. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.h +0 -215
  108. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_private.h +0 -165
  109. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_types.h +0 -251
  110. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.cpp +0 -174
  111. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.h +0 -73
  112. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.cpp +0 -367
  113. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.h +0 -92
  114. package/harmony/src/main/cpp/HDiffPatch/test/_private_searchBestParams.cpp +0 -301
  115. package/harmony/src/main/cpp/HDiffPatch/test/hpatchz_test.cpp +0 -292
  116. package/harmony/src/main/cpp/HDiffPatch/test/testHashClash.cpp +0 -436
  117. package/harmony/src/main/cpp/HDiffPatch/test/unit_test.cpp +0 -417
  118. package/harmony/src/main/cpp/lzma/Asm/arm/7zCrcOpt.asm +0 -100
  119. package/harmony/src/main/cpp/lzma/Asm/x86/7zAsm.asm +0 -147
  120. package/harmony/src/main/cpp/lzma/Asm/x86/7zCrcOpt.asm +0 -147
  121. package/harmony/src/main/cpp/lzma/Asm/x86/AesOpt.asm +0 -237
  122. package/harmony/src/main/cpp/lzma/Asm/x86/LzmaDecOpt.asm +0 -1258
  123. package/harmony/src/main/cpp/lzma/Asm/x86/XzCrc64Opt.asm +0 -205
  124. package/harmony/src/main/cpp/lzma/C/7z.h +0 -202
  125. package/harmony/src/main/cpp/lzma/C/7zAlloc.c +0 -80
  126. package/harmony/src/main/cpp/lzma/C/7zAlloc.h +0 -19
  127. package/harmony/src/main/cpp/lzma/C/7zArcIn.c +0 -1771
  128. package/harmony/src/main/cpp/lzma/C/7zBuf.c +0 -36
  129. package/harmony/src/main/cpp/lzma/C/7zBuf.h +0 -35
  130. package/harmony/src/main/cpp/lzma/C/7zBuf2.c +0 -52
  131. package/harmony/src/main/cpp/lzma/C/7zCrc.c +0 -128
  132. package/harmony/src/main/cpp/lzma/C/7zCrc.h +0 -25
  133. package/harmony/src/main/cpp/lzma/C/7zCrcOpt.c +0 -115
  134. package/harmony/src/main/cpp/lzma/C/7zDec.c +0 -591
  135. package/harmony/src/main/cpp/lzma/C/7zFile.c +0 -286
  136. package/harmony/src/main/cpp/lzma/C/7zFile.h +0 -83
  137. package/harmony/src/main/cpp/lzma/C/7zStream.c +0 -176
  138. package/harmony/src/main/cpp/lzma/C/7zTypes.h +0 -375
  139. package/harmony/src/main/cpp/lzma/C/7zVersion.h +0 -27
  140. package/harmony/src/main/cpp/lzma/C/7zVersion.rc +0 -55
  141. package/harmony/src/main/cpp/lzma/C/Aes.c +0 -306
  142. package/harmony/src/main/cpp/lzma/C/Aes.h +0 -38
  143. package/harmony/src/main/cpp/lzma/C/AesOpt.c +0 -184
  144. package/harmony/src/main/cpp/lzma/C/Alloc.c +0 -455
  145. package/harmony/src/main/cpp/lzma/C/Alloc.h +0 -51
  146. package/harmony/src/main/cpp/lzma/C/Bcj2.c +0 -257
  147. package/harmony/src/main/cpp/lzma/C/Bcj2.h +0 -146
  148. package/harmony/src/main/cpp/lzma/C/Bcj2Enc.c +0 -311
  149. package/harmony/src/main/cpp/lzma/C/Bra.c +0 -230
  150. package/harmony/src/main/cpp/lzma/C/Bra.h +0 -64
  151. package/harmony/src/main/cpp/lzma/C/Bra86.c +0 -82
  152. package/harmony/src/main/cpp/lzma/C/BraIA64.c +0 -53
  153. package/harmony/src/main/cpp/lzma/C/Compiler.h +0 -33
  154. package/harmony/src/main/cpp/lzma/C/CpuArch.c +0 -218
  155. package/harmony/src/main/cpp/lzma/C/CpuArch.h +0 -336
  156. package/harmony/src/main/cpp/lzma/C/Delta.c +0 -64
  157. package/harmony/src/main/cpp/lzma/C/Delta.h +0 -19
  158. package/harmony/src/main/cpp/lzma/C/DllSecur.c +0 -108
  159. package/harmony/src/main/cpp/lzma/C/DllSecur.h +0 -20
  160. package/harmony/src/main/cpp/lzma/C/LzFind.c +0 -1127
  161. package/harmony/src/main/cpp/lzma/C/LzFind.h +0 -121
  162. package/harmony/src/main/cpp/lzma/C/LzFindMt.c +0 -853
  163. package/harmony/src/main/cpp/lzma/C/LzFindMt.h +0 -101
  164. package/harmony/src/main/cpp/lzma/C/LzHash.h +0 -57
  165. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.c +0 -488
  166. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.h +0 -120
  167. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.c +0 -1082
  168. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.h +0 -79
  169. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.c +0 -803
  170. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.h +0 -55
  171. package/harmony/src/main/cpp/lzma/C/Lzma86.h +0 -111
  172. package/harmony/src/main/cpp/lzma/C/Lzma86Dec.c +0 -54
  173. package/harmony/src/main/cpp/lzma/C/Lzma86Enc.c +0 -106
  174. package/harmony/src/main/cpp/lzma/C/LzmaDec.c +0 -1185
  175. package/harmony/src/main/cpp/lzma/C/LzmaDec.h +0 -234
  176. package/harmony/src/main/cpp/lzma/C/LzmaEnc.c +0 -2976
  177. package/harmony/src/main/cpp/lzma/C/LzmaEnc.h +0 -76
  178. package/harmony/src/main/cpp/lzma/C/LzmaLib.c +0 -40
  179. package/harmony/src/main/cpp/lzma/C/LzmaLib.h +0 -131
  180. package/harmony/src/main/cpp/lzma/C/MtCoder.c +0 -601
  181. package/harmony/src/main/cpp/lzma/C/MtCoder.h +0 -141
  182. package/harmony/src/main/cpp/lzma/C/MtDec.c +0 -1138
  183. package/harmony/src/main/cpp/lzma/C/MtDec.h +0 -201
  184. package/harmony/src/main/cpp/lzma/C/Ppmd.h +0 -85
  185. package/harmony/src/main/cpp/lzma/C/Ppmd7.c +0 -712
  186. package/harmony/src/main/cpp/lzma/C/Ppmd7.h +0 -142
  187. package/harmony/src/main/cpp/lzma/C/Ppmd7Dec.c +0 -191
  188. package/harmony/src/main/cpp/lzma/C/Ppmd7Enc.c +0 -187
  189. package/harmony/src/main/cpp/lzma/C/Precomp.h +0 -10
  190. package/harmony/src/main/cpp/lzma/C/RotateDefs.h +0 -30
  191. package/harmony/src/main/cpp/lzma/C/Sha256.c +0 -248
  192. package/harmony/src/main/cpp/lzma/C/Sha256.h +0 -26
  193. package/harmony/src/main/cpp/lzma/C/Sort.c +0 -141
  194. package/harmony/src/main/cpp/lzma/C/Sort.h +0 -18
  195. package/harmony/src/main/cpp/lzma/C/Threads.c +0 -95
  196. package/harmony/src/main/cpp/lzma/C/Threads.h +0 -70
  197. package/harmony/src/main/cpp/lzma/C/ThreadsP.c +0 -396
  198. package/harmony/src/main/cpp/lzma/C/ThreadsP.h +0 -31
  199. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsp +0 -241
  200. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsw +0 -29
  201. package/harmony/src/main/cpp/lzma/C/Util/7z/7zMain.c +0 -686
  202. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.c +0 -4
  203. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.h +0 -10
  204. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile +0 -40
  205. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile.gcc +0 -75
  206. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.c +0 -258
  207. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -168
  208. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsw +0 -29
  209. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile +0 -28
  210. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile.gcc +0 -44
  211. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.def +0 -4
  212. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsp +0 -178
  213. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsw +0 -29
  214. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLibExports.c +0 -14
  215. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/makefile +0 -34
  216. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/resource.rc +0 -3
  217. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.c +0 -4
  218. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.h +0 -10
  219. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.c +0 -640
  220. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsp +0 -231
  221. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsw +0 -29
  222. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile +0 -37
  223. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile_con +0 -38
  224. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/resource.rc +0 -5
  225. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/setup.ico +0 -0
  226. package/harmony/src/main/cpp/lzma/C/Xz.c +0 -90
  227. package/harmony/src/main/cpp/lzma/C/Xz.h +0 -460
  228. package/harmony/src/main/cpp/lzma/C/XzCrc64.c +0 -86
  229. package/harmony/src/main/cpp/lzma/C/XzCrc64.h +0 -26
  230. package/harmony/src/main/cpp/lzma/C/XzCrc64Opt.c +0 -69
  231. package/harmony/src/main/cpp/lzma/C/XzDec.c +0 -2766
  232. package/harmony/src/main/cpp/lzma/C/XzEnc.c +0 -1329
  233. package/harmony/src/main/cpp/lzma/C/XzEnc.h +0 -60
  234. package/harmony/src/main/cpp/lzma/C/XzIn.c +0 -319
  235. package/harmony/src/main/cpp/lzma/CPP/7zip/7zip.mak +0 -240
  236. package/harmony/src/main/cpp/lzma/CPP/7zip/Aes.mak +0 -7
  237. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.cpp +0 -3
  238. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +0 -76
  239. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +0 -569
  240. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.h +0 -70
  241. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +0 -678
  242. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.h +0 -92
  243. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +0 -423
  244. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +0 -139
  245. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +0 -61
  246. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +0 -763
  247. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.h +0 -181
  248. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +0 -942
  249. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +0 -19
  250. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.h +0 -148
  251. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.cpp +0 -1666
  252. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.h +0 -445
  253. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zItem.h +0 -202
  254. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.cpp +0 -901
  255. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.h +0 -335
  256. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +0 -174
  257. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.h +0 -22
  258. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +0 -21
  259. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +0 -22
  260. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +0 -35
  261. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +0 -2500
  262. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.h +0 -139
  263. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.cpp +0 -3
  264. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.h +0 -8
  265. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive.def +0 -12
  266. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive2.def +0 -19
  267. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/ArchiveExports.cpp +0 -151
  268. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +0 -1125
  269. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +0 -447
  270. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +0 -17
  271. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +0 -25
  272. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +0 -232
  273. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.h +0 -110
  274. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +0 -46
  275. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +0 -67
  276. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +0 -88
  277. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +0 -28
  278. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +0 -191
  279. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.h +0 -89
  280. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +0 -18
  281. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +0 -37
  282. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.cpp +0 -3
  283. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.h +0 -6
  284. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/StdAfx.h +0 -8
  285. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/DllExports2.cpp +0 -122
  286. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/IArchive.h +0 -608
  287. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Icons/7z.ico +0 -0
  288. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/LzmaHandler.cpp +0 -629
  289. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/SplitHandler.cpp +0 -359
  290. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/StdAfx.h +0 -8
  291. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.cpp +0 -1308
  292. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.h +0 -11
  293. package/harmony/src/main/cpp/lzma/CPP/7zip/Asm.mak +0 -9
  294. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +0 -1910
  295. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsw +0 -29
  296. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.cpp +0 -3
  297. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +0 -8
  298. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile +0 -154
  299. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/resource.rc +0 -7
  300. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.cpp +0 -3
  301. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +0 -8
  302. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +0 -96
  303. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/resource.rc +0 -5
  304. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.cpp +0 -3
  305. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +0 -8
  306. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/makefile +0 -116
  307. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/resource.rc +0 -5
  308. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +0 -799
  309. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +0 -477
  310. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsw +0 -29
  311. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.cpp +0 -3
  312. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +0 -8
  313. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile +0 -59
  314. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +0 -195
  315. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/resource.rc +0 -3
  316. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaSpec/LzmaSpec.cpp +0 -715
  317. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/7z.ico +0 -0
  318. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +0 -912
  319. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsw +0 -29
  320. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +0 -482
  321. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.cpp +0 -3
  322. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +0 -8
  323. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile +0 -134
  324. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +0 -5
  325. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +0 -246
  326. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +0 -86
  327. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +0 -137
  328. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +0 -11
  329. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +0 -803
  330. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsw +0 -29
  331. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +0 -364
  332. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.cpp +0 -3
  333. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +0 -13
  334. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/makefile +0 -117
  335. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.h +0 -6
  336. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.rc +0 -16
  337. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/setup.ico +0 -0
  338. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/7z.ico +0 -0
  339. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +0 -988
  340. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsw +0 -29
  341. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +0 -241
  342. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.cpp +0 -3
  343. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +0 -14
  344. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/makefile +0 -153
  345. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.h +0 -1
  346. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -50
  347. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.cpp +0 -250
  348. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.h +0 -120
  349. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.cpp +0 -536
  350. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.h +0 -192
  351. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +0 -46
  352. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.h +0 -10
  353. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.cpp +0 -475
  354. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.h +0 -166
  355. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.cpp +0 -435
  356. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.h +0 -205
  357. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.cpp +0 -163
  358. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.h +0 -92
  359. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +0 -127
  360. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.h +0 -48
  361. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.cpp +0 -367
  362. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.h +0 -252
  363. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.cpp +0 -3
  364. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.h +0 -6
  365. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.cpp +0 -3
  366. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.h +0 -10
  367. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.cpp +0 -509
  368. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.h +0 -264
  369. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.cpp +0 -39
  370. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.h +0 -26
  371. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.cpp +0 -111
  372. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.h +0 -66
  373. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.cpp +0 -51
  374. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.h +0 -35
  375. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/PropId.cpp +0 -108
  376. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterArc.h +0 -78
  377. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterCodec.h +0 -106
  378. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StdAfx.h +0 -8
  379. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.cpp +0 -156
  380. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.h +0 -60
  381. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.cpp +0 -285
  382. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.h +0 -157
  383. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.cpp +0 -56
  384. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.h +0 -13
  385. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.cpp +0 -57
  386. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.h +0 -26
  387. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.cpp +0 -48
  388. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.h +0 -24
  389. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +0 -666
  390. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.h +0 -120
  391. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Register.cpp +0 -24
  392. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.cpp +0 -24
  393. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.h +0 -31
  394. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjRegister.cpp +0 -17
  395. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.cpp +0 -23
  396. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.h +0 -35
  397. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchRegister.cpp +0 -41
  398. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/ByteSwap.cpp +0 -92
  399. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CodecExports.cpp +0 -344
  400. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.cpp +0 -120
  401. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.h +0 -49
  402. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyRegister.cpp +0 -15
  403. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/DeltaFilter.cpp +0 -128
  404. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +0 -265
  405. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.h +0 -96
  406. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +0 -122
  407. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.h +0 -42
  408. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Register.cpp +0 -22
  409. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +0 -343
  410. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.h +0 -113
  411. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +0 -182
  412. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.h +0 -46
  413. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaRegister.cpp +0 -22
  414. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +0 -170
  415. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.h +0 -86
  416. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +0 -152
  417. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.h +0 -58
  418. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdRegister.cpp +0 -22
  419. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/StdAfx.h +0 -8
  420. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.cpp +0 -150
  421. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.h +0 -92
  422. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.cpp +0 -245
  423. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.h +0 -46
  424. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc.mak +0 -8
  425. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc64.mak +0 -8
  426. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.cpp +0 -280
  427. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.h +0 -118
  428. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +0 -17
  429. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.cpp +0 -112
  430. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.h +0 -57
  431. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAesReg.cpp +0 -16
  432. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.cpp +0 -233
  433. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.h +0 -40
  434. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/StdAfx.h +0 -8
  435. package/harmony/src/main/cpp/lzma/CPP/7zip/GuiCommon.rc +0 -84
  436. package/harmony/src/main/cpp/lzma/CPP/7zip/Guid.txt +0 -220
  437. package/harmony/src/main/cpp/lzma/CPP/7zip/ICoder.h +0 -399
  438. package/harmony/src/main/cpp/lzma/CPP/7zip/IDecl.h +0 -28
  439. package/harmony/src/main/cpp/lzma/CPP/7zip/IPassword.h +0 -23
  440. package/harmony/src/main/cpp/lzma/CPP/7zip/IProgress.h +0 -19
  441. package/harmony/src/main/cpp/lzma/CPP/7zip/IStream.h +0 -127
  442. package/harmony/src/main/cpp/lzma/CPP/7zip/LzmaDec.mak +0 -5
  443. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersion.h +0 -2
  444. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersionInfo.rc +0 -2
  445. package/harmony/src/main/cpp/lzma/CPP/7zip/PropID.h +0 -127
  446. package/harmony/src/main/cpp/lzma/CPP/7zip/SubBuild.mak +0 -3
  447. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +0 -993
  448. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +0 -235
  449. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsw +0 -29
  450. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.cpp +0 -3
  451. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.h +0 -8
  452. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile +0 -28
  453. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/resource.rc +0 -3
  454. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +0 -1295
  455. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +0 -136
  456. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +0 -1715
  457. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +0 -403
  458. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +0 -155
  459. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.h +0 -10
  460. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +0 -161
  461. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +0 -112
  462. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.cpp +0 -3618
  463. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.h +0 -77
  464. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.cpp +0 -37
  465. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.h +0 -11
  466. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DirItem.h +0 -190
  467. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +0 -1096
  468. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.h +0 -42
  469. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExitCode.h +0 -27
  470. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.cpp +0 -482
  471. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.h +0 -94
  472. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractMode.h +0 -34
  473. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +0 -280
  474. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +0 -31
  475. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.cpp +0 -347
  476. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.h +0 -110
  477. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +0 -114
  478. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +0 -1074
  479. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.h +0 -424
  480. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +0 -3553
  481. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.h +0 -436
  482. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +0 -668
  483. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.h +0 -18
  484. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Property.h +0 -14
  485. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.cpp +0 -80
  486. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.h +0 -10
  487. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.cpp +0 -25
  488. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.h +0 -10
  489. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/StdAfx.h +0 -8
  490. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.cpp +0 -19
  491. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.h +0 -16
  492. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.cpp +0 -1704
  493. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.h +0 -200
  494. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.cpp +0 -64
  495. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.h +0 -66
  496. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +0 -771
  497. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.h +0 -162
  498. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +0 -233
  499. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.h +0 -27
  500. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +0 -70
  501. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.h +0 -55
  502. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.cpp +0 -94
  503. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.h +0 -26
  504. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ZipRegistry.h +0 -130
  505. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.cpp +0 -41
  506. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.h +0 -14
  507. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.mak +0 -43
  508. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.manifest +0 -13
  509. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +0 -69
  510. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.h +0 -33
  511. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +0 -825
  512. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +0 -164
  513. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.cpp +0 -367
  514. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.h +0 -48
  515. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.cpp +0 -1359
  516. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.h +0 -27
  517. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Main.cpp +0 -1154
  518. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/MainAr.cpp +0 -175
  519. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +0 -115
  520. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +0 -66
  521. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +0 -183
  522. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.h +0 -62
  523. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.cpp +0 -3
  524. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.h +0 -8
  525. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +0 -702
  526. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +0 -124
  527. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +0 -110
  528. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.h +0 -27
  529. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile +0 -64
  530. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/resource.rc +0 -7
  531. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +0 -37
  532. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.h +0 -16
  533. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +0 -1025
  534. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +0 -21
  535. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialogRes.h +0 -9
  536. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +0 -64
  537. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +0 -28
  538. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialogRes.h +0 -4
  539. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/DialogSize.h +0 -16
  540. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +0 -1037
  541. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +0 -328
  542. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.cpp +0 -28
  543. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +0 -14
  544. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/LangUtils.h +0 -40
  545. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +0 -76
  546. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +0 -122
  547. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +0 -69
  548. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +0 -91
  549. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +0 -17
  550. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +0 -58
  551. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +0 -28
  552. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -14
  553. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialogRes.h +0 -5
  554. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +0 -196
  555. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +0 -170
  556. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.rc +0 -12
  557. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +0 -1337
  558. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +0 -351
  559. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.rc +0 -40
  560. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +0 -48
  561. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +0 -80
  562. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialogRes.h +0 -3
  563. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.cpp +0 -23
  564. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.h +0 -10
  565. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -95
  566. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +0 -255
  567. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +0 -62
  568. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resource.h +0 -177
  569. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -15
  570. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/Extract.rc +0 -59
  571. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +0 -418
  572. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +0 -113
  573. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc +0 -98
  574. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h +0 -24
  575. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +0 -280
  576. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +0 -38
  577. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractRes.h +0 -51
  578. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/HashGUI.h +0 -27
  579. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/resource2.h +0 -2
  580. package/harmony/src/main/cpp/lzma/CPP/Build.mak +0 -156
  581. package/harmony/src/main/cpp/lzma/CPP/Common/AutoPtr.h +0 -35
  582. package/harmony/src/main/cpp/lzma/CPP/Common/CRC.cpp +0 -7
  583. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.cpp +0 -92
  584. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.h +0 -53
  585. package/harmony/src/main/cpp/lzma/CPP/Common/ComTry.h +0 -21
  586. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.cpp +0 -197
  587. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.h +0 -63
  588. package/harmony/src/main/cpp/lzma/CPP/Common/Common.h +0 -43
  589. package/harmony/src/main/cpp/lzma/CPP/Common/CrcReg.cpp +0 -98
  590. package/harmony/src/main/cpp/lzma/CPP/Common/Defs.h +0 -15
  591. package/harmony/src/main/cpp/lzma/CPP/Common/DynamicBuffer.h +0 -64
  592. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.cpp +0 -193
  593. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.h +0 -28
  594. package/harmony/src/main/cpp/lzma/CPP/Common/Lang.h +0 -23
  595. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.cpp +0 -132
  596. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.h +0 -18
  597. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer.h +0 -259
  598. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer2.h +0 -100
  599. package/harmony/src/main/cpp/lzma/CPP/Common/MyCom.h +0 -277
  600. package/harmony/src/main/cpp/lzma/CPP/Common/MyException.h +0 -14
  601. package/harmony/src/main/cpp/lzma/CPP/Common/MyGuidDef.h +0 -54
  602. package/harmony/src/main/cpp/lzma/CPP/Common/MyInitGuid.h +0 -45
  603. package/harmony/src/main/cpp/lzma/CPP/Common/MyLinux.h +0 -42
  604. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.cpp +0 -1659
  605. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.h +0 -868
  606. package/harmony/src/main/cpp/lzma/CPP/Common/MyTypes.h +0 -35
  607. package/harmony/src/main/cpp/lzma/CPP/Common/MyUnknown.h +0 -17
  608. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.cpp +0 -3
  609. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.h +0 -634
  610. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.cpp +0 -145
  611. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.h +0 -231
  612. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.cpp +0 -163
  613. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.h +0 -88
  614. package/harmony/src/main/cpp/lzma/CPP/Common/Sha256Reg.cpp +0 -40
  615. package/harmony/src/main/cpp/lzma/CPP/Common/StdAfx.h +0 -8
  616. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.cpp +0 -89
  617. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.h +0 -38
  618. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.cpp +0 -163
  619. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.h +0 -71
  620. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.cpp +0 -319
  621. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.h +0 -88
  622. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.cpp +0 -144
  623. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.h +0 -21
  624. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.cpp +0 -124
  625. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.h +0 -19
  626. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.cpp +0 -288
  627. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.h +0 -12
  628. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.cpp +0 -676
  629. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.h +0 -149
  630. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Init.cpp +0 -7
  631. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Reg.cpp +0 -42
  632. package/harmony/src/main/cpp/lzma/CPP/Windows/COM.h +0 -70
  633. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.cpp +0 -185
  634. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.h +0 -23
  635. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.cpp +0 -66
  636. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.h +0 -65
  637. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/CommandBar.h +0 -52
  638. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.cpp +0 -251
  639. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.h +0 -170
  640. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Edit.h +0 -19
  641. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.cpp +0 -10
  642. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.h +0 -87
  643. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.cpp +0 -155
  644. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.h +0 -146
  645. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ProgressBar.h +0 -35
  646. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.cpp +0 -143
  647. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.h +0 -50
  648. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ReBar.h +0 -34
  649. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Static.h +0 -28
  650. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StatusBar.h +0 -42
  651. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StdAfx.h +0 -8
  652. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ToolBar.h +0 -43
  653. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Trackbar.h +0 -27
  654. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.cpp +0 -200
  655. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.h +0 -51
  656. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.cpp +0 -109
  657. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.h +0 -58
  658. package/harmony/src/main/cpp/lzma/CPP/Windows/Defs.h +0 -17
  659. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.cpp +0 -66
  660. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.h +0 -15
  661. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.cpp +0 -714
  662. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.h +0 -117
  663. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.cpp +0 -749
  664. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.h +0 -161
  665. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.cpp +0 -432
  666. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.h +0 -212
  667. package/harmony/src/main/cpp/lzma/CPP/Windows/FileLink.cpp +0 -440
  668. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.cpp +0 -12
  669. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.h +0 -66
  670. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.cpp +0 -839
  671. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.h +0 -115
  672. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.cpp +0 -131
  673. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.h +0 -27
  674. package/harmony/src/main/cpp/lzma/CPP/Windows/Handle.h +0 -37
  675. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.cpp +0 -112
  676. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.h +0 -40
  677. package/harmony/src/main/cpp/lzma/CPP/Windows/NtCheck.h +0 -46
  678. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.cpp +0 -347
  679. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.h +0 -114
  680. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.cpp +0 -138
  681. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.h +0 -37
  682. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.cpp +0 -390
  683. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.h +0 -84
  684. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.cpp +0 -103
  685. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.h +0 -16
  686. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.cpp +0 -181
  687. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.h +0 -167
  688. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.cpp +0 -358
  689. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.h +0 -94
  690. package/harmony/src/main/cpp/lzma/CPP/Windows/StdAfx.h +0 -8
  691. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.cpp +0 -10
  692. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.h +0 -164
  693. package/harmony/src/main/cpp/lzma/CPP/Windows/System.cpp +0 -142
  694. package/harmony/src/main/cpp/lzma/CPP/Windows/System.h +0 -40
  695. package/harmony/src/main/cpp/lzma/CPP/Windows/Thread.h +0 -38
  696. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.cpp +0 -213
  697. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.h +0 -32
  698. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.cpp +0 -179
  699. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.h +0 -284
  700. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CRC.cs +0 -55
  701. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CommandLineParser.cs +0 -274
  702. package/harmony/src/main/cpp/lzma/CS/7zip/Common/InBuffer.cs +0 -72
  703. package/harmony/src/main/cpp/lzma/CS/7zip/Common/OutBuffer.cs +0 -47
  704. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/IMatchFinder.cs +0 -24
  705. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzBinTree.cs +0 -367
  706. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzInWindow.cs +0 -132
  707. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzOutWindow.cs +0 -110
  708. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaBase.cs +0 -76
  709. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaDecoder.cs +0 -398
  710. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaEncoder.cs +0 -1480
  711. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.cs +0 -364
  712. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +0 -90
  713. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.sln +0 -20
  714. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaBench.cs +0 -340
  715. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/AssemblyInfo.cs +0 -29
  716. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Resources.cs +0 -70
  717. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Settings.cs +0 -42
  718. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoder.cs +0 -234
  719. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBit.cs +0 -117
  720. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBitTree.cs +0 -157
  721. package/harmony/src/main/cpp/lzma/CS/7zip/ICoder.cs +0 -157
  722. package/harmony/src/main/cpp/lzma/DOC/7zC.txt +0 -187
  723. package/harmony/src/main/cpp/lzma/DOC/7zFormat.txt +0 -469
  724. package/harmony/src/main/cpp/lzma/DOC/Methods.txt +0 -173
  725. package/harmony/src/main/cpp/lzma/DOC/installer.txt +0 -166
  726. package/harmony/src/main/cpp/lzma/DOC/lzma-history.txt +0 -446
  727. package/harmony/src/main/cpp/lzma/DOC/lzma-sdk.txt +0 -357
  728. package/harmony/src/main/cpp/lzma/DOC/lzma-specification.txt +0 -1176
  729. package/harmony/src/main/cpp/lzma/DOC/lzma.txt +0 -328
  730. package/harmony/src/main/cpp/lzma/Java/SevenZip/CRC.java +0 -52
  731. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/BinTree.java +0 -382
  732. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/InWindow.java +0 -131
  733. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/OutWindow.java +0 -85
  734. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Base.java +0 -88
  735. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Decoder.java +0 -329
  736. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Encoder.java +0 -1416
  737. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeDecoder.java +0 -55
  738. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeEncoder.java +0 -99
  739. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Decoder.java +0 -88
  740. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Encoder.java +0 -151
  741. package/harmony/src/main/cpp/lzma/Java/SevenZip/ICodeProgress.java +0 -6
  742. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaAlone.java +0 -253
  743. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaBench.java +0 -392
  744. package/harmony/src/main/cpp/lzma/bin/7zS2.sfx +0 -0
  745. package/harmony/src/main/cpp/lzma/bin/7zS2con.sfx +0 -0
  746. package/harmony/src/main/cpp/lzma/bin/7zSD.sfx +0 -0
  747. package/harmony/src/main/cpp/lzma/bin/7zdec.exe +0 -0
  748. package/harmony/src/main/cpp/lzma/bin/7zr.exe +0 -0
  749. package/harmony/src/main/cpp/lzma/bin/installer/config.txt +0 -5
  750. package/harmony/src/main/cpp/lzma/bin/installer/cr.bat +0 -5
  751. package/harmony/src/main/cpp/lzma/bin/lzma.exe +0 -0
  752. package/harmony/src/main/cpp/lzma/bin/x64/7zr.exe +0 -0
  753. /package/harmony/{BuildProfile.ets → pushy/BuildProfile.ets} +0 -0
  754. /package/harmony/{OAT.xml → pushy/OAT.xml} +0 -0
  755. /package/harmony/{README.md → pushy/README.md} +0 -0
  756. /package/harmony/{build-profile.json5 → pushy/build-profile.json5} +0 -0
  757. /package/harmony/{hvigorfile.ts → pushy/hvigorfile.ts} +0 -0
  758. /package/harmony/{index.ets → pushy/index.ets} +0 -0
  759. /package/harmony/{oh-package-lock.json5 → pushy/oh-package-lock.json5} +0 -0
  760. /package/harmony/{oh-package.json5 → pushy/oh-package.json5} +0 -0
  761. /package/harmony/{src → pushy/src}/main/cpp/CMakeLists.txt +0 -0
  762. /package/harmony/{src → pushy/src}/main/cpp/PushyPackage.h +0 -0
  763. /package/harmony/{src → pushy/src}/main/cpp/PushyTurboModule.cpp +0 -0
  764. /package/harmony/{src → pushy/src}/main/cpp/PushyTurboModule.h +0 -0
  765. /package/harmony/{src → pushy/src}/main/cpp/hpatch.c +0 -0
  766. /package/harmony/{src → pushy/src}/main/cpp/hpatch.h +0 -0
  767. /package/harmony/{src → pushy/src}/main/cpp/pushy.c +0 -0
  768. /package/harmony/{src → pushy/src}/main/cpp/pushy.h +0 -0
  769. /package/harmony/{src → pushy/src}/main/ets/DownloadTask.ts +0 -0
  770. /package/harmony/{src → pushy/src}/main/ets/DownloadTaskParams.ts +0 -0
  771. /package/harmony/{src → pushy/src}/main/ets/EventHub.ts +0 -0
  772. /package/harmony/{src → pushy/src}/main/ets/Logger.ts +0 -0
  773. /package/harmony/{src → pushy/src}/main/ets/PushyFileJSBundleProvider.ets +0 -0
  774. /package/harmony/{src → pushy/src}/main/ets/PushyPackage.ts +0 -0
  775. /package/harmony/{src → pushy/src}/main/ets/PushyTurboModule.ts +0 -0
  776. /package/harmony/{src → pushy/src}/main/ets/UpdateContext.ts +0 -0
  777. /package/harmony/{src → pushy/src}/main/ets/UpdateModuleImpl.ts +0 -0
  778. /package/harmony/{src → pushy/src}/main/module.json5 +0 -0
  779. /package/harmony/{src → pushy/src}/main/resources/base/element/string.json +0 -0
  780. /package/harmony/{src → pushy/src}/main/resources/en_US/element/string.json +0 -0
  781. /package/harmony/{src → pushy/src}/main/resources/zh_CN/element/string.json +0 -0
  782. /package/harmony/{ts.ts → pushy/ts.ts} +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
- */