hane 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -32
- package/binding.gyp +50 -50
- package/deps/win-nodeapi/node_api.def +158 -158
- package/package.json +34 -34
- package/src/native/addon.cc +183 -183
- package/src/native/zsign_driver.cc +86 -86
- package/src/native/zsign_driver.h +38 -38
- package/vendor/zlib/.cmake-format.yaml +245 -245
- package/vendor/zlib/.github/workflows/c-std.yml +230 -230
- package/vendor/zlib/.github/workflows/cmake.yml +112 -112
- package/vendor/zlib/.github/workflows/configure.yml +136 -136
- package/vendor/zlib/.github/workflows/fuzz.yml +25 -25
- package/vendor/zlib/.github/workflows/msys-cygwin.yml +77 -77
- package/vendor/zlib/BUILD.bazel +134 -134
- package/vendor/zlib/CMakeLists.txt +330 -330
- package/vendor/zlib/ChangeLog +1621 -1621
- package/vendor/zlib/FAQ +367 -367
- package/vendor/zlib/INDEX +68 -68
- package/vendor/zlib/LICENSE +22 -22
- package/vendor/zlib/MODULE.bazel +9 -9
- package/vendor/zlib/Makefile.in +419 -419
- package/vendor/zlib/README +115 -115
- package/vendor/zlib/README-cmake.md +83 -83
- package/vendor/zlib/adler32.c +164 -164
- package/vendor/zlib/amiga/Makefile.pup +69 -69
- package/vendor/zlib/amiga/Makefile.sas +68 -68
- package/vendor/zlib/compress.c +75 -75
- package/vendor/zlib/configure +966 -966
- package/vendor/zlib/contrib/README.contrib +57 -57
- package/vendor/zlib/contrib/ada/buffer_demo.adb +106 -106
- package/vendor/zlib/contrib/ada/mtest.adb +156 -156
- package/vendor/zlib/contrib/ada/read.adb +156 -156
- package/vendor/zlib/contrib/ada/readme.txt +65 -65
- package/vendor/zlib/contrib/ada/test.adb +463 -463
- package/vendor/zlib/contrib/ada/zlib-streams.adb +225 -225
- package/vendor/zlib/contrib/ada/zlib-streams.ads +114 -114
- package/vendor/zlib/contrib/ada/zlib-thin.adb +142 -142
- package/vendor/zlib/contrib/ada/zlib-thin.ads +450 -450
- package/vendor/zlib/contrib/ada/zlib.adb +701 -701
- package/vendor/zlib/contrib/ada/zlib.ads +328 -328
- package/vendor/zlib/contrib/ada/zlib.gpr +20 -20
- package/vendor/zlib/contrib/blast/Makefile +8 -8
- package/vendor/zlib/contrib/blast/README +4 -4
- package/vendor/zlib/contrib/blast/blast.c +466 -466
- package/vendor/zlib/contrib/blast/blast.h +83 -83
- package/vendor/zlib/contrib/delphi/ZLib.pas +557 -557
- package/vendor/zlib/contrib/delphi/ZLibConst.pas +11 -11
- package/vendor/zlib/contrib/delphi/readme.txt +76 -76
- package/vendor/zlib/contrib/delphi/zlibd32.mak +99 -99
- package/vendor/zlib/contrib/gcc_gvmat64/gvmat64.S +574 -574
- package/vendor/zlib/contrib/infback9/README +1 -1
- package/vendor/zlib/contrib/infback9/infback9.c +603 -603
- package/vendor/zlib/contrib/infback9/infback9.h +37 -37
- package/vendor/zlib/contrib/infback9/inffix9.h +107 -107
- package/vendor/zlib/contrib/infback9/inflate9.h +47 -47
- package/vendor/zlib/contrib/infback9/inftree9.c +319 -319
- package/vendor/zlib/contrib/infback9/inftree9.h +61 -61
- package/vendor/zlib/contrib/iostream/test.cpp +24 -24
- package/vendor/zlib/contrib/iostream/zfstream.cpp +329 -329
- package/vendor/zlib/contrib/iostream/zfstream.h +128 -128
- package/vendor/zlib/contrib/iostream2/zstream.h +307 -307
- package/vendor/zlib/contrib/iostream2/zstream_test.cpp +25 -25
- package/vendor/zlib/contrib/iostream3/README +35 -35
- package/vendor/zlib/contrib/iostream3/TODO +17 -17
- package/vendor/zlib/contrib/iostream3/test.cc +50 -50
- package/vendor/zlib/contrib/iostream3/zfstream.cc +479 -479
- package/vendor/zlib/contrib/iostream3/zfstream.h +466 -466
- package/vendor/zlib/contrib/minizip/CMakeLists.txt +380 -380
- package/vendor/zlib/contrib/minizip/Makefile +37 -37
- package/vendor/zlib/contrib/minizip/Makefile.am +45 -45
- package/vendor/zlib/contrib/minizip/MiniZip64_Changes.txt +6 -6
- package/vendor/zlib/contrib/minizip/MiniZip64_info.txt +74 -74
- package/vendor/zlib/contrib/minizip/configure.ac +32 -32
- package/vendor/zlib/contrib/minizip/crypt.h +128 -128
- package/vendor/zlib/contrib/minizip/ints.h +57 -57
- package/vendor/zlib/contrib/minizip/ioapi.c +231 -231
- package/vendor/zlib/contrib/minizip/ioapi.h +183 -183
- package/vendor/zlib/contrib/minizip/iowin32.c +448 -448
- package/vendor/zlib/contrib/minizip/iowin32.h +28 -28
- package/vendor/zlib/contrib/minizip/make_vms.com +25 -25
- package/vendor/zlib/contrib/minizip/miniunz.c +647 -647
- package/vendor/zlib/contrib/minizip/miniunzip.1 +63 -63
- package/vendor/zlib/contrib/minizip/minizip.1 +46 -46
- package/vendor/zlib/contrib/minizip/minizip.c +512 -512
- package/vendor/zlib/contrib/minizip/minizip.pc.in +12 -12
- package/vendor/zlib/contrib/minizip/minizip.pc.txt +13 -13
- package/vendor/zlib/contrib/minizip/minizipConfig.cmake.in +35 -35
- package/vendor/zlib/contrib/minizip/mztools.c +288 -288
- package/vendor/zlib/contrib/minizip/mztools.h +37 -37
- package/vendor/zlib/contrib/minizip/skipset.h +361 -361
- package/vendor/zlib/contrib/minizip/test/CMakeLists.txt +121 -121
- package/vendor/zlib/contrib/minizip/test/add_subdirectory_exclude_test.cmake.in +29 -29
- package/vendor/zlib/contrib/minizip/test/add_subdirectory_test.cmake.in +28 -28
- package/vendor/zlib/contrib/minizip/test/find_package_test.cmake.in +25 -25
- package/vendor/zlib/contrib/minizip/test/test_helper.cm +32 -32
- package/vendor/zlib/contrib/minizip/unzip.c +1981 -1981
- package/vendor/zlib/contrib/minizip/unzip.h +441 -441
- package/vendor/zlib/contrib/minizip/zip.c +2199 -2199
- package/vendor/zlib/contrib/minizip/zip.h +370 -370
- package/vendor/zlib/contrib/nuget/nuget.csproj +43 -43
- package/vendor/zlib/contrib/nuget/nuget.sln +22 -22
- package/vendor/zlib/contrib/pascal/example.pas +599 -599
- package/vendor/zlib/contrib/pascal/readme.txt +76 -76
- package/vendor/zlib/contrib/pascal/zlibd32.mak +99 -99
- package/vendor/zlib/contrib/pascal/zlibpas.pas +276 -276
- package/vendor/zlib/contrib/puff/Makefile +42 -42
- package/vendor/zlib/contrib/puff/README +63 -63
- package/vendor/zlib/contrib/puff/puff.c +840 -840
- package/vendor/zlib/contrib/puff/puff.h +35 -35
- package/vendor/zlib/contrib/puff/pufftest.c +169 -169
- package/vendor/zlib/contrib/untgz/Makefile +14 -14
- package/vendor/zlib/contrib/untgz/Makefile.msc +17 -17
- package/vendor/zlib/contrib/untgz/untgz.c +667 -667
- package/vendor/zlib/contrib/vstudio/readme.txt +81 -81
- package/vendor/zlib/contrib/vstudio/vc12/miniunz.vcxproj +315 -315
- package/vendor/zlib/contrib/vstudio/vc12/minizip.vcxproj +312 -312
- package/vendor/zlib/contrib/vstudio/vc12/testzlib.vcxproj +421 -421
- package/vendor/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj +315 -315
- package/vendor/zlib/contrib/vstudio/vc12/zlib.rc +32 -32
- package/vendor/zlib/contrib/vstudio/vc12/zlibstat.vcxproj +458 -458
- package/vendor/zlib/contrib/vstudio/vc12/zlibvc.sln +119 -119
- package/vendor/zlib/contrib/vstudio/vc12/zlibvc.vcxproj +667 -667
- package/vendor/zlib/contrib/vstudio/vc14/miniunz.vcxproj +315 -315
- package/vendor/zlib/contrib/vstudio/vc14/minizip.vcxproj +312 -312
- package/vendor/zlib/contrib/vstudio/vc14/testzlib.vcxproj +421 -421
- package/vendor/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj +315 -315
- package/vendor/zlib/contrib/vstudio/vc14/zlib.rc +32 -32
- package/vendor/zlib/contrib/vstudio/vc14/zlibstat.vcxproj +458 -458
- package/vendor/zlib/contrib/vstudio/vc14/zlibvc.sln +119 -119
- package/vendor/zlib/contrib/vstudio/vc14/zlibvc.vcxproj +667 -667
- package/vendor/zlib/contrib/vstudio/vc17/miniunz.vcxproj +408 -408
- package/vendor/zlib/contrib/vstudio/vc17/minizip.vcxproj +404 -404
- package/vendor/zlib/contrib/vstudio/vc17/testzlib.vcxproj +472 -472
- package/vendor/zlib/contrib/vstudio/vc17/testzlibdll.vcxproj +408 -408
- package/vendor/zlib/contrib/vstudio/vc17/zlib.rc +32 -32
- package/vendor/zlib/contrib/vstudio/vc17/zlibstat.vcxproj +601 -601
- package/vendor/zlib/contrib/vstudio/vc17/zlibvc.sln +179 -179
- package/vendor/zlib/contrib/vstudio/vc17/zlibvc.vcxproj +874 -874
- package/vendor/zlib/crc32.c +1049 -1049
- package/vendor/zlib/crc32.h +9446 -9446
- package/vendor/zlib/deflate.c +2152 -2152
- package/vendor/zlib/deflate.h +380 -380
- package/vendor/zlib/doc/algorithm.txt +209 -209
- package/vendor/zlib/doc/rfc1950.txt +619 -619
- package/vendor/zlib/doc/rfc1951.txt +955 -955
- package/vendor/zlib/doc/rfc1952.txt +675 -675
- package/vendor/zlib/doc/txtvsbin.txt +107 -107
- package/vendor/zlib/examples/README.examples +54 -54
- package/vendor/zlib/examples/enough.c +597 -597
- package/vendor/zlib/examples/fitblk.c +233 -233
- package/vendor/zlib/examples/gun.c +702 -702
- package/vendor/zlib/examples/gzappend.c +504 -504
- package/vendor/zlib/examples/gzjoin.c +449 -449
- package/vendor/zlib/examples/gzlog.c +1061 -1061
- package/vendor/zlib/examples/gzlog.h +91 -91
- package/vendor/zlib/examples/gznorm.c +474 -474
- package/vendor/zlib/examples/zlib_how.html +549 -549
- package/vendor/zlib/examples/zpipe.c +209 -209
- package/vendor/zlib/examples/zran.c +550 -550
- package/vendor/zlib/examples/zran.h +53 -53
- package/vendor/zlib/gzclose.c +23 -23
- package/vendor/zlib/gzguts.h +215 -215
- package/vendor/zlib/gzlib.c +585 -585
- package/vendor/zlib/gzread.c +603 -603
- package/vendor/zlib/gzwrite.c +631 -631
- package/vendor/zlib/infback.c +628 -628
- package/vendor/zlib/inffast.c +320 -320
- package/vendor/zlib/inffast.h +11 -11
- package/vendor/zlib/inffixed.h +94 -94
- package/vendor/zlib/inflate.c +1526 -1526
- package/vendor/zlib/inflate.h +126 -126
- package/vendor/zlib/inftrees.c +299 -299
- package/vendor/zlib/inftrees.h +62 -62
- package/vendor/zlib/make_vms.com +867 -867
- package/vendor/zlib/msdos/Makefile.bor +115 -115
- package/vendor/zlib/msdos/Makefile.dj2 +104 -104
- package/vendor/zlib/msdos/Makefile.emx +69 -69
- package/vendor/zlib/msdos/Makefile.msc +112 -112
- package/vendor/zlib/msdos/Makefile.tc +100 -100
- package/vendor/zlib/nintendods/Makefile +126 -126
- package/vendor/zlib/nintendods/README +5 -5
- package/vendor/zlib/old/Makefile.emx +69 -69
- package/vendor/zlib/old/Makefile.riscos +151 -151
- package/vendor/zlib/old/README +3 -3
- package/vendor/zlib/old/descrip.mms +48 -48
- package/vendor/zlib/old/os2/Makefile.os2 +136 -136
- package/vendor/zlib/old/os2/zlib.def +51 -51
- package/vendor/zlib/old/visual-basic.txt +160 -160
- package/vendor/zlib/os400/README400 +48 -48
- package/vendor/zlib/os400/bndsrc +133 -133
- package/vendor/zlib/os400/make.sh +366 -366
- package/vendor/zlib/os400/zlib.inc +531 -531
- package/vendor/zlib/qnx/package.qpg +141 -141
- package/vendor/zlib/test/CMakeLists.txt +265 -265
- package/vendor/zlib/test/add_subdirectory_exclude_test.cmake.in +29 -29
- package/vendor/zlib/test/add_subdirectory_test.cmake.in +28 -28
- package/vendor/zlib/test/example.c +552 -552
- package/vendor/zlib/test/find_package_test.cmake.in +26 -26
- package/vendor/zlib/test/infcover.c +672 -672
- package/vendor/zlib/test/minigzip.c +590 -590
- package/vendor/zlib/treebuild.xml +116 -116
- package/vendor/zlib/trees.c +1119 -1119
- package/vendor/zlib/trees.h +128 -128
- package/vendor/zlib/uncompr.c +85 -85
- package/vendor/zlib/watcom/watcom_f.mak +43 -43
- package/vendor/zlib/watcom/watcom_l.mak +43 -43
- package/vendor/zlib/win32/DLL_FAQ.txt +381 -381
- package/vendor/zlib/win32/Makefile.bor +109 -109
- package/vendor/zlib/win32/Makefile.gcc +177 -177
- package/vendor/zlib/win32/Makefile.msc +159 -159
- package/vendor/zlib/win32/README-WIN32.txt +103 -103
- package/vendor/zlib/win32/VisualC.txt +3 -3
- package/vendor/zlib/win32/zlib1.rc +37 -37
- package/vendor/zlib/zconf.h.in +544 -544
- package/vendor/zlib/zlib.3 +149 -149
- package/vendor/zlib/zlib.h +1957 -1957
- package/vendor/zlib/zlib.map +103 -103
- package/vendor/zlib/zlib.pc.cmakein +13 -13
- package/vendor/zlib/zlib.pc.in +13 -13
- package/vendor/zlib/zlibConfig.cmake.in +26 -26
- package/vendor/zlib/zutil.c +299 -299
- package/vendor/zlib/zutil.h +257 -257
- package/vendor/zsign/.gitattributes +3 -3
- package/vendor/zsign/LICENSE +20 -20
- package/vendor/zsign/README.md +142 -142
- package/vendor/zsign/build/linux/Makefile +43 -43
- package/vendor/zsign/build/macos/Makefile +43 -43
- package/vendor/zsign/build/windows/vs2022/include/minizip/crypt.h +128 -128
- package/vendor/zsign/build/windows/vs2022/include/minizip/ioapi.h +216 -216
- package/vendor/zsign/build/windows/vs2022/include/minizip/iowin32.h +28 -28
- package/vendor/zsign/build/windows/vs2022/include/minizip/mztools.h +37 -37
- package/vendor/zsign/build/windows/vs2022/include/minizip/unzip.h +437 -437
- package/vendor/zsign/build/windows/vs2022/include/minizip/zip.h +364 -364
- package/vendor/zsign/build/windows/vs2022/include/openssl/__DECC_INCLUDE_EPILOGUE.H +22 -22
- package/vendor/zsign/build/windows/vs2022/include/openssl/__DECC_INCLUDE_PROLOGUE.H +26 -26
- package/vendor/zsign/build/windows/vs2022/include/openssl/aes.h +111 -111
- package/vendor/zsign/build/windows/vs2022/include/openssl/applink.c +153 -153
- package/vendor/zsign/build/windows/vs2022/include/openssl/asn1_mac.h +10 -10
- package/vendor/zsign/build/windows/vs2022/include/openssl/asn1err.h +142 -142
- package/vendor/zsign/build/windows/vs2022/include/openssl/async.h +104 -104
- package/vendor/zsign/build/windows/vs2022/include/openssl/asyncerr.h +29 -29
- package/vendor/zsign/build/windows/vs2022/include/openssl/bioerr.h +72 -72
- package/vendor/zsign/build/windows/vs2022/include/openssl/blowfish.h +78 -78
- package/vendor/zsign/build/windows/vs2022/include/openssl/bn.h +590 -590
- package/vendor/zsign/build/windows/vs2022/include/openssl/bnerr.h +47 -47
- package/vendor/zsign/build/windows/vs2022/include/openssl/buffer.h +62 -62
- package/vendor/zsign/build/windows/vs2022/include/openssl/buffererr.h +25 -25
- package/vendor/zsign/build/windows/vs2022/include/openssl/camellia.h +117 -117
- package/vendor/zsign/build/windows/vs2022/include/openssl/cast.h +71 -71
- package/vendor/zsign/build/windows/vs2022/include/openssl/cmac.h +52 -52
- package/vendor/zsign/build/windows/vs2022/include/openssl/cmp_util.h +56 -56
- package/vendor/zsign/build/windows/vs2022/include/openssl/cmperr.h +131 -131
- package/vendor/zsign/build/windows/vs2022/include/openssl/cmserr.h +125 -125
- package/vendor/zsign/build/windows/vs2022/include/openssl/comperr.h +38 -38
- package/vendor/zsign/build/windows/vs2022/include/openssl/conf_api.h +46 -46
- package/vendor/zsign/build/windows/vs2022/include/openssl/conferr.h +52 -52
- package/vendor/zsign/build/windows/vs2022/include/openssl/conftypes.h +44 -44
- package/vendor/zsign/build/windows/vs2022/include/openssl/core.h +236 -236
- package/vendor/zsign/build/windows/vs2022/include/openssl/core_dispatch.h +1022 -1022
- package/vendor/zsign/build/windows/vs2022/include/openssl/core_object.h +41 -41
- package/vendor/zsign/build/windows/vs2022/include/openssl/crmferr.h +50 -50
- package/vendor/zsign/build/windows/vs2022/include/openssl/cryptoerr.h +56 -56
- package/vendor/zsign/build/windows/vs2022/include/openssl/cryptoerr_legacy.h +1466 -1466
- package/vendor/zsign/build/windows/vs2022/include/openssl/cterr.h +45 -45
- package/vendor/zsign/build/windows/vs2022/include/openssl/decoder.h +133 -133
- package/vendor/zsign/build/windows/vs2022/include/openssl/decodererr.h +28 -28
- package/vendor/zsign/build/windows/vs2022/include/openssl/des.h +211 -211
- package/vendor/zsign/build/windows/vs2022/include/openssl/dh.h +339 -339
- package/vendor/zsign/build/windows/vs2022/include/openssl/dherr.h +59 -59
- package/vendor/zsign/build/windows/vs2022/include/openssl/dsa.h +280 -280
- package/vendor/zsign/build/windows/vs2022/include/openssl/dsaerr.h +44 -44
- package/vendor/zsign/build/windows/vs2022/include/openssl/dtls1.h +57 -57
- package/vendor/zsign/build/windows/vs2022/include/openssl/e_os2.h +310 -310
- package/vendor/zsign/build/windows/vs2022/include/openssl/e_ostime.h +38 -38
- package/vendor/zsign/build/windows/vs2022/include/openssl/ebcdic.h +39 -39
- package/vendor/zsign/build/windows/vs2022/include/openssl/ec.h +1588 -1588
- package/vendor/zsign/build/windows/vs2022/include/openssl/ecdh.h +10 -10
- package/vendor/zsign/build/windows/vs2022/include/openssl/ecdsa.h +10 -10
- package/vendor/zsign/build/windows/vs2022/include/openssl/ecerr.h +104 -104
- package/vendor/zsign/build/windows/vs2022/include/openssl/encoder.h +124 -124
- package/vendor/zsign/build/windows/vs2022/include/openssl/encodererr.h +28 -28
- package/vendor/zsign/build/windows/vs2022/include/openssl/engine.h +833 -833
- package/vendor/zsign/build/windows/vs2022/include/openssl/engineerr.h +63 -63
- package/vendor/zsign/build/windows/vs2022/include/openssl/esserr.h +32 -32
- package/vendor/zsign/build/windows/vs2022/include/openssl/evp.h +2231 -2231
- package/vendor/zsign/build/windows/vs2022/include/openssl/evperr.h +140 -140
- package/vendor/zsign/build/windows/vs2022/include/openssl/fips_names.h +50 -50
- package/vendor/zsign/build/windows/vs2022/include/openssl/hmac.h +62 -62
- package/vendor/zsign/build/windows/vs2022/include/openssl/hpke.h +169 -169
- package/vendor/zsign/build/windows/vs2022/include/openssl/http.h +118 -118
- package/vendor/zsign/build/windows/vs2022/include/openssl/httperr.h +56 -56
- package/vendor/zsign/build/windows/vs2022/include/openssl/idea.h +82 -82
- package/vendor/zsign/build/windows/vs2022/include/openssl/indicator.h +31 -31
- package/vendor/zsign/build/windows/vs2022/include/openssl/kdf.h +138 -138
- package/vendor/zsign/build/windows/vs2022/include/openssl/kdferr.h +16 -16
- package/vendor/zsign/build/windows/vs2022/include/openssl/macros.h +338 -338
- package/vendor/zsign/build/windows/vs2022/include/openssl/md2.h +56 -56
- package/vendor/zsign/build/windows/vs2022/include/openssl/md4.h +63 -63
- package/vendor/zsign/build/windows/vs2022/include/openssl/md5.h +62 -62
- package/vendor/zsign/build/windows/vs2022/include/openssl/mdc2.h +55 -55
- package/vendor/zsign/build/windows/vs2022/include/openssl/modes.h +219 -219
- package/vendor/zsign/build/windows/vs2022/include/openssl/obj_mac.h +5820 -5820
- package/vendor/zsign/build/windows/vs2022/include/openssl/objects.h +184 -184
- package/vendor/zsign/build/windows/vs2022/include/openssl/objectserr.h +28 -28
- package/vendor/zsign/build/windows/vs2022/include/openssl/ocsperr.h +53 -53
- package/vendor/zsign/build/windows/vs2022/include/openssl/opensslconf.h +17 -17
- package/vendor/zsign/build/windows/vs2022/include/openssl/ossl_typ.h +16 -16
- package/vendor/zsign/build/windows/vs2022/include/openssl/param_build.h +63 -63
- package/vendor/zsign/build/windows/vs2022/include/openssl/params.h +160 -160
- package/vendor/zsign/build/windows/vs2022/include/openssl/pem.h +543 -543
- package/vendor/zsign/build/windows/vs2022/include/openssl/pem2.h +19 -19
- package/vendor/zsign/build/windows/vs2022/include/openssl/pemerr.h +58 -58
- package/vendor/zsign/build/windows/vs2022/include/openssl/pkcs12err.h +46 -46
- package/vendor/zsign/build/windows/vs2022/include/openssl/pkcs7err.h +63 -63
- package/vendor/zsign/build/windows/vs2022/include/openssl/prov_ssl.h +38 -38
- package/vendor/zsign/build/windows/vs2022/include/openssl/proverr.h +162 -162
- package/vendor/zsign/build/windows/vs2022/include/openssl/provider.h +66 -66
- package/vendor/zsign/build/windows/vs2022/include/openssl/quic.h +70 -70
- package/vendor/zsign/build/windows/vs2022/include/openssl/rand.h +125 -125
- package/vendor/zsign/build/windows/vs2022/include/openssl/randerr.h +69 -69
- package/vendor/zsign/build/windows/vs2022/include/openssl/rc2.h +68 -68
- package/vendor/zsign/build/windows/vs2022/include/openssl/rc4.h +47 -47
- package/vendor/zsign/build/windows/vs2022/include/openssl/rc5.h +79 -79
- package/vendor/zsign/build/windows/vs2022/include/openssl/ripemd.h +59 -59
- package/vendor/zsign/build/windows/vs2022/include/openssl/rsa.h +615 -615
- package/vendor/zsign/build/windows/vs2022/include/openssl/rsaerr.h +107 -107
- package/vendor/zsign/build/windows/vs2022/include/openssl/seed.h +113 -113
- package/vendor/zsign/build/windows/vs2022/include/openssl/self_test.h +98 -98
- package/vendor/zsign/build/windows/vs2022/include/openssl/sha.h +139 -139
- package/vendor/zsign/build/windows/vs2022/include/openssl/srtp.h +68 -68
- package/vendor/zsign/build/windows/vs2022/include/openssl/ssl2.h +30 -30
- package/vendor/zsign/build/windows/vs2022/include/openssl/ssl3.h +357 -357
- package/vendor/zsign/build/windows/vs2022/include/openssl/sslerr.h +379 -379
- package/vendor/zsign/build/windows/vs2022/include/openssl/sslerr_legacy.h +467 -467
- package/vendor/zsign/build/windows/vs2022/include/openssl/stack.h +90 -90
- package/vendor/zsign/build/windows/vs2022/include/openssl/store.h +377 -377
- package/vendor/zsign/build/windows/vs2022/include/openssl/storeerr.h +49 -49
- package/vendor/zsign/build/windows/vs2022/include/openssl/symhacks.h +39 -39
- package/vendor/zsign/build/windows/vs2022/include/openssl/thread.h +31 -31
- package/vendor/zsign/build/windows/vs2022/include/openssl/tls1.h +1220 -1220
- package/vendor/zsign/build/windows/vs2022/include/openssl/trace.h +320 -320
- package/vendor/zsign/build/windows/vs2022/include/openssl/ts.h +522 -522
- package/vendor/zsign/build/windows/vs2022/include/openssl/tserr.h +67 -67
- package/vendor/zsign/build/windows/vs2022/include/openssl/txt_db.h +63 -63
- package/vendor/zsign/build/windows/vs2022/include/openssl/types.h +245 -245
- package/vendor/zsign/build/windows/vs2022/include/openssl/uierr.h +38 -38
- package/vendor/zsign/build/windows/vs2022/include/openssl/whrlpool.h +62 -62
- package/vendor/zsign/build/windows/vs2022/include/openssl/x509err.h +70 -70
- package/vendor/zsign/build/windows/vs2022/include/openssl/x509v3err.h +96 -96
- package/vendor/zsign/src/archo.cpp +742 -742
- package/vendor/zsign/src/archo.h +61 -61
- package/vendor/zsign/src/bundle.cpp +589 -589
- package/vendor/zsign/src/bundle.h +46 -46
- package/vendor/zsign/src/common/archive.cpp +246 -246
- package/vendor/zsign/src/common/archive.h +22 -22
- package/vendor/zsign/src/common/common.h +56 -56
- package/vendor/zsign/src/common/fs.cpp +573 -573
- package/vendor/zsign/src/common/fs.h +50 -50
- package/vendor/zsign/src/common/log.cpp +145 -145
- package/vendor/zsign/src/common/log.h +37 -37
- package/vendor/zsign/src/common/mach-o.h +585 -585
- package/vendor/zsign/src/common/sha.cpp +133 -133
- package/vendor/zsign/src/common/sha.h +24 -24
- package/vendor/zsign/src/common/timer.cpp +28 -28
- package/vendor/zsign/src/common/timer.h +17 -17
- package/vendor/zsign/src/common/util.cpp +185 -185
- package/vendor/zsign/src/common/util.h +25 -25
- package/vendor/zsign/src/macho.cpp +273 -273
- package/vendor/zsign/src/macho.h +38 -38
- package/vendor/zsign/src/openssl.cpp +698 -698
- package/vendor/zsign/src/openssl.h +71 -71
- package/vendor/zsign/src/signing.cpp +745 -745
- package/vendor/zsign/src/signing.h +59 -59
- package/vendor/zsign/src/zsign.cpp +317 -317
- package/vendor/zsign/test/dylib/demo/Makefile +12 -12
- package/vendor/zsign/test/dylib/demo/control +9 -9
- package/vendor/zsign/test/dylib/demo/demo.m +21 -21
- package/vendor/zsign/test/linux/test.sh +19 -19
- package/vendor/zsign/test/macos/test.sh +19 -19
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
#include "common.h"
|
|
3
|
-
#include "json.h"
|
|
4
|
-
#include "openssl.h"
|
|
5
|
-
#include <vector>
|
|
6
|
-
|
|
7
|
-
class ZBundle
|
|
8
|
-
{
|
|
9
|
-
public:
|
|
10
|
-
ZBundle();
|
|
11
|
-
|
|
12
|
-
public:
|
|
13
|
-
bool SignFolder(ZSignAsset* pSignAsset,
|
|
14
|
-
const string& strFolder,
|
|
15
|
-
const string& strBundleId,
|
|
16
|
-
const string& strBundleVersion,
|
|
17
|
-
const string& strDisplayName,
|
|
18
|
-
const vector<string>& arrDylibFiles,
|
|
19
|
-
bool bForce,
|
|
20
|
-
bool bWeakInject,
|
|
21
|
-
bool bEnableCache);
|
|
22
|
-
|
|
23
|
-
private:
|
|
24
|
-
bool SignNode(jvalue& jvNode);
|
|
25
|
-
void GetNodeChangedFiles(jvalue& jvNode);
|
|
26
|
-
void GetChangedFiles(jvalue& jvNode, vector<string>& arrChangedFiles);
|
|
27
|
-
bool ModifyPluginsBundleId(const string& strOldBundleId, const string& strNewBundleId);
|
|
28
|
-
bool ModifyBundleInfo(const string& strBundleId, const string& strBundleVersion, const string& strDisplayName);
|
|
29
|
-
|
|
30
|
-
private:
|
|
31
|
-
bool FindAppFolder(const string& strFolder, string& strAppFolder);
|
|
32
|
-
bool GetObjectsToSign(const string& strFolder, jvalue& jvInfo);
|
|
33
|
-
bool GetSignFolderInfo(const string& strFolder, jvalue& jvNode, bool bGetName = false);
|
|
34
|
-
|
|
35
|
-
private:
|
|
36
|
-
bool GenerateCodeResources(const string& strFolder, jvalue& jvCodeRes);
|
|
37
|
-
|
|
38
|
-
private:
|
|
39
|
-
bool m_bForceSign;
|
|
40
|
-
bool m_bWeakInject;
|
|
41
|
-
ZSignAsset* m_pSignAsset;
|
|
42
|
-
vector<string> m_arrInjectDylibs;
|
|
43
|
-
|
|
44
|
-
public:
|
|
45
|
-
string m_strAppFolder;
|
|
46
|
-
};
|
|
1
|
+
#pragma once
|
|
2
|
+
#include "common.h"
|
|
3
|
+
#include "json.h"
|
|
4
|
+
#include "openssl.h"
|
|
5
|
+
#include <vector>
|
|
6
|
+
|
|
7
|
+
class ZBundle
|
|
8
|
+
{
|
|
9
|
+
public:
|
|
10
|
+
ZBundle();
|
|
11
|
+
|
|
12
|
+
public:
|
|
13
|
+
bool SignFolder(ZSignAsset* pSignAsset,
|
|
14
|
+
const string& strFolder,
|
|
15
|
+
const string& strBundleId,
|
|
16
|
+
const string& strBundleVersion,
|
|
17
|
+
const string& strDisplayName,
|
|
18
|
+
const vector<string>& arrDylibFiles,
|
|
19
|
+
bool bForce,
|
|
20
|
+
bool bWeakInject,
|
|
21
|
+
bool bEnableCache);
|
|
22
|
+
|
|
23
|
+
private:
|
|
24
|
+
bool SignNode(jvalue& jvNode);
|
|
25
|
+
void GetNodeChangedFiles(jvalue& jvNode);
|
|
26
|
+
void GetChangedFiles(jvalue& jvNode, vector<string>& arrChangedFiles);
|
|
27
|
+
bool ModifyPluginsBundleId(const string& strOldBundleId, const string& strNewBundleId);
|
|
28
|
+
bool ModifyBundleInfo(const string& strBundleId, const string& strBundleVersion, const string& strDisplayName);
|
|
29
|
+
|
|
30
|
+
private:
|
|
31
|
+
bool FindAppFolder(const string& strFolder, string& strAppFolder);
|
|
32
|
+
bool GetObjectsToSign(const string& strFolder, jvalue& jvInfo);
|
|
33
|
+
bool GetSignFolderInfo(const string& strFolder, jvalue& jvNode, bool bGetName = false);
|
|
34
|
+
|
|
35
|
+
private:
|
|
36
|
+
bool GenerateCodeResources(const string& strFolder, jvalue& jvCodeRes);
|
|
37
|
+
|
|
38
|
+
private:
|
|
39
|
+
bool m_bForceSign;
|
|
40
|
+
bool m_bWeakInject;
|
|
41
|
+
ZSignAsset* m_pSignAsset;
|
|
42
|
+
vector<string> m_arrInjectDylibs;
|
|
43
|
+
|
|
44
|
+
public:
|
|
45
|
+
string m_strAppFolder;
|
|
46
|
+
};
|
|
@@ -1,246 +1,246 @@
|
|
|
1
|
-
#include "archive.h"
|
|
2
|
-
|
|
3
|
-
#ifdef _WIN32
|
|
4
|
-
#include <minizip/zip.h>
|
|
5
|
-
#include <minizip/unzip.h>
|
|
6
|
-
#else
|
|
7
|
-
#include <zip.h>
|
|
8
|
-
#include <unzip.h>
|
|
9
|
-
#endif
|
|
10
|
-
|
|
11
|
-
void Zip::GetModificationTime(const char* path, void* zfi)
|
|
12
|
-
{
|
|
13
|
-
zip_fileinfo* zi = (zip_fileinfo*)zfi;
|
|
14
|
-
struct stat st = { 0 };
|
|
15
|
-
memset(zi, 0, sizeof(zip_fileinfo));
|
|
16
|
-
if (0 == stat(path, &st)) {
|
|
17
|
-
#ifdef _WIN32
|
|
18
|
-
struct tm tm = { 0 };
|
|
19
|
-
localtime_s(&tm, &st.st_mtime);
|
|
20
|
-
zi->tmz_date.tm_sec = tm.tm_sec;
|
|
21
|
-
zi->tmz_date.tm_min = tm.tm_min;
|
|
22
|
-
zi->tmz_date.tm_hour = tm.tm_hour;
|
|
23
|
-
zi->tmz_date.tm_mday = tm.tm_mday;
|
|
24
|
-
zi->tmz_date.tm_mon = tm.tm_mon;
|
|
25
|
-
zi->tmz_date.tm_year = tm.tm_year + 1900;
|
|
26
|
-
#else
|
|
27
|
-
struct tm* tm = localtime(&st.st_mtime);
|
|
28
|
-
zi->tmz_date.tm_sec = tm->tm_sec;
|
|
29
|
-
zi->tmz_date.tm_min = tm->tm_min;
|
|
30
|
-
zi->tmz_date.tm_hour = tm->tm_hour;
|
|
31
|
-
zi->tmz_date.tm_mday = tm->tm_mday;
|
|
32
|
-
zi->tmz_date.tm_mon = tm->tm_mon;
|
|
33
|
-
zi->tmz_date.tm_year = tm->tm_year + 1900;
|
|
34
|
-
#endif
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
bool Zip::_WriteFileToZip(void* hZip, const string& strFile, const string& strRelativePath, int zip_level)
|
|
39
|
-
{
|
|
40
|
-
FILE* fp = NULL;
|
|
41
|
-
_fopen64(fp, strFile.c_str(), "rb");
|
|
42
|
-
if (NULL == fp) {
|
|
43
|
-
ZLog::ErrorV(">>> Zip: Failed to open file: %s\n", strFile.c_str());
|
|
44
|
-
return false;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
zip_fileinfo zi = { 0 };
|
|
48
|
-
GetModificationTime(strFile.c_str(), &zi);
|
|
49
|
-
if (ZIP_OK != zipOpenNewFileInZip3_64(hZip, strRelativePath.c_str(), &zi, NULL, 0, NULL, 0, NULL, Z_DEFLATED, zip_level, 0, -MAX_WBITS, DEF_MEM_LEVEL, 0, NULL, 0, 0)) {
|
|
50
|
-
fclose(fp);
|
|
51
|
-
ZLog::ErrorV(">>> Zip: Failed to add file to zip: %s\n", strRelativePath.c_str());
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
bool bRet = true;
|
|
56
|
-
char buffer[4096];
|
|
57
|
-
size_t bytes_read = fread(buffer, 1, sizeof(buffer), fp);
|
|
58
|
-
while (bytes_read > 0) {
|
|
59
|
-
if (zipWriteInFileInZip(hZip, buffer, (uint32_t)bytes_read) < 0) {
|
|
60
|
-
bRet = false;
|
|
61
|
-
break;
|
|
62
|
-
}
|
|
63
|
-
bytes_read = fread(buffer, 1, sizeof(buffer), fp);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
zipCloseFileInZip(hZip);
|
|
67
|
-
fclose(fp);
|
|
68
|
-
return bRet;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
bool Zip::_CreateFolderToZip(void* hZip, const string& strFolder, const string& strRelativePath, int zip_level)
|
|
72
|
-
{
|
|
73
|
-
zip_fileinfo zi = { 0 };
|
|
74
|
-
GetModificationTime(strFolder.c_str(), &zi);
|
|
75
|
-
if (ZIP_OK != zipOpenNewFileInZip3_64(hZip, strRelativePath.c_str(), &zi, NULL, 0, NULL, 0, NULL, Z_DEFLATED, zip_level, 0, -MAX_WBITS, DEF_MEM_LEVEL, 0, NULL, 0, 0)) {
|
|
76
|
-
ZLog::ErrorV(">>> Zip: Failed to create folder to zip: %s\n", strRelativePath.c_str());
|
|
77
|
-
return false;
|
|
78
|
-
}
|
|
79
|
-
zipCloseFileInZip(hZip);
|
|
80
|
-
return true;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
bool Zip::Archive(const string& strFolder, const string& strZipFile, int nZipLevel)
|
|
84
|
-
{
|
|
85
|
-
if (nZipLevel < 0 || nZipLevel > 9) {
|
|
86
|
-
ZLog::ErrorV(">>> Zip: Invalid compression level: %d\n", nZipLevel);
|
|
87
|
-
return false;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
zipFile zf = zipOpen64(strZipFile.c_str(), 0);
|
|
91
|
-
if (!zf) {
|
|
92
|
-
ZLog::ErrorV(">>> Zip: Failed to create zip file: %s\n", strZipFile.c_str());
|
|
93
|
-
return false;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
bool bRet = true;
|
|
97
|
-
ZFile::EnumFolder(strFolder.c_str(), true, NULL, [&](bool bFolder, const string& strPath) {
|
|
98
|
-
string strRelativePath = strPath.substr(strFolder.size() + 1);
|
|
99
|
-
ZUtil::StringReplace(strRelativePath, "\\", "/");
|
|
100
|
-
|
|
101
|
-
#ifdef _WIN32
|
|
102
|
-
iconv ic;
|
|
103
|
-
strRelativePath = ic.A2U8(strRelativePath);
|
|
104
|
-
#endif
|
|
105
|
-
|
|
106
|
-
if (bFolder) {
|
|
107
|
-
strRelativePath += "/";
|
|
108
|
-
if (!_CreateFolderToZip(zf, strPath, strRelativePath, nZipLevel)) {
|
|
109
|
-
bRet = false;
|
|
110
|
-
return true;
|
|
111
|
-
}
|
|
112
|
-
} else {
|
|
113
|
-
if (!_WriteFileToZip(zf, strPath, strRelativePath, nZipLevel)) {
|
|
114
|
-
bRet = false;
|
|
115
|
-
return true;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
return false;
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
zipClose(zf, NULL);
|
|
122
|
-
return bRet;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
bool Zip::_EnumZipItems(const char* zip_file, enum_zip_items_callback callback)
|
|
126
|
-
{
|
|
127
|
-
unzFile uf = unzOpen64(zip_file);
|
|
128
|
-
if (NULL == uf) {
|
|
129
|
-
return false;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
unz_global_info64 gi;
|
|
133
|
-
if (UNZ_OK != unzGetGlobalInfo64(uf, &gi)) {
|
|
134
|
-
unzClose(uf);
|
|
135
|
-
return false;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
bool bRet = true;
|
|
139
|
-
unz_file_info64 fi = { 0 };
|
|
140
|
-
char szPath[PATH_MAX] = { 0 };
|
|
141
|
-
for (int i = 0; i < gi.number_entry; i++) {
|
|
142
|
-
if (UNZ_OK != unzGetCurrentFileInfo64(uf, &fi, szPath, PATH_MAX, NULL, 0, NULL, 0)) {
|
|
143
|
-
bRet = false;
|
|
144
|
-
break;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
string strPath = szPath;
|
|
148
|
-
ZUtil::StringTrim(strPath);
|
|
149
|
-
|
|
150
|
-
#ifdef _WIN32
|
|
151
|
-
iconv ic;
|
|
152
|
-
strPath = ic.U82A(strPath);
|
|
153
|
-
#endif
|
|
154
|
-
|
|
155
|
-
bool bFolder = false;
|
|
156
|
-
if (('/' == strPath.back())) {
|
|
157
|
-
bFolder = true;
|
|
158
|
-
strPath.pop_back();
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
if (NULL != callback) {
|
|
162
|
-
if (!callback(uf, bFolder, strPath)) {
|
|
163
|
-
bRet = false;
|
|
164
|
-
break;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
if (i < gi.number_entry - 1) {
|
|
169
|
-
if (UNZ_OK != unzGoToNextFile(uf)) {
|
|
170
|
-
bRet = false;
|
|
171
|
-
break;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
unzClose(uf);
|
|
177
|
-
return bRet;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
bool Zip::_ReadFileFromZip(void* hZip, const string& strPath, const string& strRootFolder)
|
|
181
|
-
{
|
|
182
|
-
string strFile = strRootFolder + "/" + strPath;
|
|
183
|
-
string strFolder = strFile;
|
|
184
|
-
ZFile::PathRemoveFileSpec(strFolder);
|
|
185
|
-
if (!ZFile::CreateFolder(strFolder.c_str())) {
|
|
186
|
-
return false;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
if (UNZ_OK != unzOpenCurrentFile(hZip)) {
|
|
190
|
-
return false;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
FILE* fp = NULL;
|
|
194
|
-
_fopen64(fp, strFile.c_str(), "wb");
|
|
195
|
-
if (NULL == fp) {
|
|
196
|
-
unzCloseCurrentFile(hZip);
|
|
197
|
-
return false;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
bool bRet = true;
|
|
201
|
-
uint32_t uBufSize = 512 * 1024;
|
|
202
|
-
char* pbuff = (char*)malloc(uBufSize);
|
|
203
|
-
if (NULL != pbuff) {
|
|
204
|
-
int32_t nReaded = unzReadCurrentFile(hZip, pbuff, uBufSize);
|
|
205
|
-
while (nReaded > 0) {
|
|
206
|
-
if (nReaded != fwrite(pbuff, 1, nReaded, fp)) {
|
|
207
|
-
bRet = false;
|
|
208
|
-
break;
|
|
209
|
-
}
|
|
210
|
-
nReaded = unzReadCurrentFile(hZip, pbuff, uBufSize);
|
|
211
|
-
}
|
|
212
|
-
free(pbuff);
|
|
213
|
-
} else {
|
|
214
|
-
bRet = false;
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
fclose(fp);
|
|
218
|
-
unzCloseCurrentFile(hZip);
|
|
219
|
-
return bRet;
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
bool Zip::_Extract(const char* zip_file, const char* output_folder)
|
|
223
|
-
{
|
|
224
|
-
return _EnumZipItems(zip_file, [&](unzFile uFile, bool bFolder, const string& strPath) {
|
|
225
|
-
if (bFolder) {
|
|
226
|
-
if (!ZFile::CreateFolderV("%s/%s", output_folder, strPath.c_str())) {
|
|
227
|
-
return false;
|
|
228
|
-
}
|
|
229
|
-
} else {
|
|
230
|
-
if (!_ReadFileFromZip(uFile, strPath, output_folder)) {
|
|
231
|
-
return false;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
return true;
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
bool Zip::Extract(const char* zip_file, const char* output_folder)
|
|
239
|
-
{
|
|
240
|
-
ZFile::RemoveFolder(output_folder);
|
|
241
|
-
if (!_Extract(zip_file, output_folder)) {
|
|
242
|
-
ZFile::RemoveFolder(output_folder);
|
|
243
|
-
return false;
|
|
244
|
-
}
|
|
245
|
-
return true;
|
|
246
|
-
}
|
|
1
|
+
#include "archive.h"
|
|
2
|
+
|
|
3
|
+
#ifdef _WIN32
|
|
4
|
+
#include <minizip/zip.h>
|
|
5
|
+
#include <minizip/unzip.h>
|
|
6
|
+
#else
|
|
7
|
+
#include <zip.h>
|
|
8
|
+
#include <unzip.h>
|
|
9
|
+
#endif
|
|
10
|
+
|
|
11
|
+
void Zip::GetModificationTime(const char* path, void* zfi)
|
|
12
|
+
{
|
|
13
|
+
zip_fileinfo* zi = (zip_fileinfo*)zfi;
|
|
14
|
+
struct stat st = { 0 };
|
|
15
|
+
memset(zi, 0, sizeof(zip_fileinfo));
|
|
16
|
+
if (0 == stat(path, &st)) {
|
|
17
|
+
#ifdef _WIN32
|
|
18
|
+
struct tm tm = { 0 };
|
|
19
|
+
localtime_s(&tm, &st.st_mtime);
|
|
20
|
+
zi->tmz_date.tm_sec = tm.tm_sec;
|
|
21
|
+
zi->tmz_date.tm_min = tm.tm_min;
|
|
22
|
+
zi->tmz_date.tm_hour = tm.tm_hour;
|
|
23
|
+
zi->tmz_date.tm_mday = tm.tm_mday;
|
|
24
|
+
zi->tmz_date.tm_mon = tm.tm_mon;
|
|
25
|
+
zi->tmz_date.tm_year = tm.tm_year + 1900;
|
|
26
|
+
#else
|
|
27
|
+
struct tm* tm = localtime(&st.st_mtime);
|
|
28
|
+
zi->tmz_date.tm_sec = tm->tm_sec;
|
|
29
|
+
zi->tmz_date.tm_min = tm->tm_min;
|
|
30
|
+
zi->tmz_date.tm_hour = tm->tm_hour;
|
|
31
|
+
zi->tmz_date.tm_mday = tm->tm_mday;
|
|
32
|
+
zi->tmz_date.tm_mon = tm->tm_mon;
|
|
33
|
+
zi->tmz_date.tm_year = tm->tm_year + 1900;
|
|
34
|
+
#endif
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
bool Zip::_WriteFileToZip(void* hZip, const string& strFile, const string& strRelativePath, int zip_level)
|
|
39
|
+
{
|
|
40
|
+
FILE* fp = NULL;
|
|
41
|
+
_fopen64(fp, strFile.c_str(), "rb");
|
|
42
|
+
if (NULL == fp) {
|
|
43
|
+
ZLog::ErrorV(">>> Zip: Failed to open file: %s\n", strFile.c_str());
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
zip_fileinfo zi = { 0 };
|
|
48
|
+
GetModificationTime(strFile.c_str(), &zi);
|
|
49
|
+
if (ZIP_OK != zipOpenNewFileInZip3_64(hZip, strRelativePath.c_str(), &zi, NULL, 0, NULL, 0, NULL, Z_DEFLATED, zip_level, 0, -MAX_WBITS, DEF_MEM_LEVEL, 0, NULL, 0, 0)) {
|
|
50
|
+
fclose(fp);
|
|
51
|
+
ZLog::ErrorV(">>> Zip: Failed to add file to zip: %s\n", strRelativePath.c_str());
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
bool bRet = true;
|
|
56
|
+
char buffer[4096];
|
|
57
|
+
size_t bytes_read = fread(buffer, 1, sizeof(buffer), fp);
|
|
58
|
+
while (bytes_read > 0) {
|
|
59
|
+
if (zipWriteInFileInZip(hZip, buffer, (uint32_t)bytes_read) < 0) {
|
|
60
|
+
bRet = false;
|
|
61
|
+
break;
|
|
62
|
+
}
|
|
63
|
+
bytes_read = fread(buffer, 1, sizeof(buffer), fp);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
zipCloseFileInZip(hZip);
|
|
67
|
+
fclose(fp);
|
|
68
|
+
return bRet;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
bool Zip::_CreateFolderToZip(void* hZip, const string& strFolder, const string& strRelativePath, int zip_level)
|
|
72
|
+
{
|
|
73
|
+
zip_fileinfo zi = { 0 };
|
|
74
|
+
GetModificationTime(strFolder.c_str(), &zi);
|
|
75
|
+
if (ZIP_OK != zipOpenNewFileInZip3_64(hZip, strRelativePath.c_str(), &zi, NULL, 0, NULL, 0, NULL, Z_DEFLATED, zip_level, 0, -MAX_WBITS, DEF_MEM_LEVEL, 0, NULL, 0, 0)) {
|
|
76
|
+
ZLog::ErrorV(">>> Zip: Failed to create folder to zip: %s\n", strRelativePath.c_str());
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
zipCloseFileInZip(hZip);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
bool Zip::Archive(const string& strFolder, const string& strZipFile, int nZipLevel)
|
|
84
|
+
{
|
|
85
|
+
if (nZipLevel < 0 || nZipLevel > 9) {
|
|
86
|
+
ZLog::ErrorV(">>> Zip: Invalid compression level: %d\n", nZipLevel);
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
zipFile zf = zipOpen64(strZipFile.c_str(), 0);
|
|
91
|
+
if (!zf) {
|
|
92
|
+
ZLog::ErrorV(">>> Zip: Failed to create zip file: %s\n", strZipFile.c_str());
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
bool bRet = true;
|
|
97
|
+
ZFile::EnumFolder(strFolder.c_str(), true, NULL, [&](bool bFolder, const string& strPath) {
|
|
98
|
+
string strRelativePath = strPath.substr(strFolder.size() + 1);
|
|
99
|
+
ZUtil::StringReplace(strRelativePath, "\\", "/");
|
|
100
|
+
|
|
101
|
+
#ifdef _WIN32
|
|
102
|
+
iconv ic;
|
|
103
|
+
strRelativePath = ic.A2U8(strRelativePath);
|
|
104
|
+
#endif
|
|
105
|
+
|
|
106
|
+
if (bFolder) {
|
|
107
|
+
strRelativePath += "/";
|
|
108
|
+
if (!_CreateFolderToZip(zf, strPath, strRelativePath, nZipLevel)) {
|
|
109
|
+
bRet = false;
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
} else {
|
|
113
|
+
if (!_WriteFileToZip(zf, strPath, strRelativePath, nZipLevel)) {
|
|
114
|
+
bRet = false;
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
return false;
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
zipClose(zf, NULL);
|
|
122
|
+
return bRet;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
bool Zip::_EnumZipItems(const char* zip_file, enum_zip_items_callback callback)
|
|
126
|
+
{
|
|
127
|
+
unzFile uf = unzOpen64(zip_file);
|
|
128
|
+
if (NULL == uf) {
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
unz_global_info64 gi;
|
|
133
|
+
if (UNZ_OK != unzGetGlobalInfo64(uf, &gi)) {
|
|
134
|
+
unzClose(uf);
|
|
135
|
+
return false;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
bool bRet = true;
|
|
139
|
+
unz_file_info64 fi = { 0 };
|
|
140
|
+
char szPath[PATH_MAX] = { 0 };
|
|
141
|
+
for (int i = 0; i < gi.number_entry; i++) {
|
|
142
|
+
if (UNZ_OK != unzGetCurrentFileInfo64(uf, &fi, szPath, PATH_MAX, NULL, 0, NULL, 0)) {
|
|
143
|
+
bRet = false;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
string strPath = szPath;
|
|
148
|
+
ZUtil::StringTrim(strPath);
|
|
149
|
+
|
|
150
|
+
#ifdef _WIN32
|
|
151
|
+
iconv ic;
|
|
152
|
+
strPath = ic.U82A(strPath);
|
|
153
|
+
#endif
|
|
154
|
+
|
|
155
|
+
bool bFolder = false;
|
|
156
|
+
if (('/' == strPath.back())) {
|
|
157
|
+
bFolder = true;
|
|
158
|
+
strPath.pop_back();
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
if (NULL != callback) {
|
|
162
|
+
if (!callback(uf, bFolder, strPath)) {
|
|
163
|
+
bRet = false;
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
if (i < gi.number_entry - 1) {
|
|
169
|
+
if (UNZ_OK != unzGoToNextFile(uf)) {
|
|
170
|
+
bRet = false;
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
unzClose(uf);
|
|
177
|
+
return bRet;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
bool Zip::_ReadFileFromZip(void* hZip, const string& strPath, const string& strRootFolder)
|
|
181
|
+
{
|
|
182
|
+
string strFile = strRootFolder + "/" + strPath;
|
|
183
|
+
string strFolder = strFile;
|
|
184
|
+
ZFile::PathRemoveFileSpec(strFolder);
|
|
185
|
+
if (!ZFile::CreateFolder(strFolder.c_str())) {
|
|
186
|
+
return false;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
if (UNZ_OK != unzOpenCurrentFile(hZip)) {
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
FILE* fp = NULL;
|
|
194
|
+
_fopen64(fp, strFile.c_str(), "wb");
|
|
195
|
+
if (NULL == fp) {
|
|
196
|
+
unzCloseCurrentFile(hZip);
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
bool bRet = true;
|
|
201
|
+
uint32_t uBufSize = 512 * 1024;
|
|
202
|
+
char* pbuff = (char*)malloc(uBufSize);
|
|
203
|
+
if (NULL != pbuff) {
|
|
204
|
+
int32_t nReaded = unzReadCurrentFile(hZip, pbuff, uBufSize);
|
|
205
|
+
while (nReaded > 0) {
|
|
206
|
+
if (nReaded != fwrite(pbuff, 1, nReaded, fp)) {
|
|
207
|
+
bRet = false;
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
210
|
+
nReaded = unzReadCurrentFile(hZip, pbuff, uBufSize);
|
|
211
|
+
}
|
|
212
|
+
free(pbuff);
|
|
213
|
+
} else {
|
|
214
|
+
bRet = false;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
fclose(fp);
|
|
218
|
+
unzCloseCurrentFile(hZip);
|
|
219
|
+
return bRet;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
bool Zip::_Extract(const char* zip_file, const char* output_folder)
|
|
223
|
+
{
|
|
224
|
+
return _EnumZipItems(zip_file, [&](unzFile uFile, bool bFolder, const string& strPath) {
|
|
225
|
+
if (bFolder) {
|
|
226
|
+
if (!ZFile::CreateFolderV("%s/%s", output_folder, strPath.c_str())) {
|
|
227
|
+
return false;
|
|
228
|
+
}
|
|
229
|
+
} else {
|
|
230
|
+
if (!_ReadFileFromZip(uFile, strPath, output_folder)) {
|
|
231
|
+
return false;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
return true;
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
bool Zip::Extract(const char* zip_file, const char* output_folder)
|
|
239
|
+
{
|
|
240
|
+
ZFile::RemoveFolder(output_folder);
|
|
241
|
+
if (!_Extract(zip_file, output_folder)) {
|
|
242
|
+
ZFile::RemoveFolder(output_folder);
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
245
|
+
return true;
|
|
246
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include "common.h"
|
|
4
|
-
|
|
5
|
-
class Zip
|
|
6
|
-
{
|
|
7
|
-
public:
|
|
8
|
-
|
|
9
|
-
static bool Archive(const string& strFolder, const string& strZipFile, int nZipLevel);
|
|
10
|
-
static bool Extract(const char* zip_file, const char* output_folder);
|
|
11
|
-
|
|
12
|
-
private:
|
|
13
|
-
typedef function<bool(void* hFile, bool bFolder, const string& strPath)> enum_zip_items_callback;
|
|
14
|
-
|
|
15
|
-
private:
|
|
16
|
-
static bool _EnumZipItems(const char* zip_file, enum_zip_items_callback callback);
|
|
17
|
-
static bool _ReadFileFromZip(void* hZip, const string& strPath, const string& strRootFolder);
|
|
18
|
-
static bool _Extract(const char* zip_file, const char* output_folder);
|
|
19
|
-
static bool _WriteFileToZip(void* hZip, const string& strFile, const string& strRootFolder, int zip_level);
|
|
20
|
-
static bool _CreateFolderToZip(void* hZip, const string& strFolder, const string& strRootFolder, int zip_level);
|
|
21
|
-
static void GetModificationTime(const char* path, void* zi);
|
|
22
|
-
};
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include "common.h"
|
|
4
|
+
|
|
5
|
+
class Zip
|
|
6
|
+
{
|
|
7
|
+
public:
|
|
8
|
+
|
|
9
|
+
static bool Archive(const string& strFolder, const string& strZipFile, int nZipLevel);
|
|
10
|
+
static bool Extract(const char* zip_file, const char* output_folder);
|
|
11
|
+
|
|
12
|
+
private:
|
|
13
|
+
typedef function<bool(void* hFile, bool bFolder, const string& strPath)> enum_zip_items_callback;
|
|
14
|
+
|
|
15
|
+
private:
|
|
16
|
+
static bool _EnumZipItems(const char* zip_file, enum_zip_items_callback callback);
|
|
17
|
+
static bool _ReadFileFromZip(void* hZip, const string& strPath, const string& strRootFolder);
|
|
18
|
+
static bool _Extract(const char* zip_file, const char* output_folder);
|
|
19
|
+
static bool _WriteFileToZip(void* hZip, const string& strFile, const string& strRootFolder, int zip_level);
|
|
20
|
+
static bool _CreateFolderToZip(void* hZip, const string& strFolder, const string& strRootFolder, int zip_level);
|
|
21
|
+
static void GetModificationTime(const char* path, void* zi);
|
|
22
|
+
};
|