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).

April 2, 2020