blob: 5480e873bbbfd3d90896a725361f549d8b259e38 [file] [log] [blame]
.TH "ZIP_NAME_LOCATE" "3" "December 18, 2017" "NiH" "Library Functions Manual"
.nh
.if n .ad l
.SH "NAME"
\fBzip_name_locate\fR
\- get index of file by name
.SH "LIBRARY"
libzip (-lzip)
.SH "SYNOPSIS"
\fB#include <zip.h>\fR
.sp
\fIzip_int64_t\fR
.br
.PD 0
.HP 4n
\fBzip_name_locate\fR(\fIzip_t\ *archive\fR, \fIconst\ char\ *fname\fR, \fIzip_flags_t\ flags\fR);
.PD
.SH "DESCRIPTION"
The
\fBzip_name_locate\fR()
function returns the index of the file named
\fIfname\fR
in
\fIarchive\fR.
If
\fIarchive\fR
does not contain a file with that name, \-1 is returned.
The
\fIflags\fR
are specified by
\fIor\fR'ing
the following values, or 0 for none of them.
.RS 6n
.TP 15n
\fRZIP_FL_NOCASE\fR
Ignore case distinctions.
(Will only work well if the file names are ASCII.)
With this flag,
\fBzip_name_locate\fR()
will be slow for archives with many files.
.TP 15n
\fRZIP_FL_NODIR\fR
Ignore directory part of file name in archive.
With this flag,
\fBzip_name_locate\fR()
will be slow for archives with many files.
.TP 15n
\fRZIP_FL_ENC_RAW\fR
.br
Compare against the unmodified names as it is in the ZIP archive.
.TP 15n
\fRZIP_FL_ENC_GUESS\fR
(Default.)
Guess the encoding of the name in the ZIP archive and convert it
to UTF-8, if necessary, before comparing.
.TP 15n
\fRZIP_FL_ENC_STRICT\fR
Follow the ZIP specification and expect CP-437 encoded names in
the ZIP archive (except if they are explicitly marked as UTF-8).
Convert it to UTF-8 before comparing.
.RE
\fINote\fR:
ASCII is a subset of both CP-437 and UTF-8.
.SH "RETURN VALUES"
\fBzip_name_locate\fR()
returns the index of the file named
\fIfname\fR
or \-1, if
\fIarchive\fR
does not contain an entry of that name.
.SH "ERRORS"
\fBzip_name_locate\fR()
fails if:
.TP 19n
[\fRZIP_ER_INVAL\fR]
One of the arguments is invalid.
.TP 19n
[\fRZIP_ER_MEMORY\fR]
Required memory could not be allocated.
.TP 19n
[\fRZIP_ER_NOENT\fR]
No entry of the name
\fIfname\fR
is found in the archive.
.SH "SEE ALSO"
libzip(3),
zip_get_name(3)
.SH "HISTORY"
\fBzip_name_locate\fR()
was added in libzip 0.6.
In libzip 0.11 the return type was changed from
\fIint\fR
to
\fIzip_int64_t\fR.
In libzip 0.11 the type of
\fIflags\fR
was changed from
\fIint\fR
to
\fIzip_flags_t\fR.
.SH "AUTHORS"
Dieter Baron <\fIdillo@nih.at\fR>
and
Thomas Klausner <\fItk@giga.or.at\fR>