zip_file_set_encryption
—
set encryption method for file in zip
libzip (-lzip)
#include
<zip.h>
int
zip_file_set_encryption
(
zip_t
*archive,
zip_uint64_t
index,
zip_uint16_t
method,
const
char *password);
The
zip_file_set_encryption
() function sets
the encryption method for the file at position
index in the zip archive to
method using the password
password. The
method is the same as returned by
zip_stat(3). For the
method argument, currently only the following
values are supported:
-
-
ZIP_EM_NONE
- No encryption.
-
-
ZIP_EM_AES_128
- Winzip AES-128 encryption.
-
-
ZIP_EM_AES_192
- Winzip AES-192 encryption.
-
-
ZIP_EM_AES_256
- Winzip AES-256 encryption.
If
password is
NULL
, the default password provided by
zip_set_default_password(3)
is used.
The current encryption method for a file in a zip archive can be determined
using
zip_stat(3).
Upon successful completion 0 is returned. Otherwise, -1 is returned and the
error information in
archive is set to
indicate the error.
zip_file_set_encryption
() fails if:
-
-
- [
ZIP_ER_ENCRNOTSUPP
]
- Unsupported compression method requested.
-
-
- [
ZIP_ER_INVAL
]
- index is not a valid file index in
archive, or the argument combination is
invalid.
-
-
- [
ZIP_ER_MEMORY
]
- Required memory could not be allocated.
-
-
- [
ZIP_ER_RDONLY
]
- Read-only zip file, no changes allowed.
libzip(3),
zip_set_default_password(3),
zip_stat(3)
zip_file_set_encryption
() was added in libzip
1.2.0.
Dieter Baron
<
dillo@nih.at>
and
Thomas Klausner
<
tk@giga.or.at>