diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2020-07-24 19:39:26 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2020-07-24 19:42:48 +0200 |
commit | 948a871c7348a4cfd9caa1e797d17e503c095a63 (patch) | |
tree | 4128f74f0664a4a05c677acd60e3bef7061e4284 /src/Common/libzip/zip_get_encryption_implementation.c | |
parent | 5cf7d946d2e1d68065c772c9e76ba7dad52e96f9 (diff) | |
download | VeraCrypt-948a871c7348a4cfd9caa1e797d17e503c095a63.tar.gz VeraCrypt-948a871c7348a4cfd9caa1e797d17e503c095a63.zip |
Windows: update libzip to latest version 1.7.3 (close issue #656)
Diffstat (limited to 'src/Common/libzip/zip_get_encryption_implementation.c')
-rw-r--r-- | src/Common/libzip/zip_get_encryption_implementation.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/Common/libzip/zip_get_encryption_implementation.c b/src/Common/libzip/zip_get_encryption_implementation.c index c9d52ad5..3909e6f6 100644 --- a/src/Common/libzip/zip_get_encryption_implementation.c +++ b/src/Common/libzip/zip_get_encryption_implementation.c @@ -39,10 +39,7 @@ zip_encryption_implementation _zip_get_encryption_implementation(zip_uint16_t em, int operation) { switch (em) { case ZIP_EM_TRAD_PKWARE: - if (operation == ZIP_CODEC_ENCODE) { - return NULL; - } - return zip_source_pkware; + return operation == ZIP_CODEC_DECODE ? zip_source_pkware_decode : zip_source_pkware_encode; #if defined(HAVE_CRYPTO) case ZIP_EM_AES_128: @@ -55,3 +52,11 @@ _zip_get_encryption_implementation(zip_uint16_t em, int operation) { return NULL; } } + +ZIP_EXTERN int +zip_encryption_method_supported(zip_uint16_t method, int encode) { + if (method == ZIP_EM_NONE) { + return 1; + } + return _zip_get_encryption_implementation(method, encode ? ZIP_CODEC_ENCODE : ZIP_CODEC_DECODE) != NULL; +} |