Scroll to navigation

ZIP_FILE_SET_ENCRYPTION(3) Library Functions Manual ZIP_FILE_SET_ENCRYPTION(3)

NAME

zip_file_set_encryptionset 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 () 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:

No encryption.
Winzip AES-128 encryption.
Winzip AES-192 encryption.
Winzip AES-256 encryption.
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:

[]
Unsupported compression method requested.
[]
index is not a valid file index in archive, or the argument combination is invalid.
[]
Required memory could not be allocated.
[]
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 <tk@giga.or.at>

April 2, 2020 Debian