Commit Graph

114 Commits

Author SHA1 Message Date
Cœur
4b770114a0 Support any character encoding
Some checks failed
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_BZIP=OFF, ubuntu_clang_no_bzip2, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Bzip2, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_COMPRESS_ONLY=ON, ubuntu_clang_compress_only, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang Compress Only, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_DECOMPRESS_ONLY=ON, ubuntu_clang_decompress_only, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang Decompress Only, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_FORCE_FETCH_LIBS=ON -G Ninja, windows_gcc, gcc, g++, Windows GCC Code Coverage, windows-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_LIBCOMP=ON, macos_xcode_libcompression, macOS Xcode LibCompression, macOS-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_LZMA=OFF, ubuntu_clang_no_lzma, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No LZMA, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_OPENSSL=ON, macos_xcode_openssl, macOS Xcode OpenSSL, macos-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_OPENSSL=ON, ubuntu_clang_openssl, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang OpenSSL, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_PKCRYPT=OFF -D MZ_WZAES=OFF, ubuntu_clang_no_encryption, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Encryption, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_PKCRYPT=OFF, ubuntu_clang_no_pkcrypt, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Pkcrypt, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_WZAES=OFF, ubuntu_clang_no_winzip_aes, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Winzip AES, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_ZLIB=OFF, ubuntu_clang_no_zlib, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Zlib, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON -D MZ_ZSTD=OFF, ubuntu_clang_no_zstd, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang No Zstd, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON, macos_xcode, macOS Xcode Code Coverage, macOS-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON, ubuntu_clang, clang-14, clang++-14, llvm-cov-14 gcov, Ubuntu Clang, ubuntu-latest, clang-14 llvm-14) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_CODE_COVERAGE=ON, ubuntu_gcc, gcc, g++, Ubuntu GCC, ubuntu-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_FORCE_FETCH_LIBS=ON, cl, true, windows, Windows MSVC, windows-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_SANITIZER=Address, ubuntu_gcc_asan, gcc, g++, Ubuntu GCC ASAN, ubuntu-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_SANITIZER=Memory, ubuntu_gcc_msan, gcc, g++, Ubuntu GCC MSAN, ubuntu-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (-D MZ_SANITIZER=Undefined, ubuntu_gcc_undefined, gcc, g++, Ubuntu GCC UBSAN, ubuntu-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (../build, ../minizip-ng, gcc, g++, Ubuntu GCC OSB, ubuntu-latest) (push) Has been cancelled
Build / ${{ matrix.name }} (clang, clang++, true, linux, Ubuntu 22 Clang, ubuntu-22.04) (push) Has been cancelled
Build / ${{ matrix.name }} (clang-11, clang++-11, Ubuntu 22 Clang 11, ubuntu-22.04, llvm-11 clang-11, 11) (push) Has been cancelled
Build / ${{ matrix.name }} (gcc, g++, Ubuntu 22 GCC, ubuntu-22.04) (push) Has been cancelled
Build / ${{ matrix.name }} (true, macos, macOS Xcode, macos-latest) (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-05-01 20:07:38 -04:00
Cœur
f8941493a0 Adding MZ_PRESERVE_NATIVE_STRUCTURE to control the behavior. 2025-04-14 13:41:49 -07:00
Cœur
c7b6cb09e9 fix: unzipping with backslashes in the name on UNIX 2025-04-14 13:41:49 -07:00
Nathan Moinvaziri
2c51fa719e Clang-format style changes. 2024-11-01 16:37:57 -07:00
Thomas Gamper
0fa804504c Adjust mz_os_utf8_string_create to return char*, and mz_os_utf8_string_delete to take a char** 2023-06-08 11:25:14 -07:00
Thomas Gamper
effc920e60 mz_os_posix.c - fix warning caused by missing cast of return value of strdup 2023-06-08 11:25:14 -07:00
Nathan Moinvaziri
521eeae6a9 Fixed unused variable warnings on Ubuntu. 2023-04-18 11:31:41 -07:00
Nathan Moinvaziri
5dd5fe0906 Add missing string.h include for strdup. 2023-03-31 18:21:47 -07:00
lawadr
94e474a03d Add test for CLOCK_MONOTONIC support
Instead of always using CLOCK_MONOTONIC, use POSIX feature testing to
determine support at compile-time, or if necessary at run-time using
sysconf. If not supported, falls back to CLOCK_REALTIME.
2023-03-30 11:42:16 -07:00
Nathan Moinvaziri
c9fc27ccee Use calloc instead of malloc + memset and use strdup where possible. 2023-02-24 14:35:31 -08:00
Nathan Moinvaziri
261041dabc Remove useless MZ_CUSTOM_ALLOC and MZ_CUSTOM_FREE.
It would have required an include to make it useful.
2023-02-24 14:23:04 -08:00
Nathan Moinvaziri
f07faecdde Remove all comparisons to NULL. 2023-02-19 16:04:13 -08:00
Nathan Moinvaziri
03e4d2213d Remove copyright years. 2023-02-16 13:14:21 -08:00
Sam James
03613f46f8 Switch getrandom() and arc4random_buf() usage order
We need to match the order of inclusions at the top of the file
otherwise we might end up trying to use arc4random_buf() when
available (because HAVE_ARC4RANODM_BUF is set) even though
we hit HAVE_GETRANDOM first above and only included
<sys/random.h> because of it.

Besides, if getrandom() is available, we should really prefer
it anyway.

Fixes an implicit function declaration:
```
minizip-ng-3.0.6/mz_os_posix.c:124:5: error: implicit declaration of function 'arc4random_buf' [-Werror=implicit-function-declaration]
```

Signed-off-by: Sam James <sam@gentoo.org>
2022-10-08 14:56:14 -07:00
Rosen Penev
387ade34c6 build with libbsd-overlay
Simplifies the code. Upstream also recommends it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-10-08 14:52:40 -07:00
Peter Harris
c3e0ce31a2 Revert "Fixed improper null termination in mz_os_get_file_date. #601"
This reverts commit fe36527157, which
changed the POSIX mz_os_get_file_date to always remove the last
character from the filename before calling stat() (regardless of whether
the filename ended in a slash).

NUL termination was correct before that change, because "len+1" always
includes the NUL byte at the end of the input string (unless you somehow
have a string that consumes the entire address space and len+1
overflows, but then where would the rest of the program data reside?).
2022-05-10 16:13:37 -07:00
Nathan Moinvaziri
fe36527157 Fixed improper null termination in mz_os_get_file_date. #601 2022-03-05 14:24:57 -08:00
Nathan Moinvaziri
db95894646 Updated name of project to minizip-ng. 2021-01-23 16:19:05 -08:00
Nathan Moinvaziri
49fa09f0b6 Remove brg dependency. WinZip AES encryption will now require OpenSSL on Linux. PKWARE traditional encryption will still be supported without it. On macOS and Windows, system crypto libraries will be used.
Cleaned up CMake, renamed a few parameters.
2021-01-10 11:22:18 -08:00
Ørjan
72459e9abc mz_os: add support for midipix 2020-11-25 14:35:14 -08:00
Nathan Moinvaziri
70811ac6f5 Remove version number from headers. 2020-06-19 21:21:12 -07:00
Nathan Moinvaziri
dc6962b5fa Use same brace style as zlib. 2020-06-14 22:00:02 -07:00
Nathan Moinvaziri
55c106eafc Move warning about limited encoding support to cmake. #481 2020-06-08 12:35:47 -07:00
Viktor Szakats
024d2ec967
mz_os_utf8_string_create() fix warning with a cast
```
mz_os_posix.c:99:13: warning: passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to
      integer types with different sign [-Wpointer-sign]
    strncpy(string_copy, string, string_length);
            ^~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/secure/_string.h:128:28: note: expanded from macro 'strncpy'
                __builtin___strncpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
                                         ^~~~
```
2020-05-26 08:39:51 +00:00
Nathan Moinvaziri
2aa369c468 Version 2.9.3. 2020-05-21 07:31:09 -07:00
Nathan Moinvaziri
e450c03de7 Fixed compilation when iconv is not supported on platform. #463 2020-04-07 19:14:09 -07:00
Nathan Moinvaziri
b39f7a0e89 Version 2.9.2. 2020-02-12 08:38:09 -08:00
Nathan Moinvaziri
370ab036f3 Version 2.9.1. 2019-11-15 13:24:17 -08:00
Nathan Moinvaziri
10ac291d91 Version 2.9.0. 2019-09-18 16:55:43 -07:00
Cameron Cawley
28f78ffcc2 Support building on RISC OS 2019-08-07 15:13:42 +01:00
Nathan Moinvaziri
32fd805440 Version 2.8.9. 2019-07-04 10:32:02 -07:00
Nathan Moinvaziri
fbfd4e82f7 Version 2.8.8. 2019-05-22 17:50:39 -07:00
Nathan Moinvaziri
64c4c7f868 Version 2.8.7. 2019-05-09 18:46:18 -07:00
Nathan Moinvaziri
426543d2c4 Set the S_ISLNK attribute when storing a symbolic link. 2019-05-07 09:46:25 -07:00
Nathan Moinvaziri
a5a1d5d272 Store symbolic links in UNIX1 extra field instead of file attributes.
Correct reading of UNIX1 extra field timestamps.
Added option to store links to minizip cmd.
2019-05-05 20:13:58 -07:00
Nathan Moinvaziri
02eb8cda22 Fixed casting warning. 2019-05-05 09:28:49 -07:00
Nathan Moinvaziri
5f8e2be461 Fixed implicit conversion loses integer precision warning. 2019-05-05 08:25:51 -07:00
Nathan Moinvaziri
2397b51366 Fixed compiler warning on linux. 2019-05-02 21:57:46 -07:00
Nathan Moinvaziri
3249eac087 Added support for symbolic links. ZipArchive/ZipArchive#424. 2019-05-02 21:07:39 -07:00
Nathan Moinvaziri
f191087fdf Fixed gcc 9 warnings. #385 2019-05-01 11:37:21 -07:00
Nathan Moinvaziri
8193682eac Use memcpy instead of strncpy to avoid gcc 9 warning. #385 2019-05-01 09:12:48 -07:00
Nathan Moinvaziri
fce162e6b1 Fixed xcode warning with iconv. #386 2019-05-01 09:10:29 -07:00
Nathan Moinvaziri
4fe0687243 Version 2.8.6. 2019-04-08 13:26:32 -07:00
Nathan Moinvaziri
488f20ff1b Version 2.8.5. 2019-03-17 09:38:10 -07:00
Nathan Moinvaziri
9805ab4117 Version 2.8.4. 2019-02-14 17:16:01 -08:00
Nathan Moinvaziri
2e2f995eda Version 2.8.3. 2019-01-26 16:49:48 -08:00
Nathan Moinvaziri
2ca7f3950c Version 2.8.2. 2019-01-08 16:07:10 -08:00
Nathan Moinvaziri
1ff40343b5 Version 2.8.1. 2018-12-01 09:59:19 -08:00
Nathan Moinvaziri
5cb88b8f09 Version 2.8.0. 2018-11-24 17:59:11 -08:00
Nathan Moinvaziri
025212f6dc Fixed directories returning size of 4096 on linux. 2018-11-24 17:08:17 -08:00