react-native-update 8.5.5 → 8.5.7

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 (763) hide show
  1. package/.cursor/mcp.json +11 -0
  2. package/dist/endpoint.d.ts +13 -0
  3. package/dist/endpoint.js +58 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.js +18 -0
  6. package/dist/main.d.ts +33 -0
  7. package/dist/main.js +346 -0
  8. package/dist/simpleUpdate.d.ts +61 -0
  9. package/dist/simpleUpdate.js +155 -0
  10. package/dist/type.d.ts +51 -0
  11. package/dist/type.js +2 -0
  12. package/dist/utils.d.ts +5 -0
  13. package/dist/utils.js +106 -0
  14. package/lib/endpoint.ts +2 -5
  15. package/lib/main.ts +8 -8
  16. package/lib/simpleUpdate.tsx +3 -3
  17. package/lib/utils.ts +32 -4
  18. package/package.json +7 -4
  19. package/tsconfig.json +18 -0
  20. package/harmony/src/main/cpp/HDiffPatch/CHANGELOG.md +0 -153
  21. package/harmony/src/main/cpp/HDiffPatch/LICENSE +0 -48
  22. package/harmony/src/main/cpp/HDiffPatch/Makefile +0 -157
  23. package/harmony/src/main/cpp/HDiffPatch/README.md +0 -307
  24. package/harmony/src/main/cpp/HDiffPatch/_atosize.h +0 -83
  25. package/harmony/src/main/cpp/HDiffPatch/_clock_for_demo.h +0 -47
  26. package/harmony/src/main/cpp/HDiffPatch/_dir_ignore.h +0 -191
  27. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +0 -37
  28. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +0 -7
  29. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.bat +0 -1
  30. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs.sh +0 -1
  31. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +0 -18
  32. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +0 -20
  33. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +0 -28
  34. package/harmony/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +0 -8
  35. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +0 -8
  36. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffZ.cbp +0 -219
  37. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/HPatchZ.cbp +0 -156
  38. package/harmony/src/main/cpp/HDiffPatch/builds/codeblocks/unitTest.cbp +0 -65
  39. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffPatch.sln +0 -105
  40. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj +0 -237
  41. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +0 -3
  42. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj +0 -318
  43. package/harmony/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +0 -3
  44. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj +0 -182
  45. package/harmony/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj.user +0 -3
  46. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -30
  47. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  48. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +0 -408
  49. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +0 -573
  50. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +0 -396
  51. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lz4.xcodeproj/project.pbxproj +0 -268
  52. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +0 -361
  53. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +0 -301
  54. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +0 -411
  55. package/harmony/src/main/cpp/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +0 -504
  56. package/harmony/src/main/cpp/HDiffPatch/checksum_plugin_demo.h +0 -344
  57. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.cpp +0 -166
  58. package/harmony/src/main/cpp/HDiffPatch/compress_parallel.h +0 -59
  59. package/harmony/src/main/cpp/HDiffPatch/compress_plugin_demo.h +0 -1152
  60. package/harmony/src/main/cpp/HDiffPatch/decompress_plugin_demo.h +0 -995
  61. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +0 -797
  62. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +0 -65
  63. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +0 -200
  64. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +0 -178
  65. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +0 -357
  66. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.h +0 -87
  67. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +0 -151
  68. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +0 -770
  69. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +0 -236
  70. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_private.h +0 -47
  71. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +0 -112
  72. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +0 -53
  73. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_types.h +0 -61
  74. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +0 -331
  75. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +0 -144
  76. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +0 -176
  77. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +0 -84
  78. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +0 -146
  79. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +0 -61
  80. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +0 -152
  81. package/harmony/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +0 -76
  82. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.c +0 -524
  83. package/harmony/src/main/cpp/HDiffPatch/file_for_patch.h +0 -259
  84. package/harmony/src/main/cpp/HDiffPatch/hdiffz.cpp +0 -1570
  85. package/harmony/src/main/cpp/HDiffPatch/hpatch_dir_listener.h +0 -290
  86. package/harmony/src/main/cpp/HDiffPatch/hpatchz.c +0 -1221
  87. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +0 -1025
  88. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.h +0 -116
  89. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -72
  90. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +0 -213
  91. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +0 -63
  92. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +0 -170
  93. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +0 -86
  94. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/config.h +0 -89
  95. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c +0 -13
  96. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +0 -398
  97. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +0 -194
  98. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +0 -13
  99. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +0 -204
  100. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +0 -207
  101. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +0 -815
  102. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +0 -586
  103. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +0 -381
  104. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +0 -352
  105. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +0 -137
  106. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +0 -137
  107. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +0 -70
  108. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +0 -628
  109. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +0 -87
  110. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +0 -363
  111. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +0 -139
  112. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +0 -68
  113. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +0 -115
  114. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +0 -342
  115. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +0 -94
  116. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/checksum_plugin.h +0 -52
  117. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.c +0 -2292
  118. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.h +0 -215
  119. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_private.h +0 -165
  120. package/harmony/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_types.h +0 -251
  121. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.cpp +0 -174
  122. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_channel.h +0 -73
  123. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.cpp +0 -367
  124. package/harmony/src/main/cpp/HDiffPatch/libParallel/parallel_import.h +0 -92
  125. package/harmony/src/main/cpp/HDiffPatch/test/_private_searchBestParams.cpp +0 -301
  126. package/harmony/src/main/cpp/HDiffPatch/test/hpatchz_test.cpp +0 -292
  127. package/harmony/src/main/cpp/HDiffPatch/test/testHashClash.cpp +0 -436
  128. package/harmony/src/main/cpp/HDiffPatch/test/unit_test.cpp +0 -417
  129. package/harmony/src/main/cpp/lzma/Asm/arm/7zCrcOpt.asm +0 -100
  130. package/harmony/src/main/cpp/lzma/Asm/x86/7zAsm.asm +0 -147
  131. package/harmony/src/main/cpp/lzma/Asm/x86/7zCrcOpt.asm +0 -147
  132. package/harmony/src/main/cpp/lzma/Asm/x86/AesOpt.asm +0 -237
  133. package/harmony/src/main/cpp/lzma/Asm/x86/LzmaDecOpt.asm +0 -1258
  134. package/harmony/src/main/cpp/lzma/Asm/x86/XzCrc64Opt.asm +0 -205
  135. package/harmony/src/main/cpp/lzma/C/7z.h +0 -202
  136. package/harmony/src/main/cpp/lzma/C/7zAlloc.c +0 -80
  137. package/harmony/src/main/cpp/lzma/C/7zAlloc.h +0 -19
  138. package/harmony/src/main/cpp/lzma/C/7zArcIn.c +0 -1771
  139. package/harmony/src/main/cpp/lzma/C/7zBuf.c +0 -36
  140. package/harmony/src/main/cpp/lzma/C/7zBuf.h +0 -35
  141. package/harmony/src/main/cpp/lzma/C/7zBuf2.c +0 -52
  142. package/harmony/src/main/cpp/lzma/C/7zCrc.c +0 -128
  143. package/harmony/src/main/cpp/lzma/C/7zCrc.h +0 -25
  144. package/harmony/src/main/cpp/lzma/C/7zCrcOpt.c +0 -115
  145. package/harmony/src/main/cpp/lzma/C/7zDec.c +0 -591
  146. package/harmony/src/main/cpp/lzma/C/7zFile.c +0 -286
  147. package/harmony/src/main/cpp/lzma/C/7zFile.h +0 -83
  148. package/harmony/src/main/cpp/lzma/C/7zStream.c +0 -176
  149. package/harmony/src/main/cpp/lzma/C/7zTypes.h +0 -375
  150. package/harmony/src/main/cpp/lzma/C/7zVersion.h +0 -27
  151. package/harmony/src/main/cpp/lzma/C/7zVersion.rc +0 -55
  152. package/harmony/src/main/cpp/lzma/C/Aes.c +0 -306
  153. package/harmony/src/main/cpp/lzma/C/Aes.h +0 -38
  154. package/harmony/src/main/cpp/lzma/C/AesOpt.c +0 -184
  155. package/harmony/src/main/cpp/lzma/C/Alloc.c +0 -455
  156. package/harmony/src/main/cpp/lzma/C/Alloc.h +0 -51
  157. package/harmony/src/main/cpp/lzma/C/Bcj2.c +0 -257
  158. package/harmony/src/main/cpp/lzma/C/Bcj2.h +0 -146
  159. package/harmony/src/main/cpp/lzma/C/Bcj2Enc.c +0 -311
  160. package/harmony/src/main/cpp/lzma/C/Bra.c +0 -230
  161. package/harmony/src/main/cpp/lzma/C/Bra.h +0 -64
  162. package/harmony/src/main/cpp/lzma/C/Bra86.c +0 -82
  163. package/harmony/src/main/cpp/lzma/C/BraIA64.c +0 -53
  164. package/harmony/src/main/cpp/lzma/C/Compiler.h +0 -33
  165. package/harmony/src/main/cpp/lzma/C/CpuArch.c +0 -218
  166. package/harmony/src/main/cpp/lzma/C/CpuArch.h +0 -336
  167. package/harmony/src/main/cpp/lzma/C/Delta.c +0 -64
  168. package/harmony/src/main/cpp/lzma/C/Delta.h +0 -19
  169. package/harmony/src/main/cpp/lzma/C/DllSecur.c +0 -108
  170. package/harmony/src/main/cpp/lzma/C/DllSecur.h +0 -20
  171. package/harmony/src/main/cpp/lzma/C/LzFind.c +0 -1127
  172. package/harmony/src/main/cpp/lzma/C/LzFind.h +0 -121
  173. package/harmony/src/main/cpp/lzma/C/LzFindMt.c +0 -853
  174. package/harmony/src/main/cpp/lzma/C/LzFindMt.h +0 -101
  175. package/harmony/src/main/cpp/lzma/C/LzHash.h +0 -57
  176. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.c +0 -488
  177. package/harmony/src/main/cpp/lzma/C/Lzma2Dec.h +0 -120
  178. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.c +0 -1082
  179. package/harmony/src/main/cpp/lzma/C/Lzma2DecMt.h +0 -79
  180. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.c +0 -803
  181. package/harmony/src/main/cpp/lzma/C/Lzma2Enc.h +0 -55
  182. package/harmony/src/main/cpp/lzma/C/Lzma86.h +0 -111
  183. package/harmony/src/main/cpp/lzma/C/Lzma86Dec.c +0 -54
  184. package/harmony/src/main/cpp/lzma/C/Lzma86Enc.c +0 -106
  185. package/harmony/src/main/cpp/lzma/C/LzmaDec.c +0 -1185
  186. package/harmony/src/main/cpp/lzma/C/LzmaDec.h +0 -234
  187. package/harmony/src/main/cpp/lzma/C/LzmaEnc.c +0 -2976
  188. package/harmony/src/main/cpp/lzma/C/LzmaEnc.h +0 -76
  189. package/harmony/src/main/cpp/lzma/C/LzmaLib.c +0 -40
  190. package/harmony/src/main/cpp/lzma/C/LzmaLib.h +0 -131
  191. package/harmony/src/main/cpp/lzma/C/MtCoder.c +0 -601
  192. package/harmony/src/main/cpp/lzma/C/MtCoder.h +0 -141
  193. package/harmony/src/main/cpp/lzma/C/MtDec.c +0 -1138
  194. package/harmony/src/main/cpp/lzma/C/MtDec.h +0 -201
  195. package/harmony/src/main/cpp/lzma/C/Ppmd.h +0 -85
  196. package/harmony/src/main/cpp/lzma/C/Ppmd7.c +0 -712
  197. package/harmony/src/main/cpp/lzma/C/Ppmd7.h +0 -142
  198. package/harmony/src/main/cpp/lzma/C/Ppmd7Dec.c +0 -191
  199. package/harmony/src/main/cpp/lzma/C/Ppmd7Enc.c +0 -187
  200. package/harmony/src/main/cpp/lzma/C/Precomp.h +0 -10
  201. package/harmony/src/main/cpp/lzma/C/RotateDefs.h +0 -30
  202. package/harmony/src/main/cpp/lzma/C/Sha256.c +0 -248
  203. package/harmony/src/main/cpp/lzma/C/Sha256.h +0 -26
  204. package/harmony/src/main/cpp/lzma/C/Sort.c +0 -141
  205. package/harmony/src/main/cpp/lzma/C/Sort.h +0 -18
  206. package/harmony/src/main/cpp/lzma/C/Threads.c +0 -95
  207. package/harmony/src/main/cpp/lzma/C/Threads.h +0 -70
  208. package/harmony/src/main/cpp/lzma/C/ThreadsP.c +0 -396
  209. package/harmony/src/main/cpp/lzma/C/ThreadsP.h +0 -31
  210. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsp +0 -241
  211. package/harmony/src/main/cpp/lzma/C/Util/7z/7z.dsw +0 -29
  212. package/harmony/src/main/cpp/lzma/C/Util/7z/7zMain.c +0 -686
  213. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.c +0 -4
  214. package/harmony/src/main/cpp/lzma/C/Util/7z/Precomp.h +0 -10
  215. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile +0 -40
  216. package/harmony/src/main/cpp/lzma/C/Util/7z/makefile.gcc +0 -75
  217. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.c +0 -258
  218. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -168
  219. package/harmony/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsw +0 -29
  220. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile +0 -28
  221. package/harmony/src/main/cpp/lzma/C/Util/Lzma/makefile.gcc +0 -44
  222. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.def +0 -4
  223. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsp +0 -178
  224. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsw +0 -29
  225. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLibExports.c +0 -14
  226. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/makefile +0 -34
  227. package/harmony/src/main/cpp/lzma/C/Util/LzmaLib/resource.rc +0 -3
  228. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.c +0 -4
  229. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.h +0 -10
  230. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.c +0 -640
  231. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsp +0 -231
  232. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.dsw +0 -29
  233. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile +0 -37
  234. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/makefile_con +0 -38
  235. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/resource.rc +0 -5
  236. package/harmony/src/main/cpp/lzma/C/Util/SfxSetup/setup.ico +0 -0
  237. package/harmony/src/main/cpp/lzma/C/Xz.c +0 -90
  238. package/harmony/src/main/cpp/lzma/C/Xz.h +0 -460
  239. package/harmony/src/main/cpp/lzma/C/XzCrc64.c +0 -86
  240. package/harmony/src/main/cpp/lzma/C/XzCrc64.h +0 -26
  241. package/harmony/src/main/cpp/lzma/C/XzCrc64Opt.c +0 -69
  242. package/harmony/src/main/cpp/lzma/C/XzDec.c +0 -2766
  243. package/harmony/src/main/cpp/lzma/C/XzEnc.c +0 -1329
  244. package/harmony/src/main/cpp/lzma/C/XzEnc.h +0 -60
  245. package/harmony/src/main/cpp/lzma/C/XzIn.c +0 -319
  246. package/harmony/src/main/cpp/lzma/CPP/7zip/7zip.mak +0 -240
  247. package/harmony/src/main/cpp/lzma/CPP/7zip/Aes.mak +0 -7
  248. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.cpp +0 -3
  249. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +0 -76
  250. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +0 -569
  251. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.h +0 -70
  252. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +0 -678
  253. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.h +0 -92
  254. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +0 -423
  255. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +0 -139
  256. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +0 -61
  257. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +0 -763
  258. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.h +0 -181
  259. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +0 -942
  260. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +0 -19
  261. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.h +0 -148
  262. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.cpp +0 -1666
  263. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.h +0 -445
  264. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zItem.h +0 -202
  265. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.cpp +0 -901
  266. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.h +0 -335
  267. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +0 -174
  268. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.h +0 -22
  269. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +0 -21
  270. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +0 -22
  271. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +0 -35
  272. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +0 -2500
  273. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.h +0 -139
  274. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.cpp +0 -3
  275. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.h +0 -8
  276. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive.def +0 -12
  277. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Archive2.def +0 -19
  278. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/ArchiveExports.cpp +0 -151
  279. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +0 -1125
  280. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +0 -447
  281. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +0 -17
  282. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +0 -25
  283. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +0 -232
  284. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.h +0 -110
  285. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +0 -46
  286. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +0 -67
  287. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +0 -88
  288. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +0 -28
  289. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +0 -191
  290. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.h +0 -89
  291. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +0 -18
  292. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +0 -37
  293. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.cpp +0 -3
  294. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.h +0 -6
  295. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Common/StdAfx.h +0 -8
  296. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/DllExports2.cpp +0 -122
  297. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/IArchive.h +0 -608
  298. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/Icons/7z.ico +0 -0
  299. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/LzmaHandler.cpp +0 -629
  300. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/SplitHandler.cpp +0 -359
  301. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/StdAfx.h +0 -8
  302. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.cpp +0 -1308
  303. package/harmony/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.h +0 -11
  304. package/harmony/src/main/cpp/lzma/CPP/7zip/Asm.mak +0 -9
  305. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +0 -1910
  306. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsw +0 -29
  307. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.cpp +0 -3
  308. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +0 -8
  309. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile +0 -154
  310. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/resource.rc +0 -7
  311. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.cpp +0 -3
  312. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +0 -8
  313. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +0 -96
  314. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/resource.rc +0 -5
  315. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.cpp +0 -3
  316. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +0 -8
  317. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/makefile +0 -116
  318. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/resource.rc +0 -5
  319. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +0 -799
  320. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +0 -477
  321. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsw +0 -29
  322. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.cpp +0 -3
  323. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +0 -8
  324. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile +0 -59
  325. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +0 -195
  326. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/resource.rc +0 -3
  327. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaSpec/LzmaSpec.cpp +0 -715
  328. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/7z.ico +0 -0
  329. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +0 -912
  330. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsw +0 -29
  331. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +0 -482
  332. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.cpp +0 -3
  333. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +0 -8
  334. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile +0 -134
  335. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +0 -5
  336. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +0 -246
  337. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +0 -86
  338. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +0 -137
  339. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +0 -11
  340. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +0 -803
  341. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsw +0 -29
  342. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +0 -364
  343. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.cpp +0 -3
  344. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +0 -13
  345. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/makefile +0 -117
  346. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.h +0 -6
  347. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/resource.rc +0 -16
  348. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/setup.ico +0 -0
  349. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/7z.ico +0 -0
  350. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +0 -988
  351. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsw +0 -29
  352. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +0 -241
  353. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.cpp +0 -3
  354. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +0 -14
  355. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/makefile +0 -153
  356. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.h +0 -1
  357. package/harmony/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -50
  358. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.cpp +0 -250
  359. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.h +0 -120
  360. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.cpp +0 -536
  361. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.h +0 -192
  362. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +0 -46
  363. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.h +0 -10
  364. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.cpp +0 -475
  365. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.h +0 -166
  366. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.cpp +0 -435
  367. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.h +0 -205
  368. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.cpp +0 -163
  369. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.h +0 -92
  370. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +0 -127
  371. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.h +0 -48
  372. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.cpp +0 -367
  373. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.h +0 -252
  374. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.cpp +0 -3
  375. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.h +0 -6
  376. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.cpp +0 -3
  377. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodId.h +0 -10
  378. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.cpp +0 -509
  379. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.h +0 -264
  380. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.cpp +0 -39
  381. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.h +0 -26
  382. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.cpp +0 -111
  383. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.h +0 -66
  384. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.cpp +0 -51
  385. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.h +0 -35
  386. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/PropId.cpp +0 -108
  387. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterArc.h +0 -78
  388. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/RegisterCodec.h +0 -106
  389. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StdAfx.h +0 -8
  390. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.cpp +0 -156
  391. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.h +0 -60
  392. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.cpp +0 -285
  393. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.h +0 -157
  394. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.cpp +0 -56
  395. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.h +0 -13
  396. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.cpp +0 -57
  397. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.h +0 -26
  398. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.cpp +0 -48
  399. package/harmony/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.h +0 -24
  400. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +0 -666
  401. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.h +0 -120
  402. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Register.cpp +0 -24
  403. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.cpp +0 -24
  404. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.h +0 -31
  405. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BcjRegister.cpp +0 -17
  406. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.cpp +0 -23
  407. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.h +0 -35
  408. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/BranchRegister.cpp +0 -41
  409. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/ByteSwap.cpp +0 -92
  410. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CodecExports.cpp +0 -344
  411. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.cpp +0 -120
  412. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.h +0 -49
  413. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/CopyRegister.cpp +0 -15
  414. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/DeltaFilter.cpp +0 -128
  415. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +0 -265
  416. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.h +0 -96
  417. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +0 -122
  418. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.h +0 -42
  419. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Register.cpp +0 -22
  420. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +0 -343
  421. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.h +0 -113
  422. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +0 -182
  423. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.h +0 -46
  424. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/LzmaRegister.cpp +0 -22
  425. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +0 -170
  426. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.h +0 -86
  427. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +0 -152
  428. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.h +0 -58
  429. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/PpmdRegister.cpp +0 -22
  430. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/StdAfx.h +0 -8
  431. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.cpp +0 -150
  432. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.h +0 -92
  433. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.cpp +0 -245
  434. package/harmony/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.h +0 -46
  435. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc.mak +0 -8
  436. package/harmony/src/main/cpp/lzma/CPP/7zip/Crc64.mak +0 -8
  437. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.cpp +0 -280
  438. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.h +0 -118
  439. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +0 -17
  440. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.cpp +0 -112
  441. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.h +0 -57
  442. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/MyAesReg.cpp +0 -16
  443. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.cpp +0 -233
  444. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.h +0 -40
  445. package/harmony/src/main/cpp/lzma/CPP/7zip/Crypto/StdAfx.h +0 -8
  446. package/harmony/src/main/cpp/lzma/CPP/7zip/GuiCommon.rc +0 -84
  447. package/harmony/src/main/cpp/lzma/CPP/7zip/Guid.txt +0 -220
  448. package/harmony/src/main/cpp/lzma/CPP/7zip/ICoder.h +0 -399
  449. package/harmony/src/main/cpp/lzma/CPP/7zip/IDecl.h +0 -28
  450. package/harmony/src/main/cpp/lzma/CPP/7zip/IPassword.h +0 -23
  451. package/harmony/src/main/cpp/lzma/CPP/7zip/IProgress.h +0 -19
  452. package/harmony/src/main/cpp/lzma/CPP/7zip/IStream.h +0 -127
  453. package/harmony/src/main/cpp/lzma/CPP/7zip/LzmaDec.mak +0 -5
  454. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersion.h +0 -2
  455. package/harmony/src/main/cpp/lzma/CPP/7zip/MyVersionInfo.rc +0 -2
  456. package/harmony/src/main/cpp/lzma/CPP/7zip/PropID.h +0 -127
  457. package/harmony/src/main/cpp/lzma/CPP/7zip/SubBuild.mak +0 -3
  458. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +0 -993
  459. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +0 -235
  460. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsw +0 -29
  461. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.cpp +0 -3
  462. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.h +0 -8
  463. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile +0 -28
  464. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Client7z/resource.rc +0 -3
  465. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +0 -1295
  466. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +0 -136
  467. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +0 -1715
  468. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +0 -403
  469. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +0 -155
  470. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.h +0 -10
  471. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +0 -161
  472. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +0 -112
  473. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.cpp +0 -3618
  474. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.h +0 -77
  475. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.cpp +0 -37
  476. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.h +0 -11
  477. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/DirItem.h +0 -190
  478. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +0 -1096
  479. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.h +0 -42
  480. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExitCode.h +0 -27
  481. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.cpp +0 -482
  482. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.h +0 -94
  483. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractMode.h +0 -34
  484. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +0 -280
  485. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +0 -31
  486. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.cpp +0 -347
  487. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.h +0 -110
  488. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +0 -114
  489. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +0 -1074
  490. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.h +0 -424
  491. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +0 -3553
  492. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.h +0 -436
  493. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +0 -668
  494. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.h +0 -18
  495. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Property.h +0 -14
  496. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.cpp +0 -80
  497. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.h +0 -10
  498. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.cpp +0 -25
  499. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.h +0 -10
  500. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/StdAfx.h +0 -8
  501. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.cpp +0 -19
  502. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.h +0 -16
  503. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.cpp +0 -1704
  504. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.h +0 -200
  505. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.cpp +0 -64
  506. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.h +0 -66
  507. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +0 -771
  508. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.h +0 -162
  509. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +0 -233
  510. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.h +0 -27
  511. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +0 -70
  512. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.h +0 -55
  513. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.cpp +0 -94
  514. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.h +0 -26
  515. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Common/ZipRegistry.h +0 -130
  516. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.cpp +0 -41
  517. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.h +0 -14
  518. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.mak +0 -43
  519. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.manifest +0 -13
  520. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +0 -69
  521. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.h +0 -33
  522. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +0 -825
  523. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +0 -164
  524. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.cpp +0 -367
  525. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.h +0 -48
  526. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.cpp +0 -1359
  527. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/List.h +0 -27
  528. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/Main.cpp +0 -1154
  529. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/MainAr.cpp +0 -175
  530. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +0 -115
  531. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +0 -66
  532. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +0 -183
  533. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.h +0 -62
  534. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.cpp +0 -3
  535. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.h +0 -8
  536. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +0 -702
  537. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +0 -124
  538. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +0 -110
  539. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.h +0 -27
  540. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile +0 -64
  541. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Console/resource.rc +0 -7
  542. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +0 -37
  543. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.h +0 -16
  544. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +0 -1025
  545. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +0 -21
  546. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialogRes.h +0 -9
  547. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +0 -64
  548. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +0 -28
  549. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialogRes.h +0 -4
  550. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/DialogSize.h +0 -16
  551. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +0 -1037
  552. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +0 -328
  553. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.cpp +0 -28
  554. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +0 -14
  555. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/LangUtils.h +0 -40
  556. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +0 -76
  557. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +0 -122
  558. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +0 -69
  559. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +0 -91
  560. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +0 -17
  561. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +0 -58
  562. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +0 -28
  563. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -14
  564. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialogRes.h +0 -5
  565. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +0 -196
  566. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +0 -170
  567. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.rc +0 -12
  568. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +0 -1337
  569. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +0 -351
  570. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.rc +0 -40
  571. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +0 -48
  572. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +0 -80
  573. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialogRes.h +0 -3
  574. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.cpp +0 -23
  575. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.h +0 -10
  576. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -95
  577. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +0 -255
  578. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +0 -62
  579. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resource.h +0 -177
  580. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -15
  581. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/Extract.rc +0 -59
  582. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +0 -418
  583. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +0 -113
  584. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc +0 -98
  585. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h +0 -24
  586. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +0 -280
  587. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +0 -38
  588. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractRes.h +0 -51
  589. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/HashGUI.h +0 -27
  590. package/harmony/src/main/cpp/lzma/CPP/7zip/UI/GUI/resource2.h +0 -2
  591. package/harmony/src/main/cpp/lzma/CPP/Build.mak +0 -156
  592. package/harmony/src/main/cpp/lzma/CPP/Common/AutoPtr.h +0 -35
  593. package/harmony/src/main/cpp/lzma/CPP/Common/CRC.cpp +0 -7
  594. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.cpp +0 -92
  595. package/harmony/src/main/cpp/lzma/CPP/Common/C_FileIO.h +0 -53
  596. package/harmony/src/main/cpp/lzma/CPP/Common/ComTry.h +0 -21
  597. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.cpp +0 -197
  598. package/harmony/src/main/cpp/lzma/CPP/Common/CommandLineParser.h +0 -63
  599. package/harmony/src/main/cpp/lzma/CPP/Common/Common.h +0 -43
  600. package/harmony/src/main/cpp/lzma/CPP/Common/CrcReg.cpp +0 -98
  601. package/harmony/src/main/cpp/lzma/CPP/Common/Defs.h +0 -15
  602. package/harmony/src/main/cpp/lzma/CPP/Common/DynamicBuffer.h +0 -64
  603. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.cpp +0 -193
  604. package/harmony/src/main/cpp/lzma/CPP/Common/IntToString.h +0 -28
  605. package/harmony/src/main/cpp/lzma/CPP/Common/Lang.h +0 -23
  606. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.cpp +0 -132
  607. package/harmony/src/main/cpp/lzma/CPP/Common/ListFileUtils.h +0 -18
  608. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer.h +0 -259
  609. package/harmony/src/main/cpp/lzma/CPP/Common/MyBuffer2.h +0 -100
  610. package/harmony/src/main/cpp/lzma/CPP/Common/MyCom.h +0 -277
  611. package/harmony/src/main/cpp/lzma/CPP/Common/MyException.h +0 -14
  612. package/harmony/src/main/cpp/lzma/CPP/Common/MyGuidDef.h +0 -54
  613. package/harmony/src/main/cpp/lzma/CPP/Common/MyInitGuid.h +0 -45
  614. package/harmony/src/main/cpp/lzma/CPP/Common/MyLinux.h +0 -42
  615. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.cpp +0 -1659
  616. package/harmony/src/main/cpp/lzma/CPP/Common/MyString.h +0 -868
  617. package/harmony/src/main/cpp/lzma/CPP/Common/MyTypes.h +0 -35
  618. package/harmony/src/main/cpp/lzma/CPP/Common/MyUnknown.h +0 -17
  619. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.cpp +0 -3
  620. package/harmony/src/main/cpp/lzma/CPP/Common/MyVector.h +0 -634
  621. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.cpp +0 -145
  622. package/harmony/src/main/cpp/lzma/CPP/Common/MyWindows.h +0 -231
  623. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.cpp +0 -163
  624. package/harmony/src/main/cpp/lzma/CPP/Common/NewHandler.h +0 -88
  625. package/harmony/src/main/cpp/lzma/CPP/Common/Sha256Reg.cpp +0 -40
  626. package/harmony/src/main/cpp/lzma/CPP/Common/StdAfx.h +0 -8
  627. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.cpp +0 -89
  628. package/harmony/src/main/cpp/lzma/CPP/Common/StdInStream.h +0 -38
  629. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.cpp +0 -163
  630. package/harmony/src/main/cpp/lzma/CPP/Common/StdOutStream.h +0 -71
  631. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.cpp +0 -319
  632. package/harmony/src/main/cpp/lzma/CPP/Common/StringConvert.h +0 -88
  633. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.cpp +0 -144
  634. package/harmony/src/main/cpp/lzma/CPP/Common/StringToInt.h +0 -21
  635. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.cpp +0 -124
  636. package/harmony/src/main/cpp/lzma/CPP/Common/TextConfig.h +0 -19
  637. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.cpp +0 -288
  638. package/harmony/src/main/cpp/lzma/CPP/Common/UTFConvert.h +0 -12
  639. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.cpp +0 -676
  640. package/harmony/src/main/cpp/lzma/CPP/Common/Wildcard.h +0 -149
  641. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Init.cpp +0 -7
  642. package/harmony/src/main/cpp/lzma/CPP/Common/XzCrc64Reg.cpp +0 -42
  643. package/harmony/src/main/cpp/lzma/CPP/Windows/COM.h +0 -70
  644. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.cpp +0 -185
  645. package/harmony/src/main/cpp/lzma/CPP/Windows/CommonDialog.h +0 -23
  646. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.cpp +0 -66
  647. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.h +0 -65
  648. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/CommandBar.h +0 -52
  649. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.cpp +0 -251
  650. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Dialog.h +0 -170
  651. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Edit.h +0 -19
  652. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.cpp +0 -10
  653. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ImageList.h +0 -87
  654. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.cpp +0 -155
  655. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ListView.h +0 -146
  656. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ProgressBar.h +0 -35
  657. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.cpp +0 -143
  658. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.h +0 -50
  659. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ReBar.h +0 -34
  660. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Static.h +0 -28
  661. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StatusBar.h +0 -42
  662. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/StdAfx.h +0 -8
  663. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/ToolBar.h +0 -43
  664. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Trackbar.h +0 -27
  665. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.cpp +0 -200
  666. package/harmony/src/main/cpp/lzma/CPP/Windows/Control/Window2.h +0 -51
  667. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.cpp +0 -109
  668. package/harmony/src/main/cpp/lzma/CPP/Windows/DLL.h +0 -58
  669. package/harmony/src/main/cpp/lzma/CPP/Windows/Defs.h +0 -17
  670. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.cpp +0 -66
  671. package/harmony/src/main/cpp/lzma/CPP/Windows/ErrorMsg.h +0 -15
  672. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.cpp +0 -714
  673. package/harmony/src/main/cpp/lzma/CPP/Windows/FileDir.h +0 -117
  674. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.cpp +0 -749
  675. package/harmony/src/main/cpp/lzma/CPP/Windows/FileFind.h +0 -161
  676. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.cpp +0 -432
  677. package/harmony/src/main/cpp/lzma/CPP/Windows/FileIO.h +0 -212
  678. package/harmony/src/main/cpp/lzma/CPP/Windows/FileLink.cpp +0 -440
  679. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.cpp +0 -12
  680. package/harmony/src/main/cpp/lzma/CPP/Windows/FileMapping.h +0 -66
  681. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.cpp +0 -839
  682. package/harmony/src/main/cpp/lzma/CPP/Windows/FileName.h +0 -115
  683. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.cpp +0 -131
  684. package/harmony/src/main/cpp/lzma/CPP/Windows/FileSystem.h +0 -27
  685. package/harmony/src/main/cpp/lzma/CPP/Windows/Handle.h +0 -37
  686. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.cpp +0 -112
  687. package/harmony/src/main/cpp/lzma/CPP/Windows/MemoryLock.h +0 -40
  688. package/harmony/src/main/cpp/lzma/CPP/Windows/NtCheck.h +0 -46
  689. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.cpp +0 -347
  690. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariant.h +0 -114
  691. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.cpp +0 -138
  692. package/harmony/src/main/cpp/lzma/CPP/Windows/PropVariantConv.h +0 -37
  693. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.cpp +0 -390
  694. package/harmony/src/main/cpp/lzma/CPP/Windows/Registry.h +0 -84
  695. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.cpp +0 -103
  696. package/harmony/src/main/cpp/lzma/CPP/Windows/ResourceString.h +0 -16
  697. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.cpp +0 -181
  698. package/harmony/src/main/cpp/lzma/CPP/Windows/SecurityUtils.h +0 -167
  699. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.cpp +0 -358
  700. package/harmony/src/main/cpp/lzma/CPP/Windows/Shell.h +0 -94
  701. package/harmony/src/main/cpp/lzma/CPP/Windows/StdAfx.h +0 -8
  702. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.cpp +0 -10
  703. package/harmony/src/main/cpp/lzma/CPP/Windows/Synchronization.h +0 -164
  704. package/harmony/src/main/cpp/lzma/CPP/Windows/System.cpp +0 -142
  705. package/harmony/src/main/cpp/lzma/CPP/Windows/System.h +0 -40
  706. package/harmony/src/main/cpp/lzma/CPP/Windows/Thread.h +0 -38
  707. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.cpp +0 -213
  708. package/harmony/src/main/cpp/lzma/CPP/Windows/TimeUtils.h +0 -32
  709. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.cpp +0 -179
  710. package/harmony/src/main/cpp/lzma/CPP/Windows/Window.h +0 -284
  711. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CRC.cs +0 -55
  712. package/harmony/src/main/cpp/lzma/CS/7zip/Common/CommandLineParser.cs +0 -274
  713. package/harmony/src/main/cpp/lzma/CS/7zip/Common/InBuffer.cs +0 -72
  714. package/harmony/src/main/cpp/lzma/CS/7zip/Common/OutBuffer.cs +0 -47
  715. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/IMatchFinder.cs +0 -24
  716. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzBinTree.cs +0 -367
  717. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzInWindow.cs +0 -132
  718. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZ/LzOutWindow.cs +0 -110
  719. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaBase.cs +0 -76
  720. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaDecoder.cs +0 -398
  721. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LZMA/LzmaEncoder.cs +0 -1480
  722. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.cs +0 -364
  723. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +0 -90
  724. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.sln +0 -20
  725. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaBench.cs +0 -340
  726. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/AssemblyInfo.cs +0 -29
  727. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Resources.cs +0 -70
  728. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/Properties/Settings.cs +0 -42
  729. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoder.cs +0 -234
  730. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBit.cs +0 -117
  731. package/harmony/src/main/cpp/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBitTree.cs +0 -157
  732. package/harmony/src/main/cpp/lzma/CS/7zip/ICoder.cs +0 -157
  733. package/harmony/src/main/cpp/lzma/DOC/7zC.txt +0 -187
  734. package/harmony/src/main/cpp/lzma/DOC/7zFormat.txt +0 -469
  735. package/harmony/src/main/cpp/lzma/DOC/Methods.txt +0 -173
  736. package/harmony/src/main/cpp/lzma/DOC/installer.txt +0 -166
  737. package/harmony/src/main/cpp/lzma/DOC/lzma-history.txt +0 -446
  738. package/harmony/src/main/cpp/lzma/DOC/lzma-sdk.txt +0 -357
  739. package/harmony/src/main/cpp/lzma/DOC/lzma-specification.txt +0 -1176
  740. package/harmony/src/main/cpp/lzma/DOC/lzma.txt +0 -328
  741. package/harmony/src/main/cpp/lzma/Java/SevenZip/CRC.java +0 -52
  742. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/BinTree.java +0 -382
  743. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/InWindow.java +0 -131
  744. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZ/OutWindow.java +0 -85
  745. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Base.java +0 -88
  746. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Decoder.java +0 -329
  747. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/LZMA/Encoder.java +0 -1416
  748. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeDecoder.java +0 -55
  749. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeEncoder.java +0 -99
  750. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Decoder.java +0 -88
  751. package/harmony/src/main/cpp/lzma/Java/SevenZip/Compression/RangeCoder/Encoder.java +0 -151
  752. package/harmony/src/main/cpp/lzma/Java/SevenZip/ICodeProgress.java +0 -6
  753. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaAlone.java +0 -253
  754. package/harmony/src/main/cpp/lzma/Java/SevenZip/LzmaBench.java +0 -392
  755. package/harmony/src/main/cpp/lzma/bin/7zS2.sfx +0 -0
  756. package/harmony/src/main/cpp/lzma/bin/7zS2con.sfx +0 -0
  757. package/harmony/src/main/cpp/lzma/bin/7zSD.sfx +0 -0
  758. package/harmony/src/main/cpp/lzma/bin/7zdec.exe +0 -0
  759. package/harmony/src/main/cpp/lzma/bin/7zr.exe +0 -0
  760. package/harmony/src/main/cpp/lzma/bin/installer/config.txt +0 -5
  761. package/harmony/src/main/cpp/lzma/bin/installer/cr.bat +0 -5
  762. package/harmony/src/main/cpp/lzma/bin/lzma.exe +0 -0
  763. package/harmony/src/main/cpp/lzma/bin/x64/7zr.exe +0 -0
