<!DOCTYPE html>
<html>
<!-- This is an automatically generated file.  Do not edit.
   zip_file_get_comment.mdoc -- get comment for file in zip
   Copyright (C) 2006-2017 Dieter Baron and Thomas Klausner
  
   This file is part of libzip, a library to manipulate ZIP files.
   The authors can be contacted at <libzip@nih.at>
  
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions
   are met:
   1. Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
   2. Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
   3. The names of the authors may not be used to endorse or promote
      products derived from this software without specific prior
      written permission.
  
   THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS
   OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
   DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
   GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
   IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
   OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
   IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   -->
<head>
  <meta charset="utf-8"/>
  <link rel="stylesheet" href="../nih-man.css" type="text/css" media="all"/>
  <title>ZIP_FILE_GET_COMMENT(3)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">ZIP_FILE_GET_COMMENT(3)</td>
    <td class="head-vol">Library Functions Manual</td>
    <td class="head-rtitle">ZIP_FILE_GET_COMMENT(3)</td>
  </tr>
</table>
<div class="manual-text">
<h1 class="Sh" title="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<code class="Nm" title="Nm">zip_file_get_comment</code> &#x2014;
<div class="Nd" title="Nd">get comment for file in zip</div>
<h1 class="Sh" title="Sh" id="LIBRARY"><a class="permalink" href="#LIBRARY">LIBRARY</a></h1>
libzip (-lzip)
<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<code class="In" title="In">#include
  &lt;<a class="In" title="In">zip.h</a>&gt;</code>
<div class="Pp"></div>
<var class="Ft" title="Ft">const char *</var>
<br/>
<code class="Fn" title="Fn">zip_file_get_comment</code>(<var class="Fa" title="Fa" style="white-space: nowrap;">zip_t
  *archive</var>,
  <var class="Fa" title="Fa" style="white-space: nowrap;">zip_uint64_t
  index</var>,
  <var class="Fa" title="Fa" style="white-space: nowrap;">zip_uint32_t
  *lenp</var>,
  <var class="Fa" title="Fa" style="white-space: nowrap;">zip_flags_t
  flags</var>);
<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
The <code class="Fn" title="Fn">zip_file_get_comment</code>() function returns
  the comment for the file at position <var class="Ar" title="Ar">index</var> in
  the zip archive. The name is in UTF-8 encoding unless
  <code class="Dv" title="Dv">ZIP_FL_ENC_RAW</code> was specified (see below).
  This pointer should not be modified or
  <a class="Xr" title="Xr" href="free.html">free(3)</a>'d, and becomes invalid
  when <var class="Ar" title="Ar">archive</var> is closed. If
  <var class="Ar" title="Ar">lenp</var> is not
  <code class="Dv" title="Dv">NULL</code>, the integer to which it points will
  be set to the length of the comment. If <var class="Ar" title="Ar">flags</var>
  is set to <code class="Dv" title="Dv">ZIP_FL_UNCHANGED</code>, the original
  unchanged comment is returned.
<div class="Pp"></div>
Additionally, the following <var class="Ar" title="Ar">flags</var> are
  supported:
<div class="Bl-tag" style="margin-left: 6.00ex;">
<dl class="Bl-tag" style="margin-left: 25.80ex;">
  <dt style="margin-left: -25.80ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -25.80ex;"><a class="permalink" href="#ZIP_FL_ENC_RAW"><code class="Dv" title="Dv" id="ZIP_FL_ENC_RAW">ZIP_FL_ENC_RAW</code></a></dt>
  <dd>Return the unmodified comment as it is in the ZIP archive.</dd>
  <dt style="margin-left: -25.80ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -25.80ex;"><a class="permalink" href="#ZIP_FL_ENC_GUESS"><code class="Dv" title="Dv" id="ZIP_FL_ENC_GUESS">ZIP_FL_ENC_GUESS</code></a></dt>
  <dd>(Default.) Guess the encoding of the comment in the ZIP archive and
      convert it to UTF-8, if necessary.</dd>
  <dt style="margin-left: -25.80ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -25.80ex;"><a class="permalink" href="#ZIP_FL_ENC_STRICT"><code class="Dv" title="Dv" id="ZIP_FL_ENC_STRICT">ZIP_FL_ENC_STRICT</code></a></dt>
  <dd>Follow the ZIP specification for file names and extend it to file
      comments, expecting them to be encoded in CP-437 in the ZIP archive
      (except if it is a UTF-8 comment from the special extra field). Convert it
      to UTF-8.</dd>
</dl>
</div>
<i class="Em" title="Em">Note</i>: ASCII is a subset of both CP-437 and UTF-8.
<h1 class="Sh" title="Sh" id="RETURN_VALUES"><a class="permalink" href="#RETURN_VALUES">RETURN
  VALUES</a></h1>
Upon successful completion, a pointer to the comment is returned, or
  <code class="Dv" title="Dv">NULL</code> if there is no comment. In case of an
  error, <code class="Dv" title="Dv">NULL</code> is returned and the error code
  in <var class="Ar" title="Ar">archive</var> is set to indicate the error.
<h1 class="Sh" title="Sh" id="ERRORS"><a class="permalink" href="#ERRORS">ERRORS</a></h1>
<code class="Fn" title="Fn">zip_file_get_comment</code>() fails if:
<dl class="Bl-tag" style="margin-left: 23.40ex;">
  <dt style="margin-left: -23.40ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -23.40ex;">[<a class="permalink" href="#ZIP_ER_INVAL"><code class="Er" title="Er" id="ZIP_ER_INVAL">ZIP_ER_INVAL</code></a>]</dt>
  <dd><var class="Ar" title="Ar">index</var> is not a valid file index in
      <var class="Ar" title="Ar">archive</var>.</dd>
</dl>
<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<a class="Xr" title="Xr" href="libzip.html">libzip(3)</a>,
  <a class="Xr" title="Xr" href="zip_file_set_comment.html">zip_file_set_comment(3)</a>,
  <a class="Xr" title="Xr" href="zip_get_archive_comment.html">zip_get_archive_comment(3)</a>
<h1 class="Sh" title="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
<code class="Fn" title="Fn">zip_file_get_comment</code>() was added in libzip
  0.11.
<h1 class="Sh" title="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
<span class="An" title="An">Dieter Baron</span>
  &lt;<a class="Mt" title="Mt" href="mailto:dillo@nih.at">dillo@nih.at</a>&gt;
  and <span class="An" title="An">Thomas Klausner</span>
  &lt;<a class="Mt" title="Mt" href="mailto:tk@giga.or.at">tk@giga.or.at</a>&gt;</div>
<table class="foot">
  <tr>
    <td class="foot-date">December 18, 2017</td>
    <td class="foot-os">NetBSD 8.99.16</td>
  </tr>
</table>
</body>
</html>
