GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
ZIP_FILE_EXTRA_FIELD_SET(3) FreeBSD Library Functions Manual ZIP_FILE_EXTRA_FIELD_SET(3)

zip_file_extra_field_set
set extra field for file in zip

libzip (-lzip)

#include <zip.h>

int
zip_file_extra_field_set(zip_t *archive, zip_uint64_t index, zip_uint16_t extra_field_id, zip_uint16_t extra_field_index, const zip_uint8_t *extra_field_data, zip_uint16_t len, zip_flags_t flags);

The zip_file_extra_field_set() function sets the extra field with ID (two-byte signature) extra_field_id and index extra_field_index for the file at position index in the zip archive. The extra field's data will be set to extra_field_data and length len. If a new entry shall be appended, set extra_field_index to ZIP_EXTRA_FIELD_NEW.

At least one of the following flags must be set:

Set extra field in the archive's central directory.
Set extra field in the local file headers.

Please note that the extra field IDs 0x0001 (ZIP64 extension), 0x6375 (Infozip UTF-8 comment), and 0x7075 (Infozip UTF-8 file name) can not be set using zip_file_extra_field_set() since they are set by libzip(3) automatically when needed.

Upon successful completion 0 is returned. Otherwise, -1 is returned and the error code in archive is set to indicate the error.

zip_file_extra_field_set() fails if:
[]
The extra field size is too large (ID and length need 4 bytes; the maximum length of all extra fields for one file combined is 65536 bytes). This error also occurs if extra_field_index is too large.
[]
Required memory could not be allocated.
[]
index is not a valid file index in archive.

libzip(3), zip_file_extra_field_delete(3), zip_file_extra_field_get(3), zip_file_extra_fields_count(3)

zip_file_extra_field_set() was added in libzip 0.11.

Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>
December 18, 2017 FreeBSD 13.1-RELEASE

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.