react-native-update 10.34.7 → 10.34.8

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 (747) hide show
  1. package/.gitmodules +0 -6
  2. package/harmony/pushy/src/main/cpp/CMakeLists.txt +4 -2
  3. package/package.json +1 -1
  4. package/harmony/pushy/src/main/cpp/HDiffPatch/CHANGELOG.md +0 -153
  5. package/harmony/pushy/src/main/cpp/HDiffPatch/LICENSE +0 -48
  6. package/harmony/pushy/src/main/cpp/HDiffPatch/Makefile +0 -157
  7. package/harmony/pushy/src/main/cpp/HDiffPatch/README.md +0 -307
  8. package/harmony/pushy/src/main/cpp/HDiffPatch/_atosize.h +0 -83
  9. package/harmony/pushy/src/main/cpp/HDiffPatch/_clock_for_demo.h +0 -47
  10. package/harmony/pushy/src/main/cpp/HDiffPatch/_dir_ignore.h +0 -191
  11. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +0 -37
  12. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +0 -7
  13. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.bat +0 -1
  14. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.sh +0 -1
  15. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +0 -18
  16. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +0 -20
  17. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +0 -28
  18. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +0 -8
  19. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +0 -8
  20. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffZ.cbp +0 -219
  21. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HPatchZ.cbp +0 -156
  22. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/unitTest.cbp +0 -65
  23. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffPatch.sln +0 -105
  24. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj +0 -237
  25. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +0 -3
  26. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj +0 -318
  27. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +0 -3
  28. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj +0 -182
  29. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj.user +0 -3
  30. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -30
  31. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  32. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +0 -408
  33. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +0 -573
  34. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +0 -396
  35. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/lz4.xcodeproj/project.pbxproj +0 -268
  36. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +0 -361
  37. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +0 -301
  38. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +0 -411
  39. package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +0 -504
  40. package/harmony/pushy/src/main/cpp/HDiffPatch/checksum_plugin_demo.h +0 -344
  41. package/harmony/pushy/src/main/cpp/HDiffPatch/compress_parallel.cpp +0 -166
  42. package/harmony/pushy/src/main/cpp/HDiffPatch/compress_parallel.h +0 -59
  43. package/harmony/pushy/src/main/cpp/HDiffPatch/compress_plugin_demo.h +0 -1152
  44. package/harmony/pushy/src/main/cpp/HDiffPatch/decompress_plugin_demo.h +0 -995
  45. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +0 -797
  46. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +0 -65
  47. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +0 -200
  48. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +0 -178
  49. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +0 -357
  50. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.h +0 -87
  51. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +0 -151
  52. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +0 -770
  53. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +0 -236
  54. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_private.h +0 -47
  55. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +0 -112
  56. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +0 -53
  57. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_types.h +0 -61
  58. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +0 -331
  59. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +0 -144
  60. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +0 -176
  61. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +0 -84
  62. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +0 -146
  63. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +0 -61
  64. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +0 -152
  65. package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +0 -76
  66. package/harmony/pushy/src/main/cpp/HDiffPatch/file_for_patch.c +0 -524
  67. package/harmony/pushy/src/main/cpp/HDiffPatch/file_for_patch.h +0 -259
  68. package/harmony/pushy/src/main/cpp/HDiffPatch/hdiffz.cpp +0 -1570
  69. package/harmony/pushy/src/main/cpp/HDiffPatch/hpatch_dir_listener.h +0 -290
  70. package/harmony/pushy/src/main/cpp/HDiffPatch/hpatchz.c +0 -1221
  71. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +0 -1025
  72. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.h +0 -116
  73. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -72
  74. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +0 -213
  75. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +0 -63
  76. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +0 -170
  77. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +0 -86
  78. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/config.h +0 -89
  79. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c +0 -13
  80. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +0 -398
  81. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +0 -194
  82. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +0 -13
  83. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +0 -204
  84. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +0 -207
  85. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +0 -815
  86. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +0 -586
  87. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +0 -381
  88. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +0 -352
  89. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +0 -137
  90. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +0 -137
  91. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +0 -70
  92. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +0 -628
  93. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +0 -87
  94. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +0 -363
  95. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +0 -139
  96. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +0 -68
  97. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +0 -115
  98. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +0 -342
  99. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +0 -94
  100. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/checksum_plugin.h +0 -52
  101. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.c +0 -2292
  102. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.h +0 -215
  103. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_private.h +0 -165
  104. package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_types.h +0 -251
  105. package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_channel.cpp +0 -174
  106. package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_channel.h +0 -73
  107. package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import.cpp +0 -367
  108. package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import.h +0 -92
  109. package/harmony/pushy/src/main/cpp/HDiffPatch/test/_private_searchBestParams.cpp +0 -301
  110. package/harmony/pushy/src/main/cpp/HDiffPatch/test/hpatchz_test.cpp +0 -292
  111. package/harmony/pushy/src/main/cpp/HDiffPatch/test/testHashClash.cpp +0 -436
  112. package/harmony/pushy/src/main/cpp/HDiffPatch/test/unit_test.cpp +0 -417
  113. package/harmony/pushy/src/main/cpp/lzma/Asm/arm/7zCrcOpt.asm +0 -100
  114. package/harmony/pushy/src/main/cpp/lzma/Asm/x86/7zAsm.asm +0 -147
  115. package/harmony/pushy/src/main/cpp/lzma/Asm/x86/7zCrcOpt.asm +0 -147
  116. package/harmony/pushy/src/main/cpp/lzma/Asm/x86/AesOpt.asm +0 -237
  117. package/harmony/pushy/src/main/cpp/lzma/Asm/x86/LzmaDecOpt.asm +0 -1258
  118. package/harmony/pushy/src/main/cpp/lzma/Asm/x86/XzCrc64Opt.asm +0 -205
  119. package/harmony/pushy/src/main/cpp/lzma/C/7z.h +0 -202
  120. package/harmony/pushy/src/main/cpp/lzma/C/7zAlloc.c +0 -80
  121. package/harmony/pushy/src/main/cpp/lzma/C/7zAlloc.h +0 -19
  122. package/harmony/pushy/src/main/cpp/lzma/C/7zArcIn.c +0 -1771
  123. package/harmony/pushy/src/main/cpp/lzma/C/7zBuf.c +0 -36
  124. package/harmony/pushy/src/main/cpp/lzma/C/7zBuf.h +0 -35
  125. package/harmony/pushy/src/main/cpp/lzma/C/7zBuf2.c +0 -52
  126. package/harmony/pushy/src/main/cpp/lzma/C/7zCrc.c +0 -128
  127. package/harmony/pushy/src/main/cpp/lzma/C/7zCrc.h +0 -25
  128. package/harmony/pushy/src/main/cpp/lzma/C/7zCrcOpt.c +0 -115
  129. package/harmony/pushy/src/main/cpp/lzma/C/7zDec.c +0 -591
  130. package/harmony/pushy/src/main/cpp/lzma/C/7zFile.c +0 -286
  131. package/harmony/pushy/src/main/cpp/lzma/C/7zFile.h +0 -83
  132. package/harmony/pushy/src/main/cpp/lzma/C/7zStream.c +0 -176
  133. package/harmony/pushy/src/main/cpp/lzma/C/7zTypes.h +0 -375
  134. package/harmony/pushy/src/main/cpp/lzma/C/7zVersion.h +0 -27
  135. package/harmony/pushy/src/main/cpp/lzma/C/7zVersion.rc +0 -55
  136. package/harmony/pushy/src/main/cpp/lzma/C/Aes.c +0 -306
  137. package/harmony/pushy/src/main/cpp/lzma/C/Aes.h +0 -38
  138. package/harmony/pushy/src/main/cpp/lzma/C/AesOpt.c +0 -184
  139. package/harmony/pushy/src/main/cpp/lzma/C/Alloc.c +0 -455
  140. package/harmony/pushy/src/main/cpp/lzma/C/Alloc.h +0 -51
  141. package/harmony/pushy/src/main/cpp/lzma/C/Bcj2.c +0 -257
  142. package/harmony/pushy/src/main/cpp/lzma/C/Bcj2.h +0 -146
  143. package/harmony/pushy/src/main/cpp/lzma/C/Bcj2Enc.c +0 -311
  144. package/harmony/pushy/src/main/cpp/lzma/C/Bra.c +0 -230
  145. package/harmony/pushy/src/main/cpp/lzma/C/Bra.h +0 -64
  146. package/harmony/pushy/src/main/cpp/lzma/C/Bra86.c +0 -82
  147. package/harmony/pushy/src/main/cpp/lzma/C/BraIA64.c +0 -53
  148. package/harmony/pushy/src/main/cpp/lzma/C/Compiler.h +0 -33
  149. package/harmony/pushy/src/main/cpp/lzma/C/CpuArch.c +0 -218
  150. package/harmony/pushy/src/main/cpp/lzma/C/CpuArch.h +0 -336
  151. package/harmony/pushy/src/main/cpp/lzma/C/Delta.c +0 -64
  152. package/harmony/pushy/src/main/cpp/lzma/C/Delta.h +0 -19
  153. package/harmony/pushy/src/main/cpp/lzma/C/DllSecur.c +0 -108
  154. package/harmony/pushy/src/main/cpp/lzma/C/DllSecur.h +0 -20
  155. package/harmony/pushy/src/main/cpp/lzma/C/LzFind.c +0 -1127
  156. package/harmony/pushy/src/main/cpp/lzma/C/LzFind.h +0 -121
  157. package/harmony/pushy/src/main/cpp/lzma/C/LzFindMt.c +0 -853
  158. package/harmony/pushy/src/main/cpp/lzma/C/LzFindMt.h +0 -101
  159. package/harmony/pushy/src/main/cpp/lzma/C/LzHash.h +0 -57
  160. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Dec.c +0 -488
  161. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Dec.h +0 -120
  162. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2DecMt.c +0 -1082
  163. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2DecMt.h +0 -79
  164. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Enc.c +0 -803
  165. package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Enc.h +0 -55
  166. package/harmony/pushy/src/main/cpp/lzma/C/Lzma86.h +0 -111
  167. package/harmony/pushy/src/main/cpp/lzma/C/Lzma86Dec.c +0 -54
  168. package/harmony/pushy/src/main/cpp/lzma/C/Lzma86Enc.c +0 -106
  169. package/harmony/pushy/src/main/cpp/lzma/C/LzmaDec.c +0 -1185
  170. package/harmony/pushy/src/main/cpp/lzma/C/LzmaDec.h +0 -234
  171. package/harmony/pushy/src/main/cpp/lzma/C/LzmaEnc.c +0 -2976
  172. package/harmony/pushy/src/main/cpp/lzma/C/LzmaEnc.h +0 -76
  173. package/harmony/pushy/src/main/cpp/lzma/C/LzmaLib.c +0 -40
  174. package/harmony/pushy/src/main/cpp/lzma/C/LzmaLib.h +0 -131
  175. package/harmony/pushy/src/main/cpp/lzma/C/MtCoder.c +0 -601
  176. package/harmony/pushy/src/main/cpp/lzma/C/MtCoder.h +0 -141
  177. package/harmony/pushy/src/main/cpp/lzma/C/MtDec.c +0 -1138
  178. package/harmony/pushy/src/main/cpp/lzma/C/MtDec.h +0 -201
  179. package/harmony/pushy/src/main/cpp/lzma/C/Ppmd.h +0 -85
  180. package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7.c +0 -712
  181. package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7.h +0 -142
  182. package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7Dec.c +0 -191
  183. package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7Enc.c +0 -187
  184. package/harmony/pushy/src/main/cpp/lzma/C/Precomp.h +0 -10
  185. package/harmony/pushy/src/main/cpp/lzma/C/RotateDefs.h +0 -30
  186. package/harmony/pushy/src/main/cpp/lzma/C/Sha256.c +0 -248
  187. package/harmony/pushy/src/main/cpp/lzma/C/Sha256.h +0 -26
  188. package/harmony/pushy/src/main/cpp/lzma/C/Sort.c +0 -141
  189. package/harmony/pushy/src/main/cpp/lzma/C/Sort.h +0 -18
  190. package/harmony/pushy/src/main/cpp/lzma/C/Threads.c +0 -95
  191. package/harmony/pushy/src/main/cpp/lzma/C/Threads.h +0 -70
  192. package/harmony/pushy/src/main/cpp/lzma/C/ThreadsP.c +0 -396
  193. package/harmony/pushy/src/main/cpp/lzma/C/ThreadsP.h +0 -31
  194. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/7z.dsp +0 -241
  195. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/7z.dsw +0 -29
  196. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/7zMain.c +0 -686
  197. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/Precomp.c +0 -4
  198. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/Precomp.h +0 -10
  199. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/makefile +0 -40
  200. package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/makefile.gcc +0 -75
  201. package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.c +0 -258
  202. package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -168
  203. package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsw +0 -29
  204. package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/makefile +0 -28
  205. package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/makefile.gcc +0 -44
  206. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.def +0 -4
  207. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsp +0 -178
  208. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsw +0 -29
  209. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLibExports.c +0 -14
  210. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/makefile +0 -34
  211. package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/resource.rc +0 -3
  212. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.c +0 -4
  213. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.h +0 -10
  214. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.c +0 -640
  215. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsp +0 -231
  216. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsw +0 -29
  217. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/makefile +0 -37
  218. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/makefile_con +0 -38
  219. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/resource.rc +0 -5
  220. package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/setup.ico +0 -0
  221. package/harmony/pushy/src/main/cpp/lzma/C/Xz.c +0 -90
  222. package/harmony/pushy/src/main/cpp/lzma/C/Xz.h +0 -460
  223. package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64.c +0 -86
  224. package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64.h +0 -26
  225. package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64Opt.c +0 -69
  226. package/harmony/pushy/src/main/cpp/lzma/C/XzDec.c +0 -2766
  227. package/harmony/pushy/src/main/cpp/lzma/C/XzEnc.c +0 -1329
  228. package/harmony/pushy/src/main/cpp/lzma/C/XzEnc.h +0 -60
  229. package/harmony/pushy/src/main/cpp/lzma/C/XzIn.c +0 -319
  230. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/7zip.mak +0 -240
  231. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Aes.mak +0 -7
  232. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.cpp +0 -3
  233. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +0 -76
  234. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +0 -569
  235. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.h +0 -70
  236. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +0 -678
  237. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.h +0 -92
  238. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +0 -423
  239. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +0 -139
  240. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +0 -61
  241. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +0 -763
  242. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.h +0 -181
  243. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +0 -942
  244. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +0 -19
  245. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.h +0 -148
  246. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.cpp +0 -1666
  247. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.h +0 -445
  248. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zItem.h +0 -202
  249. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.cpp +0 -901
  250. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.h +0 -335
  251. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +0 -174
  252. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.h +0 -22
  253. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +0 -21
  254. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +0 -22
  255. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +0 -35
  256. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +0 -2500
  257. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.h +0 -139
  258. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.cpp +0 -3
  259. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.h +0 -8
  260. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Archive.def +0 -12
  261. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Archive2.def +0 -19
  262. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/ArchiveExports.cpp +0 -151
  263. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +0 -1125
  264. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +0 -447
  265. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +0 -17
  266. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +0 -25
  267. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +0 -232
  268. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.h +0 -110
  269. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +0 -46
  270. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +0 -67
  271. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +0 -88
  272. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +0 -28
  273. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +0 -191
  274. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.h +0 -89
  275. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +0 -18
  276. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +0 -37
  277. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.cpp +0 -3
  278. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.h +0 -6
  279. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/StdAfx.h +0 -8
  280. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/DllExports2.cpp +0 -122
  281. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/IArchive.h +0 -608
  282. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Icons/7z.ico +0 -0
  283. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/LzmaHandler.cpp +0 -629
  284. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/SplitHandler.cpp +0 -359
  285. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/StdAfx.h +0 -8
  286. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.cpp +0 -1308
  287. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.h +0 -11
  288. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Asm.mak +0 -9
  289. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +0 -1910
  290. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsw +0 -29
  291. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.cpp +0 -3
  292. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +0 -8
  293. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile +0 -154
  294. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/resource.rc +0 -7
  295. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.cpp +0 -3
  296. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +0 -8
  297. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +0 -96
  298. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/resource.rc +0 -5
  299. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.cpp +0 -3
  300. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +0 -8
  301. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/makefile +0 -116
  302. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/resource.rc +0 -5
  303. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +0 -799
  304. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +0 -477
  305. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsw +0 -29
  306. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.cpp +0 -3
  307. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +0 -8
  308. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile +0 -59
  309. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +0 -195
  310. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/resource.rc +0 -3
  311. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaSpec/LzmaSpec.cpp +0 -715
  312. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/7z.ico +0 -0
  313. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +0 -912
  314. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsw +0 -29
  315. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +0 -482
  316. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.cpp +0 -3
  317. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +0 -8
  318. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile +0 -134
  319. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +0 -5
  320. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +0 -246
  321. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +0 -86
  322. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +0 -137
  323. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +0 -11
  324. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +0 -803
  325. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsw +0 -29
  326. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +0 -364
  327. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.cpp +0 -3
  328. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +0 -13
  329. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/makefile +0 -117
  330. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.h +0 -6
  331. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.rc +0 -16
  332. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/setup.ico +0 -0
  333. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/7z.ico +0 -0
  334. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +0 -988
  335. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsw +0 -29
  336. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +0 -241
  337. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.cpp +0 -3
  338. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +0 -14
  339. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/makefile +0 -153
  340. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.h +0 -1
  341. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -50
  342. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.cpp +0 -250
  343. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.h +0 -120
  344. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.cpp +0 -536
  345. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.h +0 -192
  346. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +0 -46
  347. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.h +0 -10
  348. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.cpp +0 -475
  349. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.h +0 -166
  350. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.cpp +0 -435
  351. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.h +0 -205
  352. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.cpp +0 -163
  353. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.h +0 -92
  354. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +0 -127
  355. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.h +0 -48
  356. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.cpp +0 -367
  357. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.h +0 -252
  358. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.cpp +0 -3
  359. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.h +0 -6
  360. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodId.cpp +0 -3
  361. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodId.h +0 -10
  362. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.cpp +0 -509
  363. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.h +0 -264
  364. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.cpp +0 -39
  365. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.h +0 -26
  366. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.cpp +0 -111
  367. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.h +0 -66
  368. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.cpp +0 -51
  369. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.h +0 -35
  370. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/PropId.cpp +0 -108
  371. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/RegisterArc.h +0 -78
  372. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/RegisterCodec.h +0 -106
  373. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StdAfx.h +0 -8
  374. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.cpp +0 -156
  375. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.h +0 -60
  376. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.cpp +0 -285
  377. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.h +0 -157
  378. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.cpp +0 -56
  379. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.h +0 -13
  380. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.cpp +0 -57
  381. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.h +0 -26
  382. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.cpp +0 -48
  383. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.h +0 -24
  384. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +0 -666
  385. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.h +0 -120
  386. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Register.cpp +0 -24
  387. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.cpp +0 -24
  388. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.h +0 -31
  389. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjRegister.cpp +0 -17
  390. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.cpp +0 -23
  391. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.h +0 -35
  392. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchRegister.cpp +0 -41
  393. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/ByteSwap.cpp +0 -92
  394. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CodecExports.cpp +0 -344
  395. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.cpp +0 -120
  396. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.h +0 -49
  397. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CopyRegister.cpp +0 -15
  398. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/DeltaFilter.cpp +0 -128
  399. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +0 -265
  400. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.h +0 -96
  401. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +0 -122
  402. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.h +0 -42
  403. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Register.cpp +0 -22
  404. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +0 -343
  405. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.h +0 -113
  406. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +0 -182
  407. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.h +0 -46
  408. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaRegister.cpp +0 -22
  409. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +0 -170
  410. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.h +0 -86
  411. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +0 -152
  412. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.h +0 -58
  413. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdRegister.cpp +0 -22
  414. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/StdAfx.h +0 -8
  415. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.cpp +0 -150
  416. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.h +0 -92
  417. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.cpp +0 -245
  418. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.h +0 -46
  419. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crc.mak +0 -8
  420. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crc64.mak +0 -8
  421. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.cpp +0 -280
  422. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.h +0 -118
  423. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +0 -17
  424. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.cpp +0 -112
  425. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.h +0 -57
  426. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAesReg.cpp +0 -16
  427. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.cpp +0 -233
  428. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.h +0 -40
  429. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/StdAfx.h +0 -8
  430. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/GuiCommon.rc +0 -84
  431. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Guid.txt +0 -220
  432. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/ICoder.h +0 -399
  433. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IDecl.h +0 -28
  434. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IPassword.h +0 -23
  435. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IProgress.h +0 -19
  436. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IStream.h +0 -127
  437. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/LzmaDec.mak +0 -5
  438. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/MyVersion.h +0 -2
  439. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/MyVersionInfo.rc +0 -2
  440. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/PropID.h +0 -127
  441. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/SubBuild.mak +0 -3
  442. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +0 -993
  443. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +0 -235
  444. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsw +0 -29
  445. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.cpp +0 -3
  446. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.h +0 -8
  447. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile +0 -28
  448. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/resource.rc +0 -3
  449. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +0 -1295
  450. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +0 -136
  451. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +0 -1715
  452. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +0 -403
  453. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +0 -155
  454. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.h +0 -10
  455. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +0 -161
  456. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +0 -112
  457. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.cpp +0 -3618
  458. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.h +0 -77
  459. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.cpp +0 -37
  460. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.h +0 -11
  461. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DirItem.h +0 -190
  462. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +0 -1096
  463. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.h +0 -42
  464. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExitCode.h +0 -27
  465. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.cpp +0 -482
  466. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.h +0 -94
  467. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractMode.h +0 -34
  468. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +0 -280
  469. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +0 -31
  470. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.cpp +0 -347
  471. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.h +0 -110
  472. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +0 -114
  473. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +0 -1074
  474. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.h +0 -424
  475. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +0 -3553
  476. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.h +0 -436
  477. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +0 -668
  478. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.h +0 -18
  479. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Property.h +0 -14
  480. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.cpp +0 -80
  481. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.h +0 -10
  482. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.cpp +0 -25
  483. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.h +0 -10
  484. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/StdAfx.h +0 -8
  485. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.cpp +0 -19
  486. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.h +0 -16
  487. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.cpp +0 -1704
  488. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.h +0 -200
  489. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.cpp +0 -64
  490. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.h +0 -66
  491. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +0 -771
  492. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.h +0 -162
  493. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +0 -233
  494. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.h +0 -27
  495. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +0 -70
  496. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.h +0 -55
  497. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.cpp +0 -94
  498. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.h +0 -26
  499. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ZipRegistry.h +0 -130
  500. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.cpp +0 -41
  501. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.h +0 -14
  502. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.mak +0 -43
  503. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.manifest +0 -13
  504. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +0 -69
  505. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.h +0 -33
  506. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +0 -825
  507. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +0 -164
  508. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.cpp +0 -367
  509. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.h +0 -48
  510. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/List.cpp +0 -1359
  511. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/List.h +0 -27
  512. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Main.cpp +0 -1154
  513. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/MainAr.cpp +0 -175
  514. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +0 -115
  515. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +0 -66
  516. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +0 -183
  517. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.h +0 -62
  518. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.cpp +0 -3
  519. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.h +0 -8
  520. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +0 -702
  521. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +0 -124
  522. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +0 -110
  523. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.h +0 -27
  524. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile +0 -64
  525. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/resource.rc +0 -7
  526. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +0 -37
  527. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.h +0 -16
  528. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +0 -1025
  529. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +0 -21
  530. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialogRes.h +0 -9
  531. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +0 -64
  532. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +0 -28
  533. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialogRes.h +0 -4
  534. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/DialogSize.h +0 -16
  535. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +0 -1037
  536. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +0 -328
  537. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.cpp +0 -28
  538. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +0 -14
  539. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/LangUtils.h +0 -40
  540. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +0 -76
  541. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +0 -122
  542. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +0 -69
  543. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +0 -91
  544. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +0 -17
  545. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +0 -58
  546. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +0 -28
  547. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -14
  548. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialogRes.h +0 -5
  549. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +0 -196
  550. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +0 -170
  551. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.rc +0 -12
  552. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +0 -1337
  553. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +0 -351
  554. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.rc +0 -40
  555. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +0 -48
  556. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +0 -80
  557. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialogRes.h +0 -3
  558. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.cpp +0 -23
  559. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.h +0 -10
  560. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -95
  561. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +0 -255
  562. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +0 -62
  563. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resource.h +0 -177
  564. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -15
  565. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/Extract.rc +0 -59
  566. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +0 -418
  567. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +0 -113
  568. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc +0 -98
  569. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h +0 -24
  570. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +0 -280
  571. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +0 -38
  572. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractRes.h +0 -51
  573. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/HashGUI.h +0 -27
  574. package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/resource2.h +0 -2
  575. package/harmony/pushy/src/main/cpp/lzma/CPP/Build.mak +0 -156
  576. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/AutoPtr.h +0 -35
  577. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CRC.cpp +0 -7
  578. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/C_FileIO.cpp +0 -92
  579. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/C_FileIO.h +0 -53
  580. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ComTry.h +0 -21
  581. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CommandLineParser.cpp +0 -197
  582. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CommandLineParser.h +0 -63
  583. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Common.h +0 -43
  584. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CrcReg.cpp +0 -98
  585. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Defs.h +0 -15
  586. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/DynamicBuffer.h +0 -64
  587. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/IntToString.cpp +0 -193
  588. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/IntToString.h +0 -28
  589. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Lang.h +0 -23
  590. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ListFileUtils.cpp +0 -132
  591. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ListFileUtils.h +0 -18
  592. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyBuffer.h +0 -259
  593. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyBuffer2.h +0 -100
  594. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyCom.h +0 -277
  595. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyException.h +0 -14
  596. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyGuidDef.h +0 -54
  597. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyInitGuid.h +0 -45
  598. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyLinux.h +0 -42
  599. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyString.cpp +0 -1659
  600. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyString.h +0 -868
  601. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyTypes.h +0 -35
  602. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyUnknown.h +0 -17
  603. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyVector.cpp +0 -3
  604. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyVector.h +0 -634
  605. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyWindows.cpp +0 -145
  606. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyWindows.h +0 -231
  607. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/NewHandler.cpp +0 -163
  608. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/NewHandler.h +0 -88
  609. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Sha256Reg.cpp +0 -40
  610. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdAfx.h +0 -8
  611. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdInStream.cpp +0 -89
  612. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdInStream.h +0 -38
  613. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdOutStream.cpp +0 -163
  614. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdOutStream.h +0 -71
  615. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringConvert.cpp +0 -319
  616. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringConvert.h +0 -88
  617. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringToInt.cpp +0 -144
  618. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringToInt.h +0 -21
  619. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/TextConfig.cpp +0 -124
  620. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/TextConfig.h +0 -19
  621. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/UTFConvert.cpp +0 -288
  622. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/UTFConvert.h +0 -12
  623. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Wildcard.cpp +0 -676
  624. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Wildcard.h +0 -149
  625. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/XzCrc64Init.cpp +0 -7
  626. package/harmony/pushy/src/main/cpp/lzma/CPP/Common/XzCrc64Reg.cpp +0 -42
  627. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/COM.h +0 -70
  628. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/CommonDialog.cpp +0 -185
  629. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/CommonDialog.h +0 -23
  630. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.cpp +0 -66
  631. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.h +0 -65
  632. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/CommandBar.h +0 -52
  633. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Dialog.cpp +0 -251
  634. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Dialog.h +0 -170
  635. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Edit.h +0 -19
  636. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ImageList.cpp +0 -10
  637. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ImageList.h +0 -87
  638. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ListView.cpp +0 -155
  639. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ListView.h +0 -146
  640. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ProgressBar.h +0 -35
  641. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.cpp +0 -143
  642. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.h +0 -50
  643. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ReBar.h +0 -34
  644. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Static.h +0 -28
  645. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/StatusBar.h +0 -42
  646. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/StdAfx.h +0 -8
  647. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ToolBar.h +0 -43
  648. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Trackbar.h +0 -27
  649. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Window2.cpp +0 -200
  650. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Window2.h +0 -51
  651. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/DLL.cpp +0 -109
  652. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/DLL.h +0 -58
  653. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Defs.h +0 -17
  654. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ErrorMsg.cpp +0 -66
  655. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ErrorMsg.h +0 -15
  656. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileDir.cpp +0 -714
  657. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileDir.h +0 -117
  658. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileFind.cpp +0 -749
  659. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileFind.h +0 -161
  660. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileIO.cpp +0 -432
  661. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileIO.h +0 -212
  662. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileLink.cpp +0 -440
  663. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileMapping.cpp +0 -12
  664. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileMapping.h +0 -66
  665. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileName.cpp +0 -839
  666. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileName.h +0 -115
  667. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileSystem.cpp +0 -131
  668. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileSystem.h +0 -27
  669. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Handle.h +0 -37
  670. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryLock.cpp +0 -112
  671. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryLock.h +0 -40
  672. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/NtCheck.h +0 -46
  673. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariant.cpp +0 -347
  674. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariant.h +0 -114
  675. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariantConv.cpp +0 -138
  676. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariantConv.h +0 -37
  677. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Registry.cpp +0 -390
  678. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Registry.h +0 -84
  679. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ResourceString.cpp +0 -103
  680. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ResourceString.h +0 -16
  681. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SecurityUtils.cpp +0 -181
  682. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SecurityUtils.h +0 -167
  683. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Shell.cpp +0 -358
  684. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Shell.h +0 -94
  685. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/StdAfx.h +0 -8
  686. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Synchronization.cpp +0 -10
  687. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Synchronization.h +0 -164
  688. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/System.cpp +0 -142
  689. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/System.h +0 -40
  690. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Thread.h +0 -38
  691. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/TimeUtils.cpp +0 -213
  692. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/TimeUtils.h +0 -32
  693. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Window.cpp +0 -179
  694. package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Window.h +0 -284
  695. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Common/CRC.cs +0 -55
  696. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Common/CommandLineParser.cs +0 -274
  697. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Common/InBuffer.cs +0 -72
  698. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Common/OutBuffer.cs +0 -47
  699. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZ/IMatchFinder.cs +0 -24
  700. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzBinTree.cs +0 -367
  701. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzInWindow.cs +0 -132
  702. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzOutWindow.cs +0 -110
  703. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaBase.cs +0 -76
  704. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaDecoder.cs +0 -398
  705. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaEncoder.cs +0 -1480
  706. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.cs +0 -364
  707. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +0 -90
  708. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.sln +0 -20
  709. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaBench.cs +0 -340
  710. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/AssemblyInfo.cs +0 -29
  711. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Resources.cs +0 -70
  712. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Settings.cs +0 -42
  713. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoder.cs +0 -234
  714. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBit.cs +0 -117
  715. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBitTree.cs +0 -157
  716. package/harmony/pushy/src/main/cpp/lzma/CS/7zip/ICoder.cs +0 -157
  717. package/harmony/pushy/src/main/cpp/lzma/DOC/7zC.txt +0 -187
  718. package/harmony/pushy/src/main/cpp/lzma/DOC/7zFormat.txt +0 -469
  719. package/harmony/pushy/src/main/cpp/lzma/DOC/Methods.txt +0 -173
  720. package/harmony/pushy/src/main/cpp/lzma/DOC/installer.txt +0 -166
  721. package/harmony/pushy/src/main/cpp/lzma/DOC/lzma-history.txt +0 -446
  722. package/harmony/pushy/src/main/cpp/lzma/DOC/lzma-sdk.txt +0 -357
  723. package/harmony/pushy/src/main/cpp/lzma/DOC/lzma-specification.txt +0 -1176
  724. package/harmony/pushy/src/main/cpp/lzma/DOC/lzma.txt +0 -328
  725. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/CRC.java +0 -52
  726. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/BinTree.java +0 -382
  727. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/InWindow.java +0 -131
  728. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/OutWindow.java +0 -85
  729. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Base.java +0 -88
  730. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Decoder.java +0 -329
  731. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Encoder.java +0 -1416
  732. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeDecoder.java +0 -55
  733. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeEncoder.java +0 -99
  734. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Decoder.java +0 -88
  735. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Encoder.java +0 -151
  736. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/ICodeProgress.java +0 -6
  737. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/LzmaAlone.java +0 -253
  738. package/harmony/pushy/src/main/cpp/lzma/Java/SevenZip/LzmaBench.java +0 -392
  739. package/harmony/pushy/src/main/cpp/lzma/bin/7zS2.sfx +0 -0
  740. package/harmony/pushy/src/main/cpp/lzma/bin/7zS2con.sfx +0 -0
  741. package/harmony/pushy/src/main/cpp/lzma/bin/7zSD.sfx +0 -0
  742. package/harmony/pushy/src/main/cpp/lzma/bin/7zdec.exe +0 -0
  743. package/harmony/pushy/src/main/cpp/lzma/bin/7zr.exe +0 -0
  744. package/harmony/pushy/src/main/cpp/lzma/bin/installer/config.txt +0 -5
  745. package/harmony/pushy/src/main/cpp/lzma/bin/installer/cr.bat +0 -5
  746. package/harmony/pushy/src/main/cpp/lzma/bin/lzma.exe +0 -0
  747. package/harmony/pushy/src/main/cpp/lzma/bin/x64/7zr.exe +0 -0