@@ -1,1715 +0,0 @@
1
- // ArchiveExtractCallback.cpp
2
-
3
- #include "StdAfx.h"
4
-
5
- #undef sprintf
6
- #undef printf
7
-
8
- // #include <stdio.h>
9
- // #include "../../../../C/CpuTicks.h"
10
-
11
- #include "../../../../C/Alloc.h"
12
- #include "../../../../C/CpuArch.h"
13
-
14
-
15
- #include "../../../Common/ComTry.h"
16
- #include "../../../Common/IntToString.h"
17
- #include "../../../Common/StringConvert.h"
18
- #include "../../../Common/Wildcard.h"
19
-
20
- #include "../../../Windows/ErrorMsg.h"
21
- #include "../../../Windows/FileDir.h"
22
- #include "../../../Windows/FileFind.h"
23
- #include "../../../Windows/FileName.h"
24
- #include "../../../Windows/PropVariant.h"
25
- #include "../../../Windows/PropVariantConv.h"
26
-
27
- #if defined(_WIN32) && !defined(UNDER_CE) && !defined(_SFX)
28
- #define _USE_SECURITY_CODE
29
- #include "../../../Windows/SecurityUtils.h"
30
- #endif
31
-
32
- #include "../../Common/FilePathAutoRename.h"
33
- // #include "../../Common/StreamUtils.h"
34
-
35
- #include "../Common/ExtractingFilePath.h"
36
- #include "../Common/PropIDUtils.h"
37
-
38
- #include "ArchiveExtractCallback.h"
39
-
40
- using namespace NWindows;
41
- using namespace NFile;
42
- using namespace NDir;
43
-
44
- static const char * const kCantAutoRename = "Can not create file with auto name";
45
- static const char * const kCantRenameFile = "Can not rename existing file";
46
- static const char * const kCantDeleteOutputFile = "Can not delete output file";
47
- static const char * const kCantDeleteOutputDir = "Can not delete output folder";
48
- static const char * const kCantCreateHardLink = "Can not create hard link";
49
- static const char * const kCantCreateSymLink = "Can not create symbolic link";
50
- static const char * const kCantOpenOutFile = "Can not open output file";
51
- static const char * const kCantSetFileLen = "Can not set length for output file";
52
-
53
-
54
- #ifndef _SFX
55
-
56
- STDMETHODIMP COutStreamWithHash::Write(const void *data, UInt32 size, UInt32 *processedSize)
57
- {
58
- HRESULT result = S_OK;
59
- if (_stream)
60
- result = _stream->Write(data, size, &size);
61
- if (_calculate)
62
- _hash->Update(data, size);
63
- _size += size;
64
- if (processedSize)
65
- *processedSize = size;
66
- return result;
67
- }
68
-
69
- #endif
70
-
71
- #ifdef _USE_SECURITY_CODE
72
- bool InitLocalPrivileges()
73
- {
74
- NSecurity::CAccessToken token;
75
- if (!token.OpenProcessToken(GetCurrentProcess(),
76
- TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES))
77
- return false;
78
-
79
- TOKEN_PRIVILEGES tp;
80
-
81
- tp.PrivilegeCount = 1;
82
- tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
83
-
84
- if (!::LookupPrivilegeValue(NULL, SE_SECURITY_NAME, &tp.Privileges[0].Luid))
85
- return false;
86
- if (!token.AdjustPrivileges(&tp))
87
- return false;
88
- return (GetLastError() == ERROR_SUCCESS);
89
- }
90
- #endif
91
-
92
- #ifdef SUPPORT_LINKS
93
-
94
- int CHardLinkNode::Compare(const CHardLinkNode &a) const
95
- {
96
- if (StreamId < a.StreamId) return -1;
97
- if (StreamId > a.StreamId) return 1;
98
- return MyCompare(INode, a.INode);
99
- }
100
-
101
- static HRESULT Archive_Get_HardLinkNode(IInArchive *archive, UInt32 index, CHardLinkNode &h, bool &defined)
102
- {
103
- h.INode = 0;
104
- h.StreamId = (UInt64)(Int64)-1;
105
- defined = false;
106
- {
107
- NCOM::CPropVariant prop;
108
- RINOK(archive->GetProperty(index, kpidINode, &prop));
109
- if (!ConvertPropVariantToUInt64(prop, h.INode))
110
- return S_OK;
111
- }
112
- {
113
- NCOM::CPropVariant prop;
114
- RINOK(archive->GetProperty(index, kpidStreamId, &prop));
115
- ConvertPropVariantToUInt64(prop, h.StreamId);
116
- }
117
- defined = true;
118
- return S_OK;
119
- }
120
-
121
-
122
- HRESULT CArchiveExtractCallback::PrepareHardLinks(const CRecordVector<UInt32> *realIndices)
123
- {
124
- _hardLinks.Clear();
125
-
126
- if (!_arc->Ask_INode)
127
- return S_OK;
128
-
129
- IInArchive *archive = _arc->Archive;
130
- CRecordVector<CHardLinkNode> &hardIDs = _hardLinks.IDs;
131
-
132
- {
133
- UInt32 numItems;
134
- if (realIndices)
135
- numItems = realIndices->Size();
136
- else
137
- {
138
- RINOK(archive->GetNumberOfItems(&numItems));
139
- }
140
-
141
- for (UInt32 i = 0; i < numItems; i++)
142
- {
143
- CHardLinkNode h;
144
- bool defined;
145
- UInt32 realIndex = realIndices ? (*realIndices)[i] : i;
146
-
147
- RINOK(Archive_Get_HardLinkNode(archive, realIndex, h, defined));
148
- if (defined)
149
- {
150
- bool isAltStream = false;
151
- RINOK(Archive_IsItem_AltStream(archive, realIndex, isAltStream));
152
- if (!isAltStream)
153
- hardIDs.Add(h);
154
- }
155
- }
156
- }
157
-
158
- hardIDs.Sort2();
159
-
160
- {
161
- // wee keep only items that have 2 or more items
162
- unsigned k = 0;
163
- unsigned numSame = 1;
164
- for (unsigned i = 1; i < hardIDs.Size(); i++)
165
- {
166
- if (hardIDs[i].Compare(hardIDs[i - 1]) != 0)
167
- numSame = 1;
168
- else if (++numSame == 2)
169
- {
170
- if (i - 1 != k)
171
- hardIDs[k] = hardIDs[i - 1];
172
- k++;
173
- }
174
- }
175
- hardIDs.DeleteFrom(k);
176
- }
177
-
178
- _hardLinks.PrepareLinks();
179
- return S_OK;
180
- }
181
-
182
- #endif
183
-
184
- CArchiveExtractCallback::CArchiveExtractCallback():
185
- _arc(NULL),
186
- WriteCTime(true),
187
- WriteATime(true),
188
- WriteMTime(true),
189
- _multiArchives(false)
190
- {
191
- LocalProgressSpec = new CLocalProgress();
192
- _localProgress = LocalProgressSpec;
193
-
194
- #ifdef _USE_SECURITY_CODE
195
- _saclEnabled = InitLocalPrivileges();
196
- #endif
197
- }
198
-
199
- void CArchiveExtractCallback::Init(
200
- const CExtractNtOptions &ntOptions,
201
- const NWildcard::CCensorNode *wildcardCensor,
202
- const CArc *arc,
203
- IFolderArchiveExtractCallback *extractCallback2,
204
- bool stdOutMode, bool testMode,
205
- const FString &directoryPath,
206
- const UStringVector &removePathParts, bool removePartsForAltStreams,
207
- UInt64 packSize)
208
- {
209
- ClearExtractedDirsInfo();
210
- _outFileStream.Release();
211
-
212
- #ifdef SUPPORT_LINKS
213
- _hardLinks.Clear();
214
- #endif
215
-
216
- #ifdef SUPPORT_ALT_STREAMS
217
- _renamedFiles.Clear();
218
- #endif
219
-
220
- _ntOptions = ntOptions;
221
- _wildcardCensor = wildcardCensor;
222
-
223
- _stdOutMode = stdOutMode;
224
- _testMode = testMode;
225
-
226
- // _progressTotal = 0;
227
- // _progressTotal_Defined = false;
228
-
229
- _packTotal = packSize;
230
- _progressTotal = packSize;
231
- _progressTotal_Defined = true;
232
-
233
- _extractCallback2 = extractCallback2;
234
- _compressProgress.Release();
235
- _extractCallback2.QueryInterface(IID_ICompressProgressInfo, &_compressProgress);
236
- _extractCallback2.QueryInterface(IID_IArchiveExtractCallbackMessage, &_callbackMessage);
237
- _extractCallback2.QueryInterface(IID_IFolderArchiveExtractCallback2, &_folderArchiveExtractCallback2);
238
-
239
- #ifndef _SFX
240
-
241
- _extractCallback2.QueryInterface(IID_IFolderExtractToStreamCallback, &ExtractToStreamCallback);
242
- if (ExtractToStreamCallback)
243
- {
244
- Int32 useStreams = 0;
245
- if (ExtractToStreamCallback->UseExtractToStream(&useStreams) != S_OK)
246
- useStreams = 0;
247
- if (useStreams == 0)
248
- ExtractToStreamCallback.Release();
249
- }
250
-
251
- #endif
252
-
253
- LocalProgressSpec->Init(extractCallback2, true);
254
- LocalProgressSpec->SendProgress = false;
255
-
256
- _removePathParts = removePathParts;
257
- _removePartsForAltStreams = removePartsForAltStreams;
258
-
259
- #ifndef _SFX
260
- _baseParentFolder = (UInt32)(Int32)-1;
261
- _use_baseParentFolder_mode = false;
262
- #endif
263
-
264
- _arc = arc;
265
- _dirPathPrefix = directoryPath;
266
- _dirPathPrefix_Full = directoryPath;
267
- #if defined(_WIN32) && !defined(UNDER_CE)
268
- if (!NName::IsAltPathPrefix(_dirPathPrefix))
269
- #endif
270
- {
271
- NName::NormalizeDirPathPrefix(_dirPathPrefix);
272
- NDir::MyGetFullPathName(directoryPath, _dirPathPrefix_Full);
273
- NName::NormalizeDirPathPrefix(_dirPathPrefix_Full);
274
- }
275
- }
276
-
277
- STDMETHODIMP CArchiveExtractCallback::SetTotal(UInt64 size)
278
- {
279
- COM_TRY_BEGIN
280
- _progressTotal = size;
281
- _progressTotal_Defined = true;
282
- if (!_multiArchives && _extractCallback2)
283
- return _extractCallback2->SetTotal(size);
284
- return S_OK;
285
- COM_TRY_END
286
- }
287
-
288
- static void NormalizeVals(UInt64 &v1, UInt64 &v2)
289
- {
290
- const UInt64 kMax = (UInt64)1 << 31;
291
- while (v1 > kMax)
292
- {
293
- v1 >>= 1;
294
- v2 >>= 1;
295
- }
296
- }
297
-
298
- static UInt64 MyMultDiv64(UInt64 unpCur, UInt64 unpTotal, UInt64 packTotal)
299
- {
300
- NormalizeVals(packTotal, unpTotal);
301
- NormalizeVals(unpCur, unpTotal);
302
- if (unpTotal == 0)
303
- unpTotal = 1;
304
- return unpCur * packTotal / unpTotal;
305
- }
306
-
307
- STDMETHODIMP CArchiveExtractCallback::SetCompleted(const UInt64 *completeValue)
308
- {
309
- COM_TRY_BEGIN
310
-
311
- if (!_extractCallback2)
312
- return S_OK;
313
-
314
- UInt64 packCur;
315
- if (_multiArchives)
316
- {
317
- packCur = LocalProgressSpec->InSize;
318
- if (completeValue && _progressTotal_Defined)
319
- packCur += MyMultDiv64(*completeValue, _progressTotal, _packTotal);
320
- completeValue = &packCur;
321
- }
322
- return _extractCallback2->SetCompleted(completeValue);
323
-
324
- COM_TRY_END
325
- }
326
-
327
- STDMETHODIMP CArchiveExtractCallback::SetRatioInfo(const UInt64 *inSize, const UInt64 *outSize)
328
- {
329
- COM_TRY_BEGIN
330
- return _localProgress->SetRatioInfo(inSize, outSize);
331
- COM_TRY_END
332
- }
333
-
334
- void CArchiveExtractCallback::CreateComplexDirectory(const UStringVector &dirPathParts, FString &fullPath)
335
- {
336
- bool isAbsPath = false;
337
-
338
- if (!dirPathParts.IsEmpty())
339
- {
340
- const UString &s = dirPathParts[0];
341
- if (s.IsEmpty())
342
- isAbsPath = true;
343
- #if defined(_WIN32) && !defined(UNDER_CE)
344
- else
345
- {
346
- if (NName::IsDrivePath2(s))
347
- isAbsPath = true;
348
- }
349
- #endif
350
- }
351
-
352
- if (_pathMode == NExtract::NPathMode::kAbsPaths && isAbsPath)
353
- fullPath.Empty();
354
- else
355
- fullPath = _dirPathPrefix;
356
-
357
- FOR_VECTOR (i, dirPathParts)
358
- {
359
- if (i != 0)
360
- fullPath.Add_PathSepar();
361
- const UString &s = dirPathParts[i];
362
- fullPath += us2fs(s);
363
- #if defined(_WIN32) && !defined(UNDER_CE)
364
- if (_pathMode == NExtract::NPathMode::kAbsPaths)
365
- if (i == 0 && s.Len() == 2 && NName::IsDrivePath2(s))
366
- continue;
367
- #endif
368
- CreateDir(fullPath);
369
- }
370
- }
371
-
372
- HRESULT CArchiveExtractCallback::GetTime(UInt32 index, PROPID propID, FILETIME &filetime, bool &filetimeIsDefined)
373
- {
374
- filetimeIsDefined = false;
375
- filetime.dwLowDateTime = 0;
376
- filetime.dwHighDateTime = 0;
377
- NCOM::CPropVariant prop;
378
- RINOK(_arc->Archive->GetProperty(index, propID, &prop));
379
- if (prop.vt == VT_FILETIME)
380
- {
381
- filetime = prop.filetime;
382
- filetimeIsDefined = (filetime.dwHighDateTime != 0 || filetime.dwLowDateTime != 0);
383
- }
384
- else if (prop.vt != VT_EMPTY)
385
- return E_FAIL;
386
- return S_OK;
387
- }
388
-
389
- HRESULT CArchiveExtractCallback::GetUnpackSize()
390
- {
391
- return _arc->GetItemSize(_index, _curSize, _curSizeDefined);
392
- }
393
-
394
- static void AddPathToMessage(UString &s, const FString &path)
395
- {
396
- s += " : ";
397
- s += fs2us(path);
398
- }
399
-
400
- HRESULT CArchiveExtractCallback::SendMessageError(const char *message, const FString &path)
401
- {
402
- UString s (message);
403
- AddPathToMessage(s, path);
404
- return _extractCallback2->MessageError(s);
405
- }
406
-
407
- HRESULT CArchiveExtractCallback::SendMessageError_with_LastError(const char *message, const FString &path)
408
- {
409
- DWORD errorCode = GetLastError();
410
- UString s (message);
411
- if (errorCode != 0)
412
- {
413
- s += " : ";
414
- s += NError::MyFormatMessage(errorCode);
415
- }
416
- AddPathToMessage(s, path);
417
- return _extractCallback2->MessageError(s);
418
- }
419
-
420
- HRESULT CArchiveExtractCallback::SendMessageError2(const char *message, const FString &path1, const FString &path2)
421
- {
422
- UString s (message);
423
- AddPathToMessage(s, path1);
424
- AddPathToMessage(s, path2);
425
- return _extractCallback2->MessageError(s);
426
- }
427
-
428
- #ifndef _SFX
429
-
430
- STDMETHODIMP CGetProp::GetProp(PROPID propID, PROPVARIANT *value)
431
- {
432
- /*
433
- if (propID == kpidName)
434
- {
435
- COM_TRY_BEGIN
436
- NCOM::CPropVariant prop = Name;
437
- prop.Detach(value);
438
- return S_OK;
439
- COM_TRY_END
440
- }
441
- */
442
- return Arc->Archive->GetProperty(IndexInArc, propID, value);
443
- }
444
-
445
- #endif
446
-
447
-
448
- #ifdef SUPPORT_LINKS
449
-
450
- static UString GetDirPrefixOf(const UString &src)
451
- {
452
- UString s (src);
453
- if (!s.IsEmpty())
454
- {
455
- if (IsPathSepar(s.Back()))
456
- s.DeleteBack();
457
- int pos = s.ReverseFind_PathSepar();
458
- s.DeleteFrom(pos + 1);
459
- }
460
- return s;
461
- }
462
-
463
- #endif
464
-
465
-
466
- bool IsSafePath(const UString &path)
467
- {
468
- if (NName::IsAbsolutePath(path))
469
- return false;
470
-
471
- UStringVector parts;
472
- SplitPathToParts(path, parts);
473
- unsigned level = 0;
474
-
475
- FOR_VECTOR (i, parts)
476
- {
477
- const UString &s = parts[i];
478
- if (s.IsEmpty())
479
- {
480
- if (i == 0)
481
- return false;
482
- continue;
483
- }
484
- if (s == L".")
485
- continue;
486
- if (s == L"..")
487
- {
488
- if (level == 0)
489
- return false;
490
- level--;
491
- }
492
- else
493
- level++;
494
- }
495
-
496
- return level > 0;
497
- }
498
-
499
-
500
- bool CensorNode_CheckPath2(const NWildcard::CCensorNode &node, const CReadArcItem &item, bool &include)
501
- {
502
- bool found = false;
503
-
504
- if (node.CheckPathVect(item.PathParts, !item.MainIsDir, include))
505
- {
506
- if (!include)
507
- return true;
508
-
509
- #ifdef SUPPORT_ALT_STREAMS
510
- if (!item.IsAltStream)
511
- return true;
512
- #endif
513
-
514
- found = true;
515
- }
516
-
517
- #ifdef SUPPORT_ALT_STREAMS
518
-
519
- if (!item.IsAltStream)
520
- return false;
521
-
522
- UStringVector pathParts2 = item.PathParts;
523
- if (pathParts2.IsEmpty())
524
- pathParts2.AddNew();
525
- UString &back = pathParts2.Back();
526
- back += ':';
527
- back += item.AltStreamName;
528
- bool include2;
529
-
530
- if (node.CheckPathVect(pathParts2,
531
- true, // isFile,
532
- include2))
533
- {
534
- include = include2;
535
- return true;
536
- }
537
-
538
- #endif
539
-
540
- return found;
541
- }
542
-
543
- bool CensorNode_CheckPath(const NWildcard::CCensorNode &node, const CReadArcItem &item)
544
- {
545
- bool include;
546
- if (CensorNode_CheckPath2(node, item, include))
547
- return include;
548
- return false;
549
- }
550
-
551
- static FString MakePath_from_2_Parts(const FString &prefix, const FString &path)
552
- {
553
- FString s (prefix);
554
- #if defined(_WIN32) && !defined(UNDER_CE)
555
- if (!path.IsEmpty() && path[0] == ':' && !prefix.IsEmpty() && IsPathSepar(prefix.Back()))
556
- {
557
- if (!NName::IsDriveRootPath_SuperAllowed(prefix))
558
- s.DeleteBack();
559
- }
560
- #endif
561
- s += path;
562
- return s;
563
- }
564
-
565
-
566
- /*
567
- #ifdef SUPPORT_LINKS
568
-
569
- struct CTempMidBuffer
570
- {
571
- void *Buf;
572
-
573
- CTempMidBuffer(size_t size): Buf(NULL) { Buf = ::MidAlloc(size); }
574
- ~CTempMidBuffer() { ::MidFree(Buf); }
575
- };
576
-
577
- HRESULT CArchiveExtractCallback::MyCopyFile(ISequentialOutStream *outStream)
578
- {
579
- const size_t kBufSize = 1 << 16;
580
- CTempMidBuffer buf(kBufSize);
581
- if (!buf.Buf)
582
- return E_OUTOFMEMORY;
583
-
584
- NIO::CInFile inFile;
585
- NIO::COutFile outFile;
586
-
587
- if (!inFile.Open(_CopyFile_Path))
588
- return SendMessageError_with_LastError("Open error", _CopyFile_Path);
589
-
590
- for (;;)
591
- {
592
- UInt32 num;
593
-
594
- if (!inFile.Read(buf.Buf, kBufSize, num))
595
- return SendMessageError_with_LastError("Read error", _CopyFile_Path);
596
-
597
- if (num == 0)
598
- return S_OK;
599
-
600
-
601
- RINOK(WriteStream(outStream, buf.Buf, num));
602
- }
603
- }
604
-
605
- #endif
606
- */
607
-
608
-
609
- STDMETHODIMP CArchiveExtractCallback::GetStream(UInt32 index, ISequentialOutStream **outStream, Int32 askExtractMode)
610
- {
611
- COM_TRY_BEGIN
612
-
613
- *outStream = NULL;
614
-
615
- #ifndef _SFX
616
- if (_hashStream)
617
- _hashStreamSpec->ReleaseStream();
618
- _hashStreamWasUsed = false;
619
- #endif
620
-
621
- _outFileStream.Release();
622
-
623
- _encrypted = false;
624
- _position = 0;
625
- _isSplit = false;
626
-
627
- _curSize = 0;
628
- _curSizeDefined = false;
629
- _fileLengthWasSet = false;
630
- _index = index;
631
-
632
- _diskFilePath.Empty();
633
-
634
- // _fi.Clear();
635
-
636
- #ifdef SUPPORT_LINKS
637
- // _CopyFile_Path.Empty();
638
- linkPath.Empty();
639
- #endif
640
-
641
- IInArchive *archive = _arc->Archive;
642
-
643
- #ifndef _SFX
644
- _item._use_baseParentFolder_mode = _use_baseParentFolder_mode;
645
- if (_use_baseParentFolder_mode)
646
- {
647
- _item._baseParentFolder = _baseParentFolder;
648
- if (_pathMode == NExtract::NPathMode::kFullPaths ||
649
- _pathMode == NExtract::NPathMode::kAbsPaths)
650
- _item._baseParentFolder = -1;
651
- }
652
- #endif
653
-
654
- #ifdef SUPPORT_ALT_STREAMS
655
- _item.WriteToAltStreamIfColon = _ntOptions.WriteToAltStreamIfColon;
656
- #endif
657
-
658
- RINOK(_arc->GetItem(index, _item));
659
-
660
- {
661
- NCOM::CPropVariant prop;
662
- RINOK(archive->GetProperty(index, kpidPosition, &prop));
663
- if (prop.vt != VT_EMPTY)
664
- {
665
- if (prop.vt != VT_UI8)
666
- return E_FAIL;
667
- _position = prop.uhVal.QuadPart;
668
- _isSplit = true;
669
- }
670
- }
671
-
672
- #ifdef SUPPORT_LINKS
673
-
674
- // bool isCopyLink = false;
675
- bool isHardLink = false;
676
- bool isJunction = false;
677
- bool isRelative = false;
678
-
679
- {
680
- NCOM::CPropVariant prop;
681
- RINOK(archive->GetProperty(index, kpidHardLink, &prop));
682
- if (prop.vt == VT_BSTR)
683
- {
684
- isHardLink = true;
685
- // isCopyLink = false;
686
- isRelative = false; // RAR5, TAR: hard links are from root folder of archive
687
- linkPath.SetFromBstr(prop.bstrVal);
688
- }
689
- else if (prop.vt != VT_EMPTY)
690
- return E_FAIL;
691
- }
692
-
693
- /*
694
- {
695
- NCOM::CPropVariant prop;
696
- RINOK(archive->GetProperty(index, kpidCopyLink, &prop));
697
- if (prop.vt == VT_BSTR)
698
- {
699
- isHardLink = false;
700
- isCopyLink = true;
701
- isRelative = false; // RAR5: copy links are from root folder of archive
702
- linkPath.SetFromBstr(prop.bstrVal);
703
- }
704
- else if (prop.vt != VT_EMPTY)
705
- return E_FAIL;
706
- }
707
- */
708
-
709
- {
710
- NCOM::CPropVariant prop;
711
- RINOK(archive->GetProperty(index, kpidSymLink, &prop));
712
- if (prop.vt == VT_BSTR)
713
- {
714
- isHardLink = false;
715
- // isCopyLink = false;
716
- isRelative = true; // RAR5, TAR: symbolic links can be relative
717
- linkPath.SetFromBstr(prop.bstrVal);
718
- }
719
- else if (prop.vt != VT_EMPTY)
720
- return E_FAIL;
721
- }
722
-
723
-
724
- bool isOkReparse = false;
725
-
726
- if (linkPath.IsEmpty() && _arc->GetRawProps)
727
- {
728
- const void *data;
729
- UInt32 dataSize;
730
- UInt32 propType;
731
-
732
- _arc->GetRawProps->GetRawProp(_index, kpidNtReparse, &data, &dataSize, &propType);
733
-
734
- if (dataSize != 0)
735
- {
736
- if (propType != NPropDataType::kRaw)
737
- return E_FAIL;
738
- UString s;
739
- CReparseAttr reparse;
740
- DWORD errorCode = 0;
741
- isOkReparse = reparse.Parse((const Byte *)data, dataSize, errorCode);
742
- if (isOkReparse)
743
- {
744
- isHardLink = false;
745
- // isCopyLink = false;
746
- linkPath = reparse.GetPath();
747
- isJunction = reparse.IsMountPoint();
748
- isRelative = reparse.IsRelative();
749
- #ifndef _WIN32
750
- linkPath.Replace(L'\\', WCHAR_PATH_SEPARATOR);
751
- #endif
752
- }
753
- }
754
- }
755
-
756
- if (!linkPath.IsEmpty())
757
- {
758
- #ifdef _WIN32
759
- linkPath.Replace(L'/', WCHAR_PATH_SEPARATOR);
760
- #endif
761
-
762
- // rar5 uses "\??\" prefix for absolute links
763
- if (linkPath.IsPrefixedBy(WSTRING_PATH_SEPARATOR L"??" WSTRING_PATH_SEPARATOR))
764
- {
765
- isRelative = false;
766
- linkPath.DeleteFrontal(4);
767
- }
768
-
769
- for (;;)
770
- // while (NName::IsAbsolutePath(linkPath))
771
- {
772
- unsigned n = NName::GetRootPrefixSize(linkPath);
773
- if (n == 0)
774
- break;
775
- isRelative = false;
776
- linkPath.DeleteFrontal(n);
777
- }
778
- }
779
-
780
- if (!linkPath.IsEmpty() && !isRelative && _removePathParts.Size() != 0)
781
- {
782
- UStringVector pathParts;
783
- SplitPathToParts(linkPath, pathParts);
784
- bool badPrefix = false;
785
- FOR_VECTOR (i, _removePathParts)
786
- {
787
- if (CompareFileNames(_removePathParts[i], pathParts[i]) != 0)
788
- {
789
- badPrefix = true;
790
- break;
791
- }
792
- }
793
- if (!badPrefix)
794
- pathParts.DeleteFrontal(_removePathParts.Size());
795
- linkPath = MakePathFromParts(pathParts);
796
- }
797
-
798
- #endif
799
-
800
- RINOK(Archive_GetItemBoolProp(archive, index, kpidEncrypted, _encrypted));
801
-
802
- RINOK(GetUnpackSize());
803
-
804
- #ifdef SUPPORT_ALT_STREAMS
805
-
806
- if (!_ntOptions.AltStreams.Val && _item.IsAltStream)
807
- return S_OK;
808
-
809
- #endif
810
-
811
-
812
- UStringVector &pathParts = _item.PathParts;
813
-
814
- if (_wildcardCensor)
815
- {
816
- if (!CensorNode_CheckPath(*_wildcardCensor, _item))
817
- return S_OK;
818
- }
819
-
820
- #ifndef _SFX
821
- if (_use_baseParentFolder_mode)
822
- {
823
- if (!pathParts.IsEmpty())
824
- {
825
- unsigned numRemovePathParts = 0;
826
-
827
- #ifdef SUPPORT_ALT_STREAMS
828
- if (_pathMode == NExtract::NPathMode::kNoPathsAlt && _item.IsAltStream)
829
- numRemovePathParts = pathParts.Size();
830
- else
831
- #endif
832
- if (_pathMode == NExtract::NPathMode::kNoPaths ||
833
- _pathMode == NExtract::NPathMode::kNoPathsAlt)
834
- numRemovePathParts = pathParts.Size() - 1;
835
- pathParts.DeleteFrontal(numRemovePathParts);
836
- }
837
- }
838
- else
839
- #endif
840
- {
841
- if (pathParts.IsEmpty())
842
- {
843
- if (_item.IsDir)
844
- return S_OK;
845
- /*
846
- #ifdef SUPPORT_ALT_STREAMS
847
- if (!_item.IsAltStream)
848
- #endif
849
- return E_FAIL;
850
- */
851
- }
852
-
853
- unsigned numRemovePathParts = 0;
854
-
855
- switch (_pathMode)
856
- {
857
- case NExtract::NPathMode::kFullPaths:
858
- case NExtract::NPathMode::kCurPaths:
859
- {
860
- if (_removePathParts.IsEmpty())
861
- break;
862
- bool badPrefix = false;
863
-
864
- if (pathParts.Size() < _removePathParts.Size())
865
- badPrefix = true;
866
- else
867
- {
868
- if (pathParts.Size() == _removePathParts.Size())
869
- {
870
- if (_removePartsForAltStreams)
871
- {
872
- #ifdef SUPPORT_ALT_STREAMS
873
- if (!_item.IsAltStream)
874
- #endif
875
- badPrefix = true;
876
- }
877
- else
878
- {
879
- if (!_item.MainIsDir)
880
- badPrefix = true;
881
- }
882
- }
883
-
884
- if (!badPrefix)
885
- FOR_VECTOR (i, _removePathParts)
886
- {
887
- if (CompareFileNames(_removePathParts[i], pathParts[i]) != 0)
888
- {
889
- badPrefix = true;
890
- break;
891
- }
892
- }
893
- }
894
-
895
- if (badPrefix)
896
- {
897
- if (askExtractMode == NArchive::NExtract::NAskMode::kExtract && !_testMode)
898
- return E_FAIL;
899
- }
900
- else
901
- numRemovePathParts = _removePathParts.Size();
902
- break;
903
- }
904
-
905
- case NExtract::NPathMode::kNoPaths:
906
- {
907
- if (!pathParts.IsEmpty())
908
- numRemovePathParts = pathParts.Size() - 1;
909
- break;
910
- }
911
- case NExtract::NPathMode::kNoPathsAlt:
912
- {
913
- #ifdef SUPPORT_ALT_STREAMS
914
- if (_item.IsAltStream)
915
- numRemovePathParts = pathParts.Size();
916
- else
917
- #endif
918
- if (!pathParts.IsEmpty())
919
- numRemovePathParts = pathParts.Size() - 1;
920
- break;
921
- }
922
- /*
923
- case NExtract::NPathMode::kFullPaths:
924
- case NExtract::NPathMode::kAbsPaths:
925
- break;
926
- */
927
- }
928
-
929
- pathParts.DeleteFrontal(numRemovePathParts);
930
- }
931
-
932
- #ifndef _SFX
933
-
934
- if (ExtractToStreamCallback)
935
- {
936
- if (!GetProp)
937
- {
938
- GetProp_Spec = new CGetProp;
939
- GetProp = GetProp_Spec;
940
- }
941
- GetProp_Spec->Arc = _arc;
942
- GetProp_Spec->IndexInArc = index;
943
- UString name (MakePathFromParts(pathParts));
944
-
945
- #ifdef SUPPORT_ALT_STREAMS
946
- if (_item.IsAltStream)
947
- {
948
- if (!pathParts.IsEmpty() || (!_removePartsForAltStreams && _pathMode != NExtract::NPathMode::kNoPathsAlt))
949
- name += ':';
950
- name += _item.AltStreamName;
951
- }
952
- #endif
953
-
954
- return ExtractToStreamCallback->GetStream7(name, BoolToInt(_item.IsDir), outStream, askExtractMode, GetProp);
955
- }
956
-
957
- #endif
958
-
959
- CMyComPtr<ISequentialOutStream> outStreamLoc;
960
-
961
- if (askExtractMode == NArchive::NExtract::NAskMode::kExtract && !_testMode)
962
- {
963
- if (_stdOutMode)
964
- {
965
- outStreamLoc = new CStdOutFileStream;
966
- }
967
- else
968
- {
969
- {
970
- NCOM::CPropVariant prop;
971
- RINOK(archive->GetProperty(index, kpidAttrib, &prop));
972
- if (prop.vt == VT_UI4)
973
- {
974
- _fi.Attrib = prop.ulVal;
975
- _fi.AttribDefined = true;
976
- }
977
- else if (prop.vt == VT_EMPTY)
978
- _fi.AttribDefined = false;
979
- else
980
- return E_FAIL;
981
- }
982
-
983
- RINOK(GetTime(index, kpidCTime, _fi.CTime, _fi.CTimeDefined));
984
- RINOK(GetTime(index, kpidATime, _fi.ATime, _fi.ATimeDefined));
985
- RINOK(GetTime(index, kpidMTime, _fi.MTime, _fi.MTimeDefined));
986
-
987
- bool isAnti = false;
988
- RINOK(_arc->IsItemAnti(index, isAnti));
989
-
990
- #ifdef SUPPORT_ALT_STREAMS
991
- if (!_item.IsAltStream
992
- || !pathParts.IsEmpty()
993
- || !(_removePartsForAltStreams || _pathMode == NExtract::NPathMode::kNoPathsAlt))
994
- #endif
995
- Correct_FsPath(_pathMode == NExtract::NPathMode::kAbsPaths, _keepAndReplaceEmptyDirPrefixes, pathParts, _item.MainIsDir);
996
-
997
- #ifdef SUPPORT_ALT_STREAMS
998
-
999
- if (_item.IsAltStream)
1000
- {
1001
- UString s (_item.AltStreamName);
1002
- Correct_AltStream_Name(s);
1003
- bool needColon = true;
1004
-
1005
- if (pathParts.IsEmpty())
1006
- {
1007
- pathParts.AddNew();
1008
- if (_removePartsForAltStreams || _pathMode == NExtract::NPathMode::kNoPathsAlt)
1009
- needColon = false;
1010
- }
1011
- else if (_pathMode == NExtract::NPathMode::kAbsPaths &&
1012
- NWildcard::GetNumPrefixParts_if_DrivePath(pathParts) == pathParts.Size())
1013
- pathParts.AddNew();
1014
-
1015
- UString &name = pathParts.Back();
1016
- if (needColon)
1017
- name += (char)(_ntOptions.ReplaceColonForAltStream ? '_' : ':');
1018
- name += s;
1019
- }
1020
-
1021
- #endif
1022
-
1023
- UString processedPath (MakePathFromParts(pathParts));
1024
-
1025
- if (!isAnti)
1026
- {
1027
- if (!_item.IsDir)
1028
- {
1029
- if (!pathParts.IsEmpty())
1030
- pathParts.DeleteBack();
1031
- }
1032
-
1033
- if (!pathParts.IsEmpty())
1034
- {
1035
- FString fullPathNew;
1036
- CreateComplexDirectory(pathParts, fullPathNew);
1037
-
1038
- if (_item.IsDir)
1039
- {
1040
- CDirPathTime &pt = _extractedFolders.AddNew();
1041
-
1042
- pt.CTime = _fi.CTime;
1043
- pt.CTimeDefined = (WriteCTime && _fi.CTimeDefined);
1044
-
1045
- pt.ATime = _fi.ATime;
1046
- pt.ATimeDefined = (WriteATime && _fi.ATimeDefined);
1047
-
1048
- pt.MTimeDefined = false;
1049
-
1050
- if (WriteMTime)
1051
- {
1052
- if (_fi.MTimeDefined)
1053
- {
1054
- pt.MTime = _fi.MTime;
1055
- pt.MTimeDefined = true;
1056
- }
1057
- else if (_arc->MTimeDefined)
1058
- {
1059
- pt.MTime = _arc->MTime;
1060
- pt.MTimeDefined = true;
1061
- }
1062
- }
1063
-
1064
- pt.Path = fullPathNew;
1065
-
1066
- pt.SetDirTime();
1067
- }
1068
- }
1069
- }
1070
-
1071
-
1072
- FString fullProcessedPath (us2fs(processedPath));
1073
- if (_pathMode != NExtract::NPathMode::kAbsPaths
1074
- || !NName::IsAbsolutePath(processedPath))
1075
- {
1076
- fullProcessedPath = MakePath_from_2_Parts(_dirPathPrefix, fullProcessedPath);
1077
- }
1078
-
1079
- #ifdef SUPPORT_ALT_STREAMS
1080
-
1081
- if (_item.IsAltStream && _item.ParentIndex != (UInt32)(Int32)-1)
1082
- {
1083
- int renIndex = _renamedFiles.FindInSorted(CIndexToPathPair(_item.ParentIndex));
1084
- if (renIndex >= 0)
1085
- {
1086
- const CIndexToPathPair &pair = _renamedFiles[renIndex];
1087
- fullProcessedPath = pair.Path;
1088
- fullProcessedPath += ':';
1089
- UString s (_item.AltStreamName);
1090
- Correct_AltStream_Name(s);
1091
- fullProcessedPath += us2fs(s);
1092
- }
1093
- }
1094
-
1095
- #endif
1096
-
1097
- bool isRenamed = false;
1098
-
1099
- if (_item.IsDir)
1100
- {
1101
- _diskFilePath = fullProcessedPath;
1102
- if (isAnti)
1103
- RemoveDir(_diskFilePath);
1104
- #ifdef SUPPORT_LINKS
1105
- if (linkPath.IsEmpty())
1106
- #endif
1107
- return S_OK;
1108
- }
1109
- else if (!_isSplit)
1110
- {
1111
-
1112
- // ----- Is file (not split) -----
1113
- NFind::CFileInfo fileInfo;
1114
- if (fileInfo.Find(fullProcessedPath))
1115
- {
1116
- switch (_overwriteMode)
1117
- {
1118
- case NExtract::NOverwriteMode::kSkip:
1119
- return S_OK;
1120
- case NExtract::NOverwriteMode::kAsk:
1121
- {
1122
- int slashPos = fullProcessedPath.ReverseFind_PathSepar();
1123
- FString realFullProcessedPath (fullProcessedPath.Left(slashPos + 1) + fileInfo.Name);
1124
-
1125
- Int32 overwriteResult;
1126
- RINOK(_extractCallback2->AskOverwrite(
1127
- fs2us(realFullProcessedPath), &fileInfo.MTime, &fileInfo.Size, _item.Path,
1128
- _fi.MTimeDefined ? &_fi.MTime : NULL,
1129
- _curSizeDefined ? &_curSize : NULL,
1130
- &overwriteResult))
1131
-
1132
- switch (overwriteResult)
1133
- {
1134
- case NOverwriteAnswer::kCancel: return E_ABORT;
1135
- case NOverwriteAnswer::kNo: return S_OK;
1136
- case NOverwriteAnswer::kNoToAll: _overwriteMode = NExtract::NOverwriteMode::kSkip; return S_OK;
1137
- case NOverwriteAnswer::kYes: break;
1138
- case NOverwriteAnswer::kYesToAll: _overwriteMode = NExtract::NOverwriteMode::kOverwrite; break;
1139
- case NOverwriteAnswer::kAutoRename: _overwriteMode = NExtract::NOverwriteMode::kRename; break;
1140
- default:
1141
- return E_FAIL;
1142
- }
1143
- }
1144
- }
1145
- if (_overwriteMode == NExtract::NOverwriteMode::kRename)
1146
- {
1147
- if (!AutoRenamePath(fullProcessedPath))
1148
- {
1149
- RINOK(SendMessageError(kCantAutoRename, fullProcessedPath));
1150
- return E_FAIL;
1151
- }
1152
- isRenamed = true;
1153
- }
1154
- else if (_overwriteMode == NExtract::NOverwriteMode::kRenameExisting)
1155
- {
1156
- FString existPath (fullProcessedPath);
1157
- if (!AutoRenamePath(existPath))
1158
- {
1159
- RINOK(SendMessageError(kCantAutoRename, fullProcessedPath));
1160
- return E_FAIL;
1161
- }
1162
- // MyMoveFile can raname folders. So it's OK to use it for folders too
1163
- if (!MyMoveFile(fullProcessedPath, existPath))
1164
- {
1165
- RINOK(SendMessageError2(kCantRenameFile, existPath, fullProcessedPath));
1166
- return E_FAIL;
1167
- }
1168
- }
1169
- else
1170
- {
1171
- if (fileInfo.IsDir())
1172
- {
1173
- // do we need to delete all files in folder?
1174
- if (!RemoveDir(fullProcessedPath))
1175
- {
1176
- RINOK(SendMessageError_with_LastError(kCantDeleteOutputDir, fullProcessedPath));
1177
- return S_OK;
1178
- }
1179
- }
1180
- else
1181
- {
1182
- bool needDelete = true;
1183
- if (needDelete)
1184
- {
1185
- if (NFind::DoesFileExist(fullProcessedPath))
1186
- if (!DeleteFileAlways(fullProcessedPath))
1187
- if (GetLastError() != ERROR_FILE_NOT_FOUND)
1188
- {
1189
- RINOK(SendMessageError_with_LastError(kCantDeleteOutputFile, fullProcessedPath));
1190
- return S_OK;
1191
- // return E_FAIL;
1192
- }
1193
- }
1194
- }
1195
- }
1196
- }
1197
- else // not Find(fullProcessedPath)
1198
- {
1199
- // we need to clear READ-ONLY of parent before creating alt stream
1200
- #if defined(_WIN32) && !defined(UNDER_CE)
1201
- int colonPos = NName::FindAltStreamColon(fullProcessedPath);
1202
- if (colonPos >= 0 && fullProcessedPath[(unsigned)colonPos + 1] != 0)
1203
- {
1204
- FString parentFsPath (fullProcessedPath);
1205
- parentFsPath.DeleteFrom(colonPos);
1206
- NFind::CFileInfo parentFi;
1207
- if (parentFi.Find(parentFsPath))
1208
- {
1209
- if (parentFi.IsReadOnly())
1210
- SetFileAttrib(parentFsPath, parentFi.Attrib & ~FILE_ATTRIBUTE_READONLY);
1211
- }
1212
- }
1213
- #endif
1214
- }
1215
- // ----- END of code for Is file (not split) -----
1216
-
1217
- }
1218
- _diskFilePath = fullProcessedPath;
1219
-
1220
-
1221
- if (!isAnti)
1222
- {
1223
- #ifdef SUPPORT_LINKS
1224
-
1225
- if (!linkPath.IsEmpty())
1226
- {
1227
- #ifndef UNDER_CE
1228
-
1229
- UString relatPath;
1230
- if (isRelative)
1231
- relatPath = GetDirPrefixOf(_item.Path);
1232
- relatPath += linkPath;
1233
-
1234
- if (!IsSafePath(relatPath))
1235
- {
1236
- RINOK(SendMessageError("Dangerous link path was ignored", us2fs(relatPath)));
1237
- }
1238
- else
1239
- {
1240
- FString existPath;
1241
- if (isHardLink /* || isCopyLink */ || !isRelative)
1242
- {
1243
- if (!NName::GetFullPath(_dirPathPrefix_Full, us2fs(relatPath), existPath))
1244
- {
1245
- RINOK(SendMessageError("Incorrect path", us2fs(relatPath)));
1246
- }
1247
- }
1248
- else
1249
- {
1250
- existPath = us2fs(linkPath);
1251
- }
1252
-
1253
- if (!existPath.IsEmpty())
1254
- {
1255
- if (isHardLink /* || isCopyLink */)
1256
- {
1257
- // if (isHardLink)
1258
- {
1259
- if (!MyCreateHardLink(fullProcessedPath, existPath))
1260
- {
1261
- RINOK(SendMessageError2(kCantCreateHardLink, fullProcessedPath, existPath));
1262
- // return S_OK;
1263
- }
1264
- }
1265
- /*
1266
- else
1267
- {
1268
- NFind::CFileInfo fi;
1269
- if (!fi.Find(existPath))
1270
- {
1271
- RINOK(SendMessageError2("Can not find the file for copying", existPath, fullProcessedPath));
1272
- }
1273
- else
1274
- {
1275
- if (_curSizeDefined && _curSize == fi.Size)
1276
- _CopyFile_Path = existPath;
1277
- else
1278
- {
1279
- RINOK(SendMessageError2("File size collision for file copying", existPath, fullProcessedPath));
1280
- }
1281
-
1282
- // RINOK(MyCopyFile(existPath, fullProcessedPath));
1283
- }
1284
- }
1285
- */
1286
- }
1287
- else if (_ntOptions.SymLinks.Val)
1288
- {
1289
- // bool isSymLink = true; // = false for junction
1290
- if (_item.IsDir && !isRelative)
1291
- {
1292
- // if it's before Vista we use Junction Point
1293
- // isJunction = true;
1294
- // convertToAbs = true;
1295
- }
1296
-
1297
- CByteBuffer data;
1298
- if (FillLinkData(data, fs2us(existPath), !isJunction))
1299
- {
1300
- CReparseAttr attr;
1301
- DWORD errorCode = 0;
1302
- if (!attr.Parse(data, data.Size(), errorCode))
1303
- {
1304
- RINOK(SendMessageError("Internal error for symbolic link file", us2fs(_item.Path)));
1305
- // return E_FAIL;
1306
- }
1307
- else
1308
- if (!NFile::NIO::SetReparseData(fullProcessedPath, _item.IsDir, data, (DWORD)data.Size()))
1309
- {
1310
- RINOK(SendMessageError_with_LastError(kCantCreateSymLink, fullProcessedPath));
1311
- }
1312
- }
1313
- }
1314
- }
1315
- }
1316
-
1317
- #endif
1318
- }
1319
-
1320
- if (linkPath.IsEmpty() /* || !_CopyFile_Path.IsEmpty() */)
1321
- #endif // SUPPORT_LINKS
1322
- {
1323
- bool needWriteFile = true;
1324
-
1325
- #ifdef SUPPORT_LINKS
1326
- if (!_hardLinks.IDs.IsEmpty() && !_item.IsAltStream)
1327
- {
1328
- CHardLinkNode h;
1329
- bool defined;
1330
- RINOK(Archive_Get_HardLinkNode(archive, index, h, defined));
1331
- if (defined)
1332
- {
1333
- {
1334
- int linkIndex = _hardLinks.IDs.FindInSorted2(h);
1335
- if (linkIndex >= 0)
1336
- {
1337
- FString &hl = _hardLinks.Links[linkIndex];
1338
- if (hl.IsEmpty())
1339
- hl = fullProcessedPath;
1340
- else
1341
- {
1342
- if (!MyCreateHardLink(fullProcessedPath, hl))
1343
- {
1344
- RINOK(SendMessageError2(kCantCreateHardLink, fullProcessedPath, hl));
1345
- return S_OK;
1346
- }
1347
- needWriteFile = false;
1348
- }
1349
- }
1350
- }
1351
- }
1352
- }
1353
- #endif
1354
-
1355
- if (needWriteFile)
1356
- {
1357
- _outFileStreamSpec = new COutFileStream;
1358
- CMyComPtr<ISequentialOutStream> outStreamLoc2(_outFileStreamSpec);
1359
- if (!_outFileStreamSpec->Open(fullProcessedPath, _isSplit ? OPEN_ALWAYS: CREATE_ALWAYS))
1360
- {
1361
- // if (::GetLastError() != ERROR_FILE_EXISTS || !isSplit)
1362
- {
1363
- RINOK(SendMessageError_with_LastError(kCantOpenOutFile, fullProcessedPath));
1364
- return S_OK;
1365
- }
1366
- }
1367
-
1368
- if (_ntOptions.PreAllocateOutFile && !_isSplit && _curSizeDefined && _curSize > (1 << 12))
1369
- {
1370
- // UInt64 ticks = GetCpuTicks();
1371
- bool res = _outFileStreamSpec->File.SetLength(_curSize);
1372
- _fileLengthWasSet = res;
1373
-
1374
- // ticks = GetCpuTicks() - ticks;
1375
- // printf("\nticks = %10d\n", (unsigned)ticks);
1376
- if (!res)
1377
- {
1378
- RINOK(SendMessageError_with_LastError(kCantSetFileLen, fullProcessedPath));
1379
- }
1380
-
1381
- /*
1382
- _outFileStreamSpec->File.Close();
1383
- ticks = GetCpuTicks() - ticks;
1384
- printf("\nticks = %10d\n", (unsigned)ticks);
1385
- return S_FALSE;
1386
- */
1387
-
1388
- /*
1389
- File.SetLength() on FAT (xp64): is fast, but then File.Close() can be slow,
1390
- if we don't write any data.
1391
- File.SetLength() for remote share file (exFAT) can be slow in some cases,
1392
- and the Windows can return "network error" after 1 minute,
1393
- while remote file still can grow.
1394
- We need some way to detect such bad cases and disable PreAllocateOutFile mode.
1395
- */
1396
-
1397
- res = _outFileStreamSpec->File.SeekToBegin();
1398
- if (!res)
1399
- {
1400
- RINOK(SendMessageError_with_LastError("Can not seek to begin of file", fullProcessedPath));
1401
- }
1402
- }
1403
-
1404
- #ifdef SUPPORT_ALT_STREAMS
1405
- if (isRenamed && !_item.IsAltStream)
1406
- {
1407
- CIndexToPathPair pair(index, fullProcessedPath);
1408
- unsigned oldSize = _renamedFiles.Size();
1409
- unsigned insertIndex = _renamedFiles.AddToUniqueSorted(pair);
1410
- if (oldSize == _renamedFiles.Size())
1411
- _renamedFiles[insertIndex].Path = fullProcessedPath;
1412
- }
1413
- #endif
1414
-
1415
- if (_isSplit)
1416
- {
1417
- RINOK(_outFileStreamSpec->Seek(_position, STREAM_SEEK_SET, NULL));
1418
- }
1419
-
1420
- _outFileStream = outStreamLoc2;
1421
- }
1422
- }
1423
- }
1424
-
1425
- outStreamLoc = _outFileStream;
1426
- }
1427
- }
1428
-
1429
- #ifndef _SFX
1430
-
1431
- if (_hashStream)
1432
- {
1433
- if (askExtractMode == NArchive::NExtract::NAskMode::kExtract ||
1434
- askExtractMode == NArchive::NExtract::NAskMode::kTest)
1435
- {
1436
- _hashStreamSpec->SetStream(outStreamLoc);
1437
- outStreamLoc = _hashStream;
1438
- _hashStreamSpec->Init(true);
1439
- _hashStreamWasUsed = true;
1440
- }
1441
- }
1442
-
1443
- #endif
1444
-
1445
-
1446
- if (outStreamLoc)
1447
- {
1448
- /*
1449
- #ifdef SUPPORT_LINKS
1450
-
1451
- if (!_CopyFile_Path.IsEmpty())
1452
- {
1453
- RINOK(PrepareOperation(askExtractMode));
1454
- RINOK(MyCopyFile(outStreamLoc));
1455
- return SetOperationResult(NArchive::NExtract::NOperationResult::kOK);
1456
- }
1457
-
1458
- if (isCopyLink && _testMode)
1459
- return S_OK;
1460
-
1461
- #endif
1462
- */
1463
-
1464
- *outStream = outStreamLoc.Detach();
1465
- }
1466
-
1467
- return S_OK;
1468
-
1469
- COM_TRY_END
1470
- }
1471
-
1472
-
1473
- STDMETHODIMP CArchiveExtractCallback::PrepareOperation(Int32 askExtractMode)
1474
- {
1475
- COM_TRY_BEGIN
1476
-
1477
- #ifndef _SFX
1478
- if (ExtractToStreamCallback)
1479
- return ExtractToStreamCallback->PrepareOperation7(askExtractMode);
1480
- #endif
1481
-
1482
- _extractMode = false;
1483
-
1484
- switch (askExtractMode)
1485
- {
1486
- case NArchive::NExtract::NAskMode::kExtract:
1487
- if (_testMode)
1488
- askExtractMode = NArchive::NExtract::NAskMode::kTest;
1489
- else
1490
- _extractMode = true;
1491
- break;
1492
- };
1493
-
1494
- return _extractCallback2->PrepareOperation(_item.Path, BoolToInt(_item.IsDir),
1495
- askExtractMode, _isSplit ? &_position: 0);
1496
-
1497
- COM_TRY_END
1498
- }
1499
-
1500
-
1501
- HRESULT CArchiveExtractCallback::CloseFile()
1502
- {
1503
- if (!_outFileStream)
1504
- return S_OK;
1505
-
1506
- HRESULT hres = S_OK;
1507
- _outFileStreamSpec->SetTime(
1508
- (WriteCTime && _fi.CTimeDefined) ? &_fi.CTime : NULL,
1509
- (WriteATime && _fi.ATimeDefined) ? &_fi.ATime : NULL,
1510
- (WriteMTime && _fi.MTimeDefined) ? &_fi.MTime : (_arc->MTimeDefined ? &_arc->MTime : NULL));
1511
-
1512
- const UInt64 processedSize = _outFileStreamSpec->ProcessedSize;
1513
- if (_fileLengthWasSet && _curSize > processedSize)
1514
- {
1515
- bool res = _outFileStreamSpec->File.SetLength(processedSize);
1516
- _fileLengthWasSet = res;
1517
- if (!res)
1518
- hres = SendMessageError_with_LastError(kCantSetFileLen, us2fs(_item.Path));
1519
- }
1520
- _curSize = processedSize;
1521
- _curSizeDefined = true;
1522
- RINOK(_outFileStreamSpec->Close());
1523
- _outFileStream.Release();
1524
- return hres;
1525
- }
1526
-
1527
-
1528
- STDMETHODIMP CArchiveExtractCallback::SetOperationResult(Int32 opRes)
1529
- {
1530
- COM_TRY_BEGIN
1531
-
1532
- #ifndef _SFX
1533
- if (ExtractToStreamCallback)
1534
- return ExtractToStreamCallback->SetOperationResult7(opRes, BoolToInt(_encrypted));
1535
- #endif
1536
-
1537
- #ifndef _SFX
1538
-
1539
- if (_hashStreamWasUsed)
1540
- {
1541
- _hashStreamSpec->_hash->Final(_item.IsDir,
1542
- #ifdef SUPPORT_ALT_STREAMS
1543
- _item.IsAltStream
1544
- #else
1545
- false
1546
- #endif
1547
- , _item.Path);
1548
- _curSize = _hashStreamSpec->GetSize();
1549
- _curSizeDefined = true;
1550
- _hashStreamSpec->ReleaseStream();
1551
- _hashStreamWasUsed = false;
1552
- }
1553
-
1554
- #endif
1555
-
1556
- RINOK(CloseFile());
1557
-
1558
- #ifdef _USE_SECURITY_CODE
1559
- if (!_stdOutMode && _extractMode && _ntOptions.NtSecurity.Val && _arc->GetRawProps)
1560
- {
1561
- const void *data;
1562
- UInt32 dataSize;
1563
- UInt32 propType;
1564
- _arc->GetRawProps->GetRawProp(_index, kpidNtSecure, &data, &dataSize, &propType);
1565
- if (dataSize != 0)
1566
- {
1567
- if (propType != NPropDataType::kRaw)
1568
- return E_FAIL;
1569
- if (CheckNtSecure((const Byte *)data, dataSize))
1570
- {
1571
- SECURITY_INFORMATION securInfo = DACL_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | OWNER_SECURITY_INFORMATION;
1572
- if (_saclEnabled)
1573
- securInfo |= SACL_SECURITY_INFORMATION;
1574
- ::SetFileSecurityW(fs2us(_diskFilePath), securInfo, (PSECURITY_DESCRIPTOR)(void *)data);
1575
- }
1576
- }
1577
- }
1578
- #endif
1579
-
1580
- if (!_curSizeDefined)
1581
- GetUnpackSize();
1582
-
1583
- if (_curSizeDefined)
1584
- {
1585
- #ifdef SUPPORT_ALT_STREAMS
1586
- if (_item.IsAltStream)
1587
- AltStreams_UnpackSize += _curSize;
1588
- else
1589
- #endif
1590
- UnpackSize += _curSize;
1591
- }
1592
-
1593
- if (_item.IsDir)
1594
- NumFolders++;
1595
- #ifdef SUPPORT_ALT_STREAMS
1596
- else if (_item.IsAltStream)
1597
- NumAltStreams++;
1598
- #endif
1599
- else
1600
- NumFiles++;
1601
-
1602
- if (!_stdOutMode && _extractMode && _fi.AttribDefined)
1603
- SetFileAttrib_PosixHighDetect(_diskFilePath, _fi.Attrib);
1604
-
1605
- RINOK(_extractCallback2->SetOperationResult(opRes, BoolToInt(_encrypted)));
1606
-
1607
- return S_OK;
1608
-
1609
- COM_TRY_END
1610
- }
1611
-
1612
- STDMETHODIMP CArchiveExtractCallback::ReportExtractResult(UInt32 indexType, UInt32 index, Int32 opRes)
1613
- {
1614
- if (_folderArchiveExtractCallback2)
1615
- {
1616
- bool isEncrypted = false;
1617
- UString s;
1618
-
1619
- if (indexType == NArchive::NEventIndexType::kInArcIndex && index != (UInt32)(Int32)-1)
1620
- {
1621
- CReadArcItem item;
1622
- RINOK(_arc->GetItem(index, item));
1623
- s = item.Path;
1624
- RINOK(Archive_GetItemBoolProp(_arc->Archive, index, kpidEncrypted, isEncrypted));
1625
- }
1626
- else
1627
- {
1628
- s = '#';
1629
- s.Add_UInt32(index);
1630
- // if (indexType == NArchive::NEventIndexType::kBlockIndex) {}
1631
- }
1632
-
1633
- return _folderArchiveExtractCallback2->ReportExtractResult(opRes, isEncrypted, s);
1634
- }
1635
-
1636
- return S_OK;
1637
- }
1638
-
1639
-
1640
- STDMETHODIMP CArchiveExtractCallback::CryptoGetTextPassword(BSTR *password)
1641
- {
1642
- COM_TRY_BEGIN
1643
- if (!_cryptoGetTextPassword)
1644
- {
1645
- RINOK(_extractCallback2.QueryInterface(IID_ICryptoGetTextPassword,
1646
- &_cryptoGetTextPassword));
1647
- }
1648
- return _cryptoGetTextPassword->CryptoGetTextPassword(password);
1649
- COM_TRY_END
1650
- }
1651
-
1652
-
1653
- void CDirPathSortPair::SetNumSlashes(const FChar *s)
1654
- {
1655
- for (unsigned numSlashes = 0;;)
1656
- {
1657
- FChar c = *s++;
1658
- if (c == 0)
1659
- {
1660
- Len = numSlashes;
1661
- return;
1662
- }
1663
- if (IS_PATH_SEPAR(c))
1664
- numSlashes++;
1665
- }
1666
- }
1667
-
1668
-
1669
- bool CDirPathTime::SetDirTime()
1670
- {
1671
- return NDir::SetDirTime(Path,
1672
- CTimeDefined ? &CTime : NULL,
1673
- ATimeDefined ? &ATime : NULL,
1674
- MTimeDefined ? &MTime : NULL);
1675
- }
1676
-
1677
-
1678
- HRESULT CArchiveExtractCallback::SetDirsTimes()
1679
- {
1680
- if (!_arc)
1681
- return S_OK;
1682
-
1683
- CRecordVector<CDirPathSortPair> pairs;
1684
- pairs.ClearAndSetSize(_extractedFolders.Size());
1685
- unsigned i;
1686
-
1687
- for (i = 0; i < _extractedFolders.Size(); i++)
1688
- {
1689
- CDirPathSortPair &pair = pairs[i];
1690
- pair.Index = i;
1691
- pair.SetNumSlashes(_extractedFolders[i].Path);
1692
- }
1693
-
1694
- pairs.Sort2();
1695
-
1696
- for (i = 0; i < pairs.Size(); i++)
1697
- {
1698
- _extractedFolders[pairs[i].Index].SetDirTime();
1699
- // if (!) return GetLastError();
1700
- }
1701
-
1702
- ClearExtractedDirsInfo();
1703
- return S_OK;
1704
- }
1705
-
1706
-
1707
- HRESULT CArchiveExtractCallback::CloseArc()
1708
- {
1709
- HRESULT res = CloseFile();
1710
- HRESULT res2 = SetDirsTimes();
1711
- if (res == S_OK)
1712
- res = res2;
1713
- _arc = NULL;
1714
- return res;
1715
- }