zip_file_set_encryption - Man Page
set encryption method for file in zip
Library
libzip (-lzip)
Synopsis
#include <zip.h>
int
zip_file_set_encryption(zip_t *archive, zip_uint64_t index, zip_uint16_t method, const char *password);
Description
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.
- ZIP_EM_TRAD_PKWARE
Traditional PKWare encryption. Do not use this method, it is not secure. It is only provided for backwards compatibility.
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).
Return Values
Upon successful completion 0 is returned. Otherwise, -1 is returned and the error information in archive is set to indicate the error.
Errors
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.
See Also
libzip(3), zip_encryption_method_supported(3), zip_fopen_encrypted(3), zip_fopen_index_encrypted(3), zip_set_default_password(3), zip_stat(3)
History
zip_file_set_encryption() was added in libzip 1.2.0.
Authors
Dieter Baron <dillo@nih.at> and Thomas Klausner <wiz@gatalith.at>
Referenced By
libzip(3), zip_encryption_method_supported(3).