@@ -1,1666 +0,0 @@
1
- // 7zIn.cpp
2
-
3
- #include "StdAfx.h"
4
-
5
- #ifdef _WIN32
6
- #include <wchar.h>
7
- #else
8
- #include <ctype.h>
9
- #endif
10
-
11
- #include "../../../../C/7zCrc.h"
12
- #include "../../../../C/CpuArch.h"
13
-
14
- #include "../../Common/StreamObjects.h"
15
- #include "../../Common/StreamUtils.h"
16
-
17
- #include "7zDecode.h"
18
- #include "7zIn.h"
19
-
20
- #define Get16(p) GetUi16(p)
21
- #define Get32(p) GetUi32(p)
22
- #define Get64(p) GetUi64(p)
23
-
24
- // define FORMAT_7Z_RECOVERY if you want to recover multivolume archives with empty StartHeader
25
- #ifndef _SFX
26
- #define FORMAT_7Z_RECOVERY
27
- #endif
28
-
29
- using namespace NWindows;
30
- using namespace NCOM;
31
-
32
- namespace NArchive {
33
- namespace N7z {
34
-
35
- unsigned BoolVector_CountSum(const CBoolVector &v)
36
- {
37
- unsigned sum = 0;
38
- const unsigned size = v.Size();
39
- for (unsigned i = 0; i < size; i++)
40
- if (v[i])
41
- sum++;
42
- return sum;
43
- }
44
-
45
- static inline bool BoolVector_Item_IsValidAndTrue(const CBoolVector &v, unsigned i)
46
- {
47
- return (i < v.Size() ? v[i] : false);
48
- }
49
-
50
- static void BoolVector_Fill_False(CBoolVector &v, unsigned size)
51
- {
52
- v.ClearAndSetSize(size);
53
- bool *p = &v[0];
54
- for (unsigned i = 0; i < size; i++)
55
- p[i] = false;
56
- }
57
-
58
-
59
- class CInArchiveException {};
60
- class CUnsupportedFeatureException: public CInArchiveException {};
61
-
62
- static void ThrowException() { throw CInArchiveException(); }
63
- static inline void ThrowEndOfData() { ThrowException(); }
64
- static inline void ThrowUnsupported() { throw CUnsupportedFeatureException(); }
65
- static inline void ThrowIncorrect() { ThrowException(); }
66
-
67
- class CStreamSwitch
68
- {
69
- CInArchive *_archive;
70
- bool _needRemove;
71
- bool _needUpdatePos;
72
- public:
73
- CStreamSwitch(): _needRemove(false), _needUpdatePos(false) {}
74
- ~CStreamSwitch() { Remove(); }
75
- void Remove();
76
- void Set(CInArchive *archive, const Byte *data, size_t size, bool needUpdatePos);
77
- void Set(CInArchive *archive, const CByteBuffer &byteBuffer);
78
- void Set(CInArchive *archive, const CObjectVector<CByteBuffer> *dataVector);
79
- };
80
-
81
- void CStreamSwitch::Remove()
82
- {
83
- if (_needRemove)
84
- {
85
- if (_archive->_inByteBack->GetRem() != 0)
86
- _archive->ThereIsHeaderError = true;
87
- _archive->DeleteByteStream(_needUpdatePos);
88
- _needRemove = false;
89
- }
90
- }
91
-
92
- void CStreamSwitch::Set(CInArchive *archive, const Byte *data, size_t size, bool needUpdatePos)
93
- {
94
- Remove();
95
- _archive = archive;
96
- _archive->AddByteStream(data, size);
97
- _needRemove = true;
98
- _needUpdatePos = needUpdatePos;
99
- }
100
-
101
- void CStreamSwitch::Set(CInArchive *archive, const CByteBuffer &byteBuffer)
102
- {
103
- Set(archive, byteBuffer, byteBuffer.Size(), false);
104
- }
105
-
106
- void CStreamSwitch::Set(CInArchive *archive, const CObjectVector<CByteBuffer> *dataVector)
107
- {
108
- Remove();
109
- Byte external = archive->ReadByte();
110
- if (external != 0)
111
- {
112
- if (!dataVector)
113
- ThrowIncorrect();
114
- CNum dataIndex = archive->ReadNum();
115
- if (dataIndex >= dataVector->Size())
116
- ThrowIncorrect();
117
- Set(archive, (*dataVector)[dataIndex]);
118
- }
119
- }
120
-
121
- void CInArchive::AddByteStream(const Byte *buf, size_t size)
122
- {
123
- if (_numInByteBufs == kNumBufLevelsMax)
124
- ThrowIncorrect();
125
- _inByteBack = &_inByteVector[_numInByteBufs++];
126
- _inByteBack->Init(buf, size);
127
- }
128
-
129
-
130
- Byte CInByte2::ReadByte()
131
- {
132
- if (_pos >= _size)
133
- ThrowEndOfData();
134
- return _buffer[_pos++];
135
- }
136
-
137
- void CInByte2::ReadBytes(Byte *data, size_t size)
138
- {
139
- if (size == 0)
140
- return;
141
- if (size > _size - _pos)
142
- ThrowEndOfData();
143
- memcpy(data, _buffer + _pos, size);
144
- _pos += size;
145
- }
146
-
147
- void CInByte2::SkipData(UInt64 size)
148
- {
149
- if (size > _size - _pos)
150
- ThrowEndOfData();
151
- _pos += (size_t)size;
152
- }
153
-
154
- void CInByte2::SkipData()
155
- {
156
- SkipData(ReadNumber());
157
- }
158
-
159
- static UInt64 ReadNumberSpec(const Byte *p, size_t size, size_t &processed)
160
- {
161
- if (size == 0)
162
- {
163
- processed = 0;
164
- return 0;
165
- }
166
-
167
- unsigned b = *p++;
168
- size--;
169
-
170
- if ((b & 0x80) == 0)
171
- {
172
- processed = 1;
173
- return b;
174
- }
175
-
176
- if (size == 0)
177
- {
178
- processed = 0;
179
- return 0;
180
- }
181
-
182
- UInt64 value = (UInt64)*p;
183
- p++;
184
- size--;
185
-
186
- for (unsigned i = 1; i < 8; i++)
187
- {
188
- unsigned mask = (unsigned)0x80 >> i;
189
- if ((b & mask) == 0)
190
- {
191
- UInt64 high = b & (mask - 1);
192
- value |= (high << (i * 8));
193
- processed = i + 1;
194
- return value;
195
- }
196
-
197
- if (size == 0)
198
- {
199
- processed = 0;
200
- return 0;
201
- }
202
-
203
- value |= ((UInt64)*p << (i * 8));
204
- p++;
205
- size--;
206
- }
207
-
208
- processed = 9;
209
- return value;
210
- }
211
-
212
- UInt64 CInByte2::ReadNumber()
213
- {
214
- size_t processed;
215
- UInt64 res = ReadNumberSpec(_buffer + _pos, _size - _pos, processed);
216
- if (processed == 0)
217
- ThrowEndOfData();
218
- _pos += processed;
219
- return res;
220
- }
221
-
222
- CNum CInByte2::ReadNum()
223
- {
224
- /*
225
- if (_pos < _size)
226
- {
227
- Byte val = _buffer[_pos];
228
- if ((unsigned)val < 0x80)
229
- {
230
- _pos++;
231
- return (unsigned)val;
232
- }
233
- }
234
- */
235
- UInt64 value = ReadNumber();
236
- if (value > kNumMax)
237
- ThrowUnsupported();
238
- return (CNum)value;
239
- }
240
-
241
- UInt32 CInByte2::ReadUInt32()
242
- {
243
- if (_pos + 4 > _size)
244
- ThrowEndOfData();
245
- UInt32 res = Get32(_buffer + _pos);
246
- _pos += 4;
247
- return res;
248
- }
249
-
250
- UInt64 CInByte2::ReadUInt64()
251
- {
252
- if (_pos + 8 > _size)
253
- ThrowEndOfData();
254
- UInt64 res = Get64(_buffer + _pos);
255
- _pos += 8;
256
- return res;
257
- }
258
-
259
- #define CHECK_SIGNATURE if (p[0] != '7' || p[1] != 'z' || p[2] != 0xBC || p[3] != 0xAF || p[4] != 0x27 || p[5] != 0x1C) return false;
260
-
261
- static inline bool TestSignature(const Byte *p)
262
- {
263
- CHECK_SIGNATURE
264
- return CrcCalc(p + 12, 20) == Get32(p + 8);
265
- }
266
-
267
- #ifdef FORMAT_7Z_RECOVERY
268
- static inline bool TestSignature2(const Byte *p)
269
- {
270
- CHECK_SIGNATURE;
271
- if (CrcCalc(p + 12, 20) == Get32(p + 8))
272
- return true;
273
- for (unsigned i = 8; i < kHeaderSize; i++)
274
- if (p[i] != 0)
275
- return false;
276
- return (p[6] != 0 || p[7] != 0);
277
- }
278
- #else
279
- #define TestSignature2(p) TestSignature(p)
280
- #endif
281
-
282
- HRESULT CInArchive::FindAndReadSignature(IInStream *stream, const UInt64 *searchHeaderSizeLimit)
283
- {
284
- RINOK(ReadStream_FALSE(stream, _header, kHeaderSize));
285
-
286
- if (TestSignature2(_header))
287
- return S_OK;
288
- if (searchHeaderSizeLimit && *searchHeaderSizeLimit == 0)
289
- return S_FALSE;
290
-
291
- const UInt32 kBufSize = 1 << 15;
292
- CByteArr buf(kBufSize);
293
- memcpy(buf, _header, kHeaderSize);
294
- UInt64 offset = 0;
295
-
296
- for (;;)
297
- {
298
- UInt32 readSize = kBufSize - kHeaderSize;
299
- if (searchHeaderSizeLimit)
300
- {
301
- UInt64 rem = *searchHeaderSizeLimit - offset;
302
- if (readSize > rem)
303
- readSize = (UInt32)rem;
304
- if (readSize == 0)
305
- return S_FALSE;
306
- }
307
-
308
- UInt32 processed = 0;
309
- RINOK(stream->Read(buf + kHeaderSize, readSize, &processed));
310
- if (processed == 0)
311
- return S_FALSE;
312
-
313
- for (UInt32 pos = 0;;)
314
- {
315
- const Byte *p = buf + pos + 1;
316
- const Byte *lim = buf + processed;
317
- for (; p <= lim; p += 4)
318
- {
319
- if (p[0] == '7') break;
320
- if (p[1] == '7') { p += 1; break; }
321
- if (p[2] == '7') { p += 2; break; }
322
- if (p[3] == '7') { p += 3; break; }
323
- };
324
- if (p > lim)
325
- break;
326
- pos = (UInt32)(p - buf);
327
- if (TestSignature(p))
328
- {
329
- memcpy(_header, p, kHeaderSize);
330
- _arhiveBeginStreamPosition += offset + pos;
331
- return stream->Seek(_arhiveBeginStreamPosition + kHeaderSize, STREAM_SEEK_SET, NULL);
332
- }
333
- }
334
-
335
- offset += processed;
336
- memmove(buf, buf + processed, kHeaderSize);
337
- }
338
- }
339
-
340
- // S_FALSE means that file is not archive
341
- HRESULT CInArchive::Open(IInStream *stream, const UInt64 *searchHeaderSizeLimit)
342
- {
343
- HeadersSize = 0;
344
- Close();
345
- RINOK(stream->Seek(0, STREAM_SEEK_CUR, &_arhiveBeginStreamPosition))
346
- RINOK(stream->Seek(0, STREAM_SEEK_END, &_fileEndPosition))
347
- RINOK(stream->Seek(_arhiveBeginStreamPosition, STREAM_SEEK_SET, NULL))
348
- RINOK(FindAndReadSignature(stream, searchHeaderSizeLimit));
349
- _stream = stream;
350
- return S_OK;
351
- }
352
-
353
- void CInArchive::Close()
354
- {
355
- _numInByteBufs = 0;
356
- _stream.Release();
357
- ThereIsHeaderError = false;
358
- }
359
-
360
- void CInArchive::ReadArchiveProperties(CInArchiveInfo & /* archiveInfo */)
361
- {
362
- for (;;)
363
- {
364
- if (ReadID() == NID::kEnd)
365
- break;
366
- SkipData();
367
- }
368
- }
369
-
370
- // CFolder &folder can be non empty. So we must set all fields
371
-
372
- void CInByte2::ParseFolder(CFolder &folder)
373
- {
374
- UInt32 numCoders = ReadNum();
375
-
376
- if (numCoders == 0)
377
- ThrowUnsupported();
378
-
379
- folder.Coders.SetSize(numCoders);
380
-
381
- UInt32 numInStreams = 0;
382
- UInt32 i;
383
- for (i = 0; i < numCoders; i++)
384
- {
385
- CCoderInfo &coder = folder.Coders[i];
386
- {
387
- Byte mainByte = ReadByte();
388
- if ((mainByte & 0xC0) != 0)
389
- ThrowUnsupported();
390
- unsigned idSize = (mainByte & 0xF);
391
- if (idSize > 8 || idSize > GetRem())
392
- ThrowUnsupported();
393
- const Byte *longID = GetPtr();
394
- UInt64 id = 0;
395
- for (unsigned j = 0; j < idSize; j++)
396
- id = ((id << 8) | longID[j]);
397
- SkipDataNoCheck(idSize);
398
- coder.MethodID = id;
399
-
400
- if ((mainByte & 0x10) != 0)
401
- {
402
- coder.NumStreams = ReadNum();
403
- /* numOutStreams = */ ReadNum();
404
- }
405
- else
406
- {
407
- coder.NumStreams = 1;
408
- }
409
-
410
- if ((mainByte & 0x20) != 0)
411
- {
412
- CNum propsSize = ReadNum();
413
- coder.Props.Alloc((size_t)propsSize);
414
- ReadBytes((Byte *)coder.Props, (size_t)propsSize);
415
- }
416
- else
417
- coder.Props.Free();
418
- }
419
- numInStreams += coder.NumStreams;
420
- }
421
-
422
- UInt32 numBonds = numCoders - 1;
423
- folder.Bonds.SetSize(numBonds);
424
- for (i = 0; i < numBonds; i++)
425
- {
426
- CBond &bp = folder.Bonds[i];
427
- bp.PackIndex = ReadNum();
428
- bp.UnpackIndex = ReadNum();
429
- }
430
-
431
- if (numInStreams < numBonds)
432
- ThrowUnsupported();
433
- UInt32 numPackStreams = numInStreams - numBonds;
434
- folder.PackStreams.SetSize(numPackStreams);
435
-
436
- if (numPackStreams == 1)
437
- {
438
- for (i = 0; i < numInStreams; i++)
439
- if (folder.FindBond_for_PackStream(i) < 0)
440
- {
441
- folder.PackStreams[0] = i;
442
- break;
443
- }
444
- if (i == numInStreams)
445
- ThrowUnsupported();
446
- }
447
- else
448
- for (i = 0; i < numPackStreams; i++)
449
- folder.PackStreams[i] = ReadNum();
450
- }
451
-
452
- void CFolders::ParseFolderInfo(unsigned folderIndex, CFolder &folder) const
453
- {
454
- size_t startPos = FoCodersDataOffset[folderIndex];
455
- CInByte2 inByte;
456
- inByte.Init(CodersData + startPos, FoCodersDataOffset[folderIndex + 1] - startPos);
457
- inByte.ParseFolder(folder);
458
- if (inByte.GetRem() != 0)
459
- throw 20120424;
460
- }
461
-
462
-
463
- void CDatabase::GetPath(unsigned index, UString &path) const
464
- {
465
- path.Empty();
466
- if (!NameOffsets || !NamesBuf)
467
- return;
468
-
469
- size_t offset = NameOffsets[index];
470
- size_t size = NameOffsets[index + 1] - offset;
471
-
472
- if (size >= (1 << 28))
473
- return;
474
-
475
- wchar_t *s = path.GetBuf((unsigned)size - 1);
476
-
477
- const Byte *p = ((const Byte *)NamesBuf + offset * 2);
478
-
479
- #if defined(_WIN32) && defined(MY_CPU_LE)
480
-
481
- wmemcpy(s, (const wchar_t *)p, size);
482
-
483
- #else
484
-
485
- for (size_t i = 0; i < size; i++)
486
- {
487
- *s = Get16(p);
488
- p += 2;
489
- s++;
490
- }
491
-
492
- #endif
493
-
494
- path.ReleaseBuf_SetLen((unsigned)size - 1);
495
- }
496
-
497
- HRESULT CDatabase::GetPath_Prop(unsigned index, PROPVARIANT *path) const throw()
498
- {
499
- PropVariant_Clear(path);
500
- if (!NameOffsets || !NamesBuf)
501
- return S_OK;
502
-
503
- size_t offset = NameOffsets[index];
504
- size_t size = NameOffsets[index + 1] - offset;
505
-
506
- if (size >= (1 << 14))
507
- return S_OK;
508
-
509
- RINOK(PropVarEm_Alloc_Bstr(path, (unsigned)size - 1));
510
- wchar_t *s = path->bstrVal;
511
-
512
- const Byte *p = ((const Byte *)NamesBuf + offset * 2);
513
-
514
- for (size_t i = 0; i < size; i++)
515
- {
516
- wchar_t c = Get16(p);
517
- p += 2;
518
- #if WCHAR_PATH_SEPARATOR != L'/'
519
- if (c == L'/')
520
- c = WCHAR_PATH_SEPARATOR;
521
- #endif
522
- *s++ = c;
523
- }
524
-
525
- return S_OK;
526
-
527
- /*
528
- unsigned cur = index;
529
- unsigned size = 0;
530
-
531
- for (int i = 0;; i++)
532
- {
533
- size_t len = NameOffsets[cur + 1] - NameOffsets[cur];
534
- size += (unsigned)len;
535
- if (i > 256 || len > (1 << 14) || size > (1 << 14))
536
- return PropVarEm_Set_Str(path, "[TOO-LONG]");
537
- cur = Files[cur].Parent;
538
- if (cur < 0)
539
- break;
540
- }
541
- size--;
542
-
543
- RINOK(PropVarEm_Alloc_Bstr(path, size));
544
- wchar_t *s = path->bstrVal;
545
- s += size;
546
- *s = 0;
547
- cur = index;
548
-
549
- for (;;)
550
- {
551
- unsigned len = (unsigned)(NameOffsets[cur + 1] - NameOffsets[cur] - 1);
552
- const Byte *p = (const Byte *)NamesBuf + (NameOffsets[cur + 1] * 2) - 2;
553
- for (; len != 0; len--)
554
- {
555
- p -= 2;
556
- --s;
557
- wchar_t c = Get16(p);
558
- if (c == '/')
559
- c = WCHAR_PATH_SEPARATOR;
560
- *s = c;
561
- }
562
-
563
- const CFileItem &file = Files[cur];
564
- cur = file.Parent;
565
- if (cur < 0)
566
- return S_OK;
567
- *(--s) = (file.IsAltStream ? ':' : WCHAR_PATH_SEPARATOR);
568
- }
569
- */
570
- }
571
-
572
- void CInArchive::WaitId(UInt64 id)
573
- {
574
- for (;;)
575
- {
576
- UInt64 type = ReadID();
577
- if (type == id)
578
- return;
579
- if (type == NID::kEnd)
580
- ThrowIncorrect();
581
- SkipData();
582
- }
583
- }
584
-
585
-
586
- void CInArchive::Read_UInt32_Vector(CUInt32DefVector &v)
587
- {
588
- unsigned numItems = v.Defs.Size();
589
- v.Vals.ClearAndSetSize(numItems);
590
- UInt32 *p = &v.Vals[0];
591
- const bool *defs = &v.Defs[0];
592
- for (unsigned i = 0; i < numItems; i++)
593
- {
594
- UInt32 a = 0;
595
- if (defs[i])
596
- a = ReadUInt32();
597
- p[i] = a;
598
- }
599
- }
600
-
601
-
602
- void CInArchive::ReadHashDigests(unsigned numItems, CUInt32DefVector &crcs)
603
- {
604
- ReadBoolVector2(numItems, crcs.Defs);
605
- Read_UInt32_Vector(crcs);
606
- }
607
-
608
-
609
- #define k_Scan_NumCoders_MAX 64
610
- #define k_Scan_NumCodersStreams_in_Folder_MAX 64
611
-
612
- void CInArchive::ReadPackInfo(CFolders &f)
613
- {
614
- CNum numPackStreams = ReadNum();
615
-
616
- WaitId(NID::kSize);
617
- f.PackPositions.Alloc(numPackStreams + 1);
618
- f.NumPackStreams = numPackStreams;
619
- UInt64 sum = 0;
620
- for (CNum i = 0; i < numPackStreams; i++)
621
- {
622
- f.PackPositions[i] = sum;
623
- UInt64 packSize = ReadNumber();
624
- sum += packSize;
625
- if (sum < packSize)
626
- ThrowIncorrect();
627
- }
628
- f.PackPositions[numPackStreams] = sum;
629
-
630
- UInt64 type;
631
- for (;;)
632
- {
633
- type = ReadID();
634
- if (type == NID::kEnd)
635
- return;
636
- if (type == NID::kCRC)
637
- {
638
- CUInt32DefVector PackCRCs;
639
- ReadHashDigests(numPackStreams, PackCRCs);
640
- continue;
641
- }
642
- SkipData();
643
- }
644
- }
645
-
646
- void CInArchive::ReadUnpackInfo(
647
- const CObjectVector<CByteBuffer> *dataVector,
648
- CFolders &folders)
649
- {
650
- WaitId(NID::kFolder);
651
- CNum numFolders = ReadNum();
652
-
653
- CNum numCodersOutStreams = 0;
654
- {
655
- CStreamSwitch streamSwitch;
656
- streamSwitch.Set(this, dataVector);
657
- const Byte *startBufPtr = _inByteBack->GetPtr();
658
- folders.NumFolders = numFolders;
659
-
660
- folders.FoStartPackStreamIndex.Alloc(numFolders + 1);
661
- folders.FoToMainUnpackSizeIndex.Alloc(numFolders);
662
- folders.FoCodersDataOffset.Alloc(numFolders + 1);
663
- folders.FoToCoderUnpackSizes.Alloc(numFolders + 1);
664
-
665
- CBoolVector StreamUsed;
666
- CBoolVector CoderUsed;
667
-
668
- CNum packStreamIndex = 0;
669
- CNum fo;
670
- CInByte2 *inByte = _inByteBack;
671
-
672
- for (fo = 0; fo < numFolders; fo++)
673
- {
674
- UInt32 indexOfMainStream = 0;
675
- UInt32 numPackStreams = 0;
676
- folders.FoCodersDataOffset[fo] = _inByteBack->GetPtr() - startBufPtr;
677
-
678
- CNum numInStreams = 0;
679
- CNum numCoders = inByte->ReadNum();
680
-
681
- if (numCoders == 0 || numCoders > k_Scan_NumCoders_MAX)
682
- ThrowUnsupported();
683
-
684
- for (CNum ci = 0; ci < numCoders; ci++)
685
- {
686
- Byte mainByte = inByte->ReadByte();
687
- if ((mainByte & 0xC0) != 0)
688
- ThrowUnsupported();
689
-
690
- unsigned idSize = (mainByte & 0xF);
691
- if (idSize > 8)
692
- ThrowUnsupported();
693
- if (idSize > inByte->GetRem())
694
- ThrowEndOfData();
695
- const Byte *longID = inByte->GetPtr();
696
- UInt64 id = 0;
697
- for (unsigned j = 0; j < idSize; j++)
698
- id = ((id << 8) | longID[j]);
699
- inByte->SkipDataNoCheck(idSize);
700
- if (folders.ParsedMethods.IDs.Size() < 128)
701
- folders.ParsedMethods.IDs.AddToUniqueSorted(id);
702
-
703
- CNum coderInStreams = 1;
704
- if ((mainByte & 0x10) != 0)
705
- {
706
- coderInStreams = inByte->ReadNum();
707
- if (coderInStreams > k_Scan_NumCodersStreams_in_Folder_MAX)
708
- ThrowUnsupported();
709
- if (inByte->ReadNum() != 1)
710
- ThrowUnsupported();
711
- }
712
-
713
- numInStreams += coderInStreams;
714
- if (numInStreams > k_Scan_NumCodersStreams_in_Folder_MAX)
715
- ThrowUnsupported();
716
-
717
- if ((mainByte & 0x20) != 0)
718
- {
719
- CNum propsSize = inByte->ReadNum();
720
- if (propsSize > inByte->GetRem())
721
- ThrowEndOfData();
722
- if (id == k_LZMA2 && propsSize == 1)
723
- {
724
- Byte v = *_inByteBack->GetPtr();
725
- if (folders.ParsedMethods.Lzma2Prop < v)
726
- folders.ParsedMethods.Lzma2Prop = v;
727
- }
728
- else if (id == k_LZMA && propsSize == 5)
729
- {
730
- UInt32 dicSize = GetUi32(_inByteBack->GetPtr() + 1);
731
- if (folders.ParsedMethods.LzmaDic < dicSize)
732
- folders.ParsedMethods.LzmaDic = dicSize;
733
- }
734
- inByte->SkipDataNoCheck((size_t)propsSize);
735
- }
736
- }
737
-
738
- if (numCoders == 1 && numInStreams == 1)
739
- {
740
- indexOfMainStream = 0;
741
- numPackStreams = 1;
742
- }
743
- else
744
- {
745
- UInt32 i;
746
- CNum numBonds = numCoders - 1;
747
- if (numInStreams < numBonds)
748
- ThrowUnsupported();
749
-
750
- BoolVector_Fill_False(StreamUsed, numInStreams);
751
- BoolVector_Fill_False(CoderUsed, numCoders);
752
-
753
- for (i = 0; i < numBonds; i++)
754
- {
755
- CNum index = ReadNum();
756
- if (index >= numInStreams || StreamUsed[index])
757
- ThrowUnsupported();
758
- StreamUsed[index] = true;
759
-
760
- index = ReadNum();
761
- if (index >= numCoders || CoderUsed[index])
762
- ThrowUnsupported();
763
- CoderUsed[index] = true;
764
- }
765
-
766
- numPackStreams = numInStreams - numBonds;
767
-
768
- if (numPackStreams != 1)
769
- for (i = 0; i < numPackStreams; i++)
770
- {
771
- CNum index = inByte->ReadNum(); // PackStreams
772
- if (index >= numInStreams || StreamUsed[index])
773
- ThrowUnsupported();
774
- StreamUsed[index] = true;
775
- }
776
-
777
- for (i = 0; i < numCoders; i++)
778
- if (!CoderUsed[i])
779
- {
780
- indexOfMainStream = i;
781
- break;
782
- }
783
-
784
- if (i == numCoders)
785
- ThrowUnsupported();
786
- }
787
-
788
- folders.FoToCoderUnpackSizes[fo] = numCodersOutStreams;
789
- numCodersOutStreams += numCoders;
790
- folders.FoStartPackStreamIndex[fo] = packStreamIndex;
791
- if (numPackStreams > folders.NumPackStreams - packStreamIndex)
792
- ThrowIncorrect();
793
- packStreamIndex += numPackStreams;
794
- folders.FoToMainUnpackSizeIndex[fo] = (Byte)indexOfMainStream;
795
- }
796
-
797
- size_t dataSize = _inByteBack->GetPtr() - startBufPtr;
798
- folders.FoToCoderUnpackSizes[fo] = numCodersOutStreams;
799
- folders.FoStartPackStreamIndex[fo] = packStreamIndex;
800
- folders.FoCodersDataOffset[fo] = _inByteBack->GetPtr() - startBufPtr;
801
- folders.CodersData.CopyFrom(startBufPtr, dataSize);
802
-
803
- // if (folders.NumPackStreams != packStreamIndex) ThrowUnsupported();
804
- }
805
-
806
- WaitId(NID::kCodersUnpackSize);
807
- folders.CoderUnpackSizes.Alloc(numCodersOutStreams);
808
- for (CNum i = 0; i < numCodersOutStreams; i++)
809
- folders.CoderUnpackSizes[i] = ReadNumber();
810
-
811
- for (;;)
812
- {
813
- UInt64 type = ReadID();
814
- if (type == NID::kEnd)
815
- return;
816
- if (type == NID::kCRC)
817
- {
818
- ReadHashDigests(numFolders, folders.FolderCRCs);
819
- continue;
820
- }
821
- SkipData();
822
- }
823
- }
824
-
825
- void CInArchive::ReadSubStreamsInfo(
826
- CFolders &folders,
827
- CRecordVector<UInt64> &unpackSizes,
828
- CUInt32DefVector &digests)
829
- {
830
- folders.NumUnpackStreamsVector.Alloc(folders.NumFolders);
831
- CNum i;
832
- for (i = 0; i < folders.NumFolders; i++)
833
- folders.NumUnpackStreamsVector[i] = 1;
834
-
835
- UInt64 type;
836
-
837
- for (;;)
838
- {
839
- type = ReadID();
840
- if (type == NID::kNumUnpackStream)
841
- {
842
- for (i = 0; i < folders.NumFolders; i++)
843
- folders.NumUnpackStreamsVector[i] = ReadNum();
844
- continue;
845
- }
846
- if (type == NID::kCRC || type == NID::kSize || type == NID::kEnd)
847
- break;
848
- SkipData();
849
- }
850
-
851
- if (type == NID::kSize)
852
- {
853
- for (i = 0; i < folders.NumFolders; i++)
854
- {
855
- // v3.13 incorrectly worked with empty folders
856
- // v4.07: we check that folder is empty
857
- CNum numSubstreams = folders.NumUnpackStreamsVector[i];
858
- if (numSubstreams == 0)
859
- continue;
860
- UInt64 sum = 0;
861
- for (CNum j = 1; j < numSubstreams; j++)
862
- {
863
- UInt64 size = ReadNumber();
864
- unpackSizes.Add(size);
865
- sum += size;
866
- if (sum < size)
867
- ThrowIncorrect();
868
- }
869
- UInt64 folderUnpackSize = folders.GetFolderUnpackSize(i);
870
- if (folderUnpackSize < sum)
871
- ThrowIncorrect();
872
- unpackSizes.Add(folderUnpackSize - sum);
873
- }
874
- type = ReadID();
875
- }
876
- else
877
- {
878
- for (i = 0; i < folders.NumFolders; i++)
879
- {
880
- /* v9.26 - v9.29 incorrectly worked:
881
- if (folders.NumUnpackStreamsVector[i] == 0), it threw error */
882
- CNum val = folders.NumUnpackStreamsVector[i];
883
- if (val > 1)
884
- ThrowIncorrect();
885
- if (val == 1)
886
- unpackSizes.Add(folders.GetFolderUnpackSize(i));
887
- }
888
- }
889
-
890
- unsigned numDigests = 0;
891
- for (i = 0; i < folders.NumFolders; i++)
892
- {
893
- CNum numSubstreams = folders.NumUnpackStreamsVector[i];
894
- if (numSubstreams != 1 || !folders.FolderCRCs.ValidAndDefined(i))
895
- numDigests += numSubstreams;
896
- }
897
-
898
- for (;;)
899
- {
900
- if (type == NID::kEnd)
901
- break;
902
- if (type == NID::kCRC)
903
- {
904
- // CUInt32DefVector digests2;
905
- // ReadHashDigests(numDigests, digests2);
906
- CBoolVector digests2;
907
- ReadBoolVector2(numDigests, digests2);
908
-
909
- digests.ClearAndSetSize(unpackSizes.Size());
910
-
911
- unsigned k = 0;
912
- unsigned k2 = 0;
913
-
914
- for (i = 0; i < folders.NumFolders; i++)
915
- {
916
- CNum numSubstreams = folders.NumUnpackStreamsVector[i];
917
- if (numSubstreams == 1 && folders.FolderCRCs.ValidAndDefined(i))
918
- {
919
- digests.Defs[k] = true;
920
- digests.Vals[k] = folders.FolderCRCs.Vals[i];
921
- k++;
922
- }
923
- else for (CNum j = 0; j < numSubstreams; j++)
924
- {
925
- bool defined = digests2[k2++];
926
- digests.Defs[k] = defined;
927
- UInt32 crc = 0;
928
- if (defined)
929
- crc = ReadUInt32();
930
- digests.Vals[k] = crc;
931
- k++;
932
- }
933
- }
934
- // if (k != unpackSizes.Size()) throw 1234567;
935
- }
936
- else
937
- SkipData();
938
-
939
- type = ReadID();
940
- }
941
-
942
- if (digests.Defs.Size() != unpackSizes.Size())
943
- {
944
- digests.ClearAndSetSize(unpackSizes.Size());
945
- unsigned k = 0;
946
- for (i = 0; i < folders.NumFolders; i++)
947
- {
948
- CNum numSubstreams = folders.NumUnpackStreamsVector[i];
949
- if (numSubstreams == 1 && folders.FolderCRCs.ValidAndDefined(i))
950
- {
951
- digests.Defs[k] = true;
952
- digests.Vals[k] = folders.FolderCRCs.Vals[i];
953
- k++;
954
- }
955
- else for (CNum j = 0; j < numSubstreams; j++)
956
- {
957
- digests.Defs[k] = false;
958
- digests.Vals[k] = 0;
959
- k++;
960
- }
961
- }
962
- }
963
- }
964
-
965
- void CInArchive::ReadStreamsInfo(
966
- const CObjectVector<CByteBuffer> *dataVector,
967
- UInt64 &dataOffset,
968
- CFolders &folders,
969
- CRecordVector<UInt64> &unpackSizes,
970
- CUInt32DefVector &digests)
971
- {
972
- UInt64 type = ReadID();
973
-
974
- if (type == NID::kPackInfo)
975
- {
976
- dataOffset = ReadNumber();
977
- ReadPackInfo(folders);
978
- type = ReadID();
979
- }
980
-
981
- if (type == NID::kUnpackInfo)
982
- {
983
- ReadUnpackInfo(dataVector, folders);
984
- type = ReadID();
985
- }
986
-
987
- if (folders.NumFolders != 0 && !folders.PackPositions)
988
- {
989
- // if there are folders, we need PackPositions also
990
- folders.PackPositions.Alloc(1);
991
- folders.PackPositions[0] = 0;
992
- }
993
-
994
- if (type == NID::kSubStreamsInfo)
995
- {
996
- ReadSubStreamsInfo(folders, unpackSizes, digests);
997
- type = ReadID();
998
- }
999
- else
1000
- {
1001
- folders.NumUnpackStreamsVector.Alloc(folders.NumFolders);
1002
- /* If digests.Defs.Size() == 0, it means that there are no crcs.
1003
- So we don't need to fill digests with values. */
1004
- // digests.Vals.ClearAndSetSize(folders.NumFolders);
1005
- // BoolVector_Fill_False(digests.Defs, folders.NumFolders);
1006
- for (CNum i = 0; i < folders.NumFolders; i++)
1007
- {
1008
- folders.NumUnpackStreamsVector[i] = 1;
1009
- unpackSizes.Add(folders.GetFolderUnpackSize(i));
1010
- // digests.Vals[i] = 0;
1011
- }
1012
- }
1013
-
1014
- if (type != NID::kEnd)
1015
- ThrowIncorrect();
1016
- }
1017
-
1018
- void CInArchive::ReadBoolVector(unsigned numItems, CBoolVector &v)
1019
- {
1020
- v.ClearAndSetSize(numItems);
1021
- Byte b = 0;
1022
- Byte mask = 0;
1023
- bool *p = &v[0];
1024
- for (unsigned i = 0; i < numItems; i++)
1025
- {
1026
- if (mask == 0)
1027
- {
1028
- b = ReadByte();
1029
- mask = 0x80;
1030
- }
1031
- p[i] = ((b & mask) != 0);
1032
- mask >>= 1;
1033
- }
1034
- }
1035
-
1036
- void CInArchive::ReadBoolVector2(unsigned numItems, CBoolVector &v)
1037
- {
1038
- Byte allAreDefined = ReadByte();
1039
- if (allAreDefined == 0)
1040
- {
1041
- ReadBoolVector(numItems, v);
1042
- return;
1043
- }
1044
- v.ClearAndSetSize(numItems);
1045
- bool *p = &v[0];
1046
- for (unsigned i = 0; i < numItems; i++)
1047
- p[i] = true;
1048
- }
1049
-
1050
- void CInArchive::ReadUInt64DefVector(const CObjectVector<CByteBuffer> &dataVector,
1051
- CUInt64DefVector &v, unsigned numItems)
1052
- {
1053
- ReadBoolVector2(numItems, v.Defs);
1054
-
1055
- CStreamSwitch streamSwitch;
1056
- streamSwitch.Set(this, &dataVector);
1057
-
1058
- v.Vals.ClearAndSetSize(numItems);
1059
- UInt64 *p = &v.Vals[0];
1060
- const bool *defs = &v.Defs[0];
1061
-
1062
- for (unsigned i = 0; i < numItems; i++)
1063
- {
1064
- UInt64 t = 0;
1065
- if (defs[i])
1066
- t = ReadUInt64();
1067
- p[i] = t;
1068
- }
1069
- }
1070
-
1071
- HRESULT CInArchive::ReadAndDecodePackedStreams(
1072
- DECL_EXTERNAL_CODECS_LOC_VARS
1073
- UInt64 baseOffset,
1074
- UInt64 &dataOffset, CObjectVector<CByteBuffer> &dataVector
1075
- _7Z_DECODER_CRYPRO_VARS_DECL
1076
- )
1077
- {
1078
- CFolders folders;
1079
- CRecordVector<UInt64> unpackSizes;
1080
- CUInt32DefVector digests;
1081
-
1082
- ReadStreamsInfo(NULL,
1083
- dataOffset,
1084
- folders,
1085
- unpackSizes,
1086
- digests);
1087
-
1088
- CDecoder decoder(_useMixerMT);
1089
-
1090
- for (CNum i = 0; i < folders.NumFolders; i++)
1091
- {
1092
- CByteBuffer &data = dataVector.AddNew();
1093
- UInt64 unpackSize64 = folders.GetFolderUnpackSize(i);
1094
- size_t unpackSize = (size_t)unpackSize64;
1095
- if (unpackSize != unpackSize64)
1096
- ThrowUnsupported();
1097
- data.Alloc(unpackSize);
1098
-
1099
- CBufPtrSeqOutStream *outStreamSpec = new CBufPtrSeqOutStream;
1100
- CMyComPtr<ISequentialOutStream> outStream = outStreamSpec;
1101
- outStreamSpec->Init(data, unpackSize);
1102
-
1103
- bool dataAfterEnd_Error = false;
1104
-
1105
- HRESULT result = decoder.Decode(
1106
- EXTERNAL_CODECS_LOC_VARS
1107
- _stream, baseOffset + dataOffset,
1108
- folders, i,
1109
- NULL, // *unpackSize
1110
-
1111
- outStream,
1112
- NULL, // *compressProgress
1113
-
1114
- NULL // **inStreamMainRes
1115
- , dataAfterEnd_Error
1116
-
1117
- _7Z_DECODER_CRYPRO_VARS
1118
- #if !defined(_7ZIP_ST)
1119
- , false // mtMode
1120
- , 1 // numThreads
1121
- , 0 // memUsage
1122
- #endif
1123
- );
1124
-
1125
- RINOK(result);
1126
-
1127
- if (dataAfterEnd_Error)
1128
- ThereIsHeaderError = true;
1129
-
1130
- if (folders.FolderCRCs.ValidAndDefined(i))
1131
- if (CrcCalc(data, unpackSize) != folders.FolderCRCs.Vals[i])
1132
- ThrowIncorrect();
1133
- }
1134
-
1135
- if (folders.PackPositions)
1136
- HeadersSize += folders.PackPositions[folders.NumPackStreams];
1137
-
1138
- return S_OK;
1139
- }
1140
-
1141
- HRESULT CInArchive::ReadHeader(
1142
- DECL_EXTERNAL_CODECS_LOC_VARS
1143
- CDbEx &db
1144
- _7Z_DECODER_CRYPRO_VARS_DECL
1145
- )
1146
- {
1147
- UInt64 type = ReadID();
1148
-
1149
- if (type == NID::kArchiveProperties)
1150
- {
1151
- ReadArchiveProperties(db.ArcInfo);
1152
- type = ReadID();
1153
- }
1154
-
1155
- CObjectVector<CByteBuffer> dataVector;
1156
-
1157
- if (type == NID::kAdditionalStreamsInfo)
1158
- {
1159
- HRESULT result = ReadAndDecodePackedStreams(
1160
- EXTERNAL_CODECS_LOC_VARS
1161
- db.ArcInfo.StartPositionAfterHeader,
1162
- db.ArcInfo.DataStartPosition2,
1163
- dataVector
1164
- _7Z_DECODER_CRYPRO_VARS
1165
- );
1166
- RINOK(result);
1167
- db.ArcInfo.DataStartPosition2 += db.ArcInfo.StartPositionAfterHeader;
1168
- type = ReadID();
1169
- }
1170
-
1171
- CRecordVector<UInt64> unpackSizes;
1172
- CUInt32DefVector digests;
1173
-
1174
- if (type == NID::kMainStreamsInfo)
1175
- {
1176
- ReadStreamsInfo(&dataVector,
1177
- db.ArcInfo.DataStartPosition,
1178
- (CFolders &)db,
1179
- unpackSizes,
1180
- digests);
1181
- db.ArcInfo.DataStartPosition += db.ArcInfo.StartPositionAfterHeader;
1182
- type = ReadID();
1183
- }
1184
-
1185
- if (type == NID::kFilesInfo)
1186
- {
1187
-
1188
- const CNum numFiles = ReadNum();
1189
-
1190
- db.ArcInfo.FileInfoPopIDs.Add(NID::kSize);
1191
- // if (!db.PackSizes.IsEmpty())
1192
- db.ArcInfo.FileInfoPopIDs.Add(NID::kPackInfo);
1193
- if (numFiles > 0 && !digests.Defs.IsEmpty())
1194
- db.ArcInfo.FileInfoPopIDs.Add(NID::kCRC);
1195
-
1196
- CBoolVector emptyStreamVector;
1197
- CBoolVector emptyFileVector;
1198
- CBoolVector antiFileVector;
1199
- CNum numEmptyStreams = 0;
1200
-
1201
- for (;;)
1202
- {
1203
- const UInt64 type2 = ReadID();
1204
- if (type2 == NID::kEnd)
1205
- break;
1206
- UInt64 size = ReadNumber();
1207
- if (size > _inByteBack->GetRem())
1208
- ThrowIncorrect();
1209
- CStreamSwitch switchProp;
1210
- switchProp.Set(this, _inByteBack->GetPtr(), (size_t)size, true);
1211
- bool addPropIdToList = true;
1212
- bool isKnownType = true;
1213
- if (type2 > ((UInt32)1 << 30))
1214
- isKnownType = false;
1215
- else switch ((UInt32)type2)
1216
- {
1217
- case NID::kName:
1218
- {
1219
- CStreamSwitch streamSwitch;
1220
- streamSwitch.Set(this, &dataVector);
1221
- size_t rem = _inByteBack->GetRem();
1222
- db.NamesBuf.Alloc(rem);
1223
- ReadBytes(db.NamesBuf, rem);
1224
- db.NameOffsets.Alloc(numFiles + 1);
1225
- size_t pos = 0;
1226
- unsigned i;
1227
- for (i = 0; i < numFiles; i++)
1228
- {
1229
- size_t curRem = (rem - pos) / 2;
1230
- const UInt16 *buf = (const UInt16 *)(db.NamesBuf + pos);
1231
- size_t j;
1232
- for (j = 0; j < curRem && buf[j] != 0; j++);
1233
- if (j == curRem)
1234
- ThrowEndOfData();
1235
- db.NameOffsets[i] = pos / 2;
1236
- pos += j * 2 + 2;
1237
- }
1238
- db.NameOffsets[i] = pos / 2;
1239
- if (pos != rem)
1240
- ThereIsHeaderError = true;
1241
- break;
1242
- }
1243
-
1244
- case NID::kWinAttrib:
1245
- {
1246
- ReadBoolVector2(numFiles, db.Attrib.Defs);
1247
- CStreamSwitch streamSwitch;
1248
- streamSwitch.Set(this, &dataVector);
1249
- Read_UInt32_Vector(db.Attrib);
1250
- break;
1251
- }
1252
-
1253
- /*
1254
- case NID::kIsAux:
1255
- {
1256
- ReadBoolVector(numFiles, db.IsAux);
1257
- break;
1258
- }
1259
- case NID::kParent:
1260
- {
1261
- db.IsTree = true;
1262
- // CBoolVector boolVector;
1263
- // ReadBoolVector2(numFiles, boolVector);
1264
- // CStreamSwitch streamSwitch;
1265
- // streamSwitch.Set(this, &dataVector);
1266
- CBoolVector boolVector;
1267
- ReadBoolVector2(numFiles, boolVector);
1268
-
1269
- db.ThereAreAltStreams = false;
1270
- for (i = 0; i < numFiles; i++)
1271
- {
1272
- CFileItem &file = db.Files[i];
1273
- // file.Parent = -1;
1274
- // if (boolVector[i])
1275
- file.Parent = (int)ReadUInt32();
1276
- file.IsAltStream = !boolVector[i];
1277
- if (file.IsAltStream)
1278
- db.ThereAreAltStreams = true;
1279
- }
1280
- break;
1281
- }
1282
- */
1283
- case NID::kEmptyStream:
1284
- {
1285
- ReadBoolVector(numFiles, emptyStreamVector);
1286
- numEmptyStreams = BoolVector_CountSum(emptyStreamVector);
1287
- emptyFileVector.Clear();
1288
- antiFileVector.Clear();
1289
- break;
1290
- }
1291
- case NID::kEmptyFile: ReadBoolVector(numEmptyStreams, emptyFileVector); break;
1292
- case NID::kAnti: ReadBoolVector(numEmptyStreams, antiFileVector); break;
1293
- case NID::kStartPos: ReadUInt64DefVector(dataVector, db.StartPos, (unsigned)numFiles); break;
1294
- case NID::kCTime: ReadUInt64DefVector(dataVector, db.CTime, (unsigned)numFiles); break;
1295
- case NID::kATime: ReadUInt64DefVector(dataVector, db.ATime, (unsigned)numFiles); break;
1296
- case NID::kMTime: ReadUInt64DefVector(dataVector, db.MTime, (unsigned)numFiles); break;
1297
- case NID::kDummy:
1298
- {
1299
- for (UInt64 j = 0; j < size; j++)
1300
- if (ReadByte() != 0)
1301
- ThereIsHeaderError = true;
1302
- addPropIdToList = false;
1303
- break;
1304
- }
1305
- /*
1306
- case NID::kNtSecure:
1307
- {
1308
- try
1309
- {
1310
- {
1311
- CStreamSwitch streamSwitch;
1312
- streamSwitch.Set(this, &dataVector);
1313
- UInt32 numDescriptors = ReadUInt32();
1314
- size_t offset = 0;
1315
- db.SecureOffsets.Clear();
1316
- for (i = 0; i < numDescriptors; i++)
1317
- {
1318
- UInt32 size = ReadUInt32();
1319
- db.SecureOffsets.Add(offset);
1320
- offset += size;
1321
- }
1322
- // ThrowIncorrect();;
1323
- db.SecureOffsets.Add(offset);
1324
- db.SecureBuf.SetCapacity(offset);
1325
- for (i = 0; i < numDescriptors; i++)
1326
- {
1327
- offset = db.SecureOffsets[i];
1328
- ReadBytes(db.SecureBuf + offset, db.SecureOffsets[i + 1] - offset);
1329
- }
1330
- db.SecureIDs.Clear();
1331
- for (unsigned i = 0; i < numFiles; i++)
1332
- {
1333
- db.SecureIDs.Add(ReadNum());
1334
- // db.SecureIDs.Add(ReadUInt32());
1335
- }
1336
- // ReadUInt32();
1337
- if (_inByteBack->GetRem() != 0)
1338
- ThrowIncorrect();;
1339
- }
1340
- }
1341
- catch(CInArchiveException &)
1342
- {
1343
- ThereIsHeaderError = true;
1344
- addPropIdToList = isKnownType = false;
1345
- db.ClearSecure();
1346
- }
1347
- break;
1348
- }
1349
- */
1350
- default:
1351
- addPropIdToList = isKnownType = false;
1352
- }
1353
- if (isKnownType)
1354
- {
1355
- if (addPropIdToList)
1356
- db.ArcInfo.FileInfoPopIDs.Add(type2);
1357
- }
1358
- else
1359
- {
1360
- db.UnsupportedFeatureWarning = true;
1361
- _inByteBack->SkipRem();
1362
- }
1363
- // SkipData worked incorrectly in some versions before v4.59 (7zVer <= 0.02)
1364
- if (_inByteBack->GetRem() != 0)
1365
- ThrowIncorrect();
1366
- }
1367
-
1368
- type = ReadID(); // Read (NID::kEnd) end of headers
1369
-
1370
- if (numFiles - numEmptyStreams != unpackSizes.Size())
1371
- ThrowUnsupported();
1372
-
1373
- CNum emptyFileIndex = 0;
1374
- CNum sizeIndex = 0;
1375
-
1376
- const CNum numAntiItems = BoolVector_CountSum(antiFileVector);
1377
-
1378
- if (numAntiItems != 0)
1379
- db.IsAnti.ClearAndSetSize(numFiles);
1380
-
1381
- db.Files.ClearAndSetSize(numFiles);
1382
-
1383
- for (CNum i = 0; i < numFiles; i++)
1384
- {
1385
- CFileItem &file = db.Files[i];
1386
- bool isAnti;
1387
- file.Crc = 0;
1388
- if (!BoolVector_Item_IsValidAndTrue(emptyStreamVector, i))
1389
- {
1390
- file.HasStream = true;
1391
- file.IsDir = false;
1392
- isAnti = false;
1393
- file.Size = unpackSizes[sizeIndex];
1394
- file.CrcDefined = digests.ValidAndDefined(sizeIndex);
1395
- if (file.CrcDefined)
1396
- file.Crc = digests.Vals[sizeIndex];
1397
- sizeIndex++;
1398
- }
1399
- else
1400
- {
1401
- file.HasStream = false;
1402
- file.IsDir = !BoolVector_Item_IsValidAndTrue(emptyFileVector, emptyFileIndex);
1403
- isAnti = BoolVector_Item_IsValidAndTrue(antiFileVector, emptyFileIndex);
1404
- emptyFileIndex++;
1405
- file.Size = 0;
1406
- file.CrcDefined = false;
1407
- }
1408
- if (numAntiItems != 0)
1409
- db.IsAnti[i] = isAnti;
1410
- }
1411
-
1412
- }
1413
-
1414
- db.FillLinks();
1415
-
1416
- if (type != NID::kEnd || _inByteBack->GetRem() != 0)
1417
- {
1418
- db.UnsupportedFeatureWarning = true;
1419
- // ThrowIncorrect();
1420
- }
1421
-
1422
- return S_OK;
1423
- }
1424
-
1425
-
1426
- void CDbEx::FillLinks()
1427
- {
1428
- FolderStartFileIndex.Alloc(NumFolders);
1429
- FileIndexToFolderIndexMap.Alloc(Files.Size());
1430
-
1431
- CNum folderIndex = 0;
1432
- CNum indexInFolder = 0;
1433
- unsigned i;
1434
-
1435
- for (i = 0; i < Files.Size(); i++)
1436
- {
1437
- bool emptyStream = !Files[i].HasStream;
1438
- if (indexInFolder == 0)
1439
- {
1440
- if (emptyStream)
1441
- {
1442
- FileIndexToFolderIndexMap[i] = kNumNoIndex;
1443
- continue;
1444
- }
1445
- // v3.13 incorrectly worked with empty folders
1446
- // v4.07: we skip empty folders
1447
- for (;;)
1448
- {
1449
- if (folderIndex >= NumFolders)
1450
- ThrowIncorrect();
1451
- FolderStartFileIndex[folderIndex] = i;
1452
- if (NumUnpackStreamsVector[folderIndex] != 0)
1453
- break;
1454
- folderIndex++;
1455
- }
1456
- }
1457
- FileIndexToFolderIndexMap[i] = folderIndex;
1458
- if (emptyStream)
1459
- continue;
1460
- if (++indexInFolder >= NumUnpackStreamsVector[folderIndex])
1461
- {
1462
- folderIndex++;
1463
- indexInFolder = 0;
1464
- }
1465
- }
1466
-
1467
- if (indexInFolder != 0)
1468
- {
1469
- folderIndex++;
1470
- // 18.06
1471
- ThereIsHeaderError = true;
1472
- // ThrowIncorrect();
1473
- }
1474
-
1475
- for (;;)
1476
- {
1477
- if (folderIndex >= NumFolders)
1478
- return;
1479
- FolderStartFileIndex[folderIndex] = i;
1480
- if (NumUnpackStreamsVector[folderIndex] != 0)
1481
- {
1482
- // 18.06
1483
- ThereIsHeaderError = true;
1484
- // ThrowIncorrect();
1485
- }
1486
- folderIndex++;
1487
- }
1488
- }
1489
-
1490
-
1491
- HRESULT CInArchive::ReadDatabase2(
1492
- DECL_EXTERNAL_CODECS_LOC_VARS
1493
- CDbEx &db
1494
- _7Z_DECODER_CRYPRO_VARS_DECL
1495
- )
1496
- {
1497
- db.Clear();
1498
- db.ArcInfo.StartPosition = _arhiveBeginStreamPosition;
1499
-
1500
- db.ArcInfo.Version.Major = _header[6];
1501
- db.ArcInfo.Version.Minor = _header[7];
1502
-
1503
- if (db.ArcInfo.Version.Major != kMajorVersion)
1504
- {
1505
- // db.UnsupportedVersion = true;
1506
- return S_FALSE;
1507
- }
1508
-
1509
- UInt64 nextHeaderOffset = Get64(_header + 12);
1510
- UInt64 nextHeaderSize = Get64(_header + 20);
1511
- UInt32 nextHeaderCRC = Get32(_header + 28);
1512
-
1513
- #ifdef FORMAT_7Z_RECOVERY
1514
- UInt32 crcFromArc = Get32(_header + 8);
1515
- if (crcFromArc == 0 && nextHeaderOffset == 0 && nextHeaderSize == 0 && nextHeaderCRC == 0)
1516
- {
1517
- UInt64 cur, fileSize;
1518
- RINOK(_stream->Seek(0, STREAM_SEEK_CUR, &cur));
1519
- const unsigned kCheckSize = 512;
1520
- Byte buf[kCheckSize];
1521
- RINOK(_stream->Seek(0, STREAM_SEEK_END, &fileSize));
1522
- UInt64 rem = fileSize - cur;
1523
- unsigned checkSize = kCheckSize;
1524
- if (rem < kCheckSize)
1525
- checkSize = (unsigned)(rem);
1526
- if (checkSize < 3)
1527
- return S_FALSE;
1528
- RINOK(_stream->Seek(fileSize - checkSize, STREAM_SEEK_SET, NULL));
1529
- RINOK(ReadStream_FALSE(_stream, buf, (size_t)checkSize));
1530
-
1531
- if (buf[checkSize - 1] != 0)
1532
- return S_FALSE;
1533
-
1534
- unsigned i;
1535
- for (i = checkSize - 2;; i--)
1536
- {
1537
- if (buf[i] == NID::kEncodedHeader && buf[i + 1] == NID::kPackInfo ||
1538
- buf[i] == NID::kHeader && buf[i + 1] == NID::kMainStreamsInfo)
1539
- break;
1540
- if (i == 0)
1541
- return S_FALSE;
1542
- }
1543
- nextHeaderSize = checkSize - i;
1544
- nextHeaderOffset = rem - nextHeaderSize;
1545
- nextHeaderCRC = CrcCalc(buf + i, (size_t)nextHeaderSize);
1546
- RINOK(_stream->Seek(cur, STREAM_SEEK_SET, NULL));
1547
- db.StartHeaderWasRecovered = true;
1548
- }
1549
- else
1550
- #endif
1551
- {
1552
- // Crc was tested already at signature check
1553
- // if (CrcCalc(_header + 12, 20) != crcFromArchive) ThrowIncorrect();
1554
- }
1555
-
1556
- db.ArcInfo.StartPositionAfterHeader = _arhiveBeginStreamPosition + kHeaderSize;
1557
- db.PhySize = kHeaderSize;
1558
-
1559
- db.IsArc = false;
1560
- if ((Int64)nextHeaderOffset < 0 ||
1561
- nextHeaderSize > ((UInt64)1 << 62))
1562
- return S_FALSE;
1563
- if (nextHeaderSize == 0)
1564
- {
1565
- if (nextHeaderOffset != 0)
1566
- return S_FALSE;
1567
- db.IsArc = true;
1568
- return S_OK;
1569
- }
1570
-
1571
- if (!db.StartHeaderWasRecovered)
1572
- db.IsArc = true;
1573
-
1574
- HeadersSize += kHeaderSize + nextHeaderSize;
1575
- db.PhySize = kHeaderSize + nextHeaderOffset + nextHeaderSize;
1576
- if (_fileEndPosition - db.ArcInfo.StartPositionAfterHeader < nextHeaderOffset + nextHeaderSize)
1577
- {
1578
- db.UnexpectedEnd = true;
1579
- return S_FALSE;
1580
- }
1581
- RINOK(_stream->Seek(nextHeaderOffset, STREAM_SEEK_CUR, NULL));
1582
-
1583
- size_t nextHeaderSize_t = (size_t)nextHeaderSize;
1584
- if (nextHeaderSize_t != nextHeaderSize)
1585
- return E_OUTOFMEMORY;
1586
- CByteBuffer buffer2(nextHeaderSize_t);
1587
-
1588
- RINOK(ReadStream_FALSE(_stream, buffer2, nextHeaderSize_t));
1589
-
1590
- if (CrcCalc(buffer2, nextHeaderSize_t) != nextHeaderCRC)
1591
- ThrowIncorrect();
1592
-
1593
- if (!db.StartHeaderWasRecovered)
1594
- db.PhySizeWasConfirmed = true;
1595
-
1596
- CStreamSwitch streamSwitch;
1597
- streamSwitch.Set(this, buffer2);
1598
-
1599
- CObjectVector<CByteBuffer> dataVector;
1600
-
1601
- UInt64 type = ReadID();
1602
- if (type != NID::kHeader)
1603
- {
1604
- if (type != NID::kEncodedHeader)
1605
- ThrowIncorrect();
1606
- HRESULT result = ReadAndDecodePackedStreams(
1607
- EXTERNAL_CODECS_LOC_VARS
1608
- db.ArcInfo.StartPositionAfterHeader,
1609
- db.ArcInfo.DataStartPosition2,
1610
- dataVector
1611
- _7Z_DECODER_CRYPRO_VARS
1612
- );
1613
- RINOK(result);
1614
- if (dataVector.Size() == 0)
1615
- return S_OK;
1616
- if (dataVector.Size() > 1)
1617
- ThrowIncorrect();
1618
- streamSwitch.Remove();
1619
- streamSwitch.Set(this, dataVector.Front());
1620
- if (ReadID() != NID::kHeader)
1621
- ThrowIncorrect();
1622
- }
1623
-
1624
- db.IsArc = true;
1625
-
1626
- db.HeadersSize = HeadersSize;
1627
-
1628
- return ReadHeader(
1629
- EXTERNAL_CODECS_LOC_VARS
1630
- db
1631
- _7Z_DECODER_CRYPRO_VARS
1632
- );
1633
- }
1634
-
1635
-
1636
- HRESULT CInArchive::ReadDatabase(
1637
- DECL_EXTERNAL_CODECS_LOC_VARS
1638
- CDbEx &db
1639
- _7Z_DECODER_CRYPRO_VARS_DECL
1640
- )
1641
- {
1642
- try
1643
- {
1644
- HRESULT res = ReadDatabase2(
1645
- EXTERNAL_CODECS_LOC_VARS db
1646
- _7Z_DECODER_CRYPRO_VARS
1647
- );
1648
- if (ThereIsHeaderError)
1649
- db.ThereIsHeaderError = true;
1650
- if (res == E_NOTIMPL)
1651
- ThrowUnsupported();
1652
- return res;
1653
- }
1654
- catch(CUnsupportedFeatureException &)
1655
- {
1656
- db.UnsupportedFeatureError = true;
1657
- return S_FALSE;
1658
- }
1659
- catch(CInArchiveException &)
1660
- {
1661
- db.ThereIsHeaderError = true;
1662
- return S_FALSE;
1663
- }
1664
- }
1665
-
1666
- }}