ZIP_FILE_EXTRA_FIELD_GET
Section: C Library Functions (3)
Index
Return to Main Contents
BSD mandoc
NAME
zip_file_extra_field_get
zip_file_extra_field_get_by_id
- get extra field for file in zip
LIBRARY
libzip -lzip)
SYNOPSIS
In zip.h
Ft const zip_uint8_t *
Fn zip_file_extra_field_get zip_t *archive zip_uint64_t index zip_uint16_t extra_field_index zip_uint16_t *idp zip_uint16_t *lenp zip_flags_t flags
Ft const zip_uint8_t *
Fn zip_file_extra_field_get_by_id zip_t *archive zip_uint64_t index zip_uint16_t extra_field_id zip_uint16_t extra_field_index zip_uint16_t *lenp zip_flags_t flags
DESCRIPTION
The
Fn zip_file_extra_field_get
function returns the extra field with index
extra_field_index
for the file at position
index
in the zip archive.
This pointer should not be modified or
free(3)Apd,
and becomes invalid when
archive
is closed.
If
idp
is not
NULL
the integer to which it points will be set to the ID (tw-byte
signature) of the selected extra field.
If
lenp
is not
NULL
the integer to which it points will be set to the length of the
extra field.
Generally speaking,
lenp
and
idp
should be passed since only the extra field data is returned (i.e.,
neither the ID nor the length, if the
idp
and
lenp
arguments are not provided).
The following
flags
are supported:
- ZIP_FL_CENTRAL
-
Return extra fields from the archive's central directory.
- ZIP_FL_LOCAL
-
Return extra fields from the local file headers.
- ZIP_FL_UNCHANGED
-
Return the original unchanged extra fields, ignoring any changes made.
The
Fn zip_file_extra_field_get_by_id
function returns the extra field with ID (tw-byte signature)
extra_field_id
and index
extra_field_index
(in other words, the
extra_field_index 'th
extra field with ID
extra_field_id
The other arguments are the same as for
Fn zip_file_extra_field_get .
RETURN VALUES
Upon successful completion, a pointer to an extra field is returned,
or
NULL
if there is no extra field with that
extra_field_index
for the file with index
index
In case of an error,
NULL
is returned and the error code in
archive
is set to indicate the error.
ERRORS
Fn zip_file_extra_field_get
and
Fn zip_file_extra_field_get_by_id
fail if:
- Bq Er ZIP_ER_NOENT
-
index
is not a valid file index in
archive
or
extra_field_index
is not a valid extra file index (for ID
extra_field_id )
SEE ALSO
libzip(3),
zip_file_extra_field_delete3,
zip_file_extra_field_set3,
zip_file_extra_fields_count3
HISTORY
Fn zip_file_extra_field_get
and
Fn zip_file_extra_field_get_by_id
were added in libzip 0.11.
AUTHORS
An -nosplit
An Dieter Baron Aq Mt
dillo@nih.at
and
An Thomas Klausner Aq Mt
wiz@gatalith.at
CAVEATS
Please note that the extra field IDs 0x0001 (ZIP64 extension),
0x6375 (Infozip UT-8 comment), and
0x7075 (Infozip UT-8 file name) can not be read using
Fn zip_file_extra_field_get
since they are used by
libzip(3)
internally.
Index
- NAME
-
- LIBRARY
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUES
-
- ERRORS
-
- SEE ALSO
-
- HISTORY
-
- AUTHORS
-
- CAVEATS
-