<!DOCTYPE html>
<html>
<!-- This is an automatically generated file.  Do not edit.
   zip_file_set_encryption.mdoc -- set encryption method for file
   Copyright (C) 2016-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_SET_ENCRYPTION(3)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">ZIP_FILE_SET_ENCRYPTION(3)</td>
    <td class="head-vol">Library Functions Manual</td>
    <td class="head-rtitle">ZIP_FILE_SET_ENCRYPTION(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_set_encryption</code> &#x2014;
<div class="Nd" title="Nd">set encryption method 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">int</var>
<br/>
<code class="Fn" title="Fn">zip_file_set_encryption</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_uint16_t
  method</var>, <var class="Fa" title="Fa" style="white-space: nowrap;">const
  char *password</var>);
<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
The <code class="Fn" title="Fn">zip_file_set_encryption</code>() function sets
  the encryption method for the file at position
  <var class="Ar" title="Ar">index</var> in the zip archive to
  <var class="Ar" title="Ar">method</var> using the password
  <var class="Ar" title="Ar">password</var>. The
  <var class="Ar" title="Ar">method</var> is the same as returned by
  <a class="Xr" title="Xr" href="zip_stat.html">zip_stat(3)</a>. For the
  <var class="Ar" title="Ar">method</var> argument, currently only the following
  values are supported:
<dl class="Bl-tag">
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt><a class="permalink" href="#ZIP_EM_NONE"><code class="Dv" title="Dv" id="ZIP_EM_NONE">ZIP_EM_NONE</code></a></dt>
  <dd>No encryption.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt><a class="permalink" href="#ZIP_EM_AES_128"><code class="Dv" title="Dv" id="ZIP_EM_AES_128">ZIP_EM_AES_128</code></a></dt>
  <dd>Winzip AES-128 encryption.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt><a class="permalink" href="#ZIP_EM_AES_192"><code class="Dv" title="Dv" id="ZIP_EM_AES_192">ZIP_EM_AES_192</code></a></dt>
  <dd>Winzip AES-192 encryption.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt><a class="permalink" href="#ZIP_EM_AES_256"><code class="Dv" title="Dv" id="ZIP_EM_AES_256">ZIP_EM_AES_256</code></a></dt>
  <dd>Winzip AES-256 encryption.</dd>
</dl>
<div class="Pp"></div>
If <var class="Ar" title="Ar">password</var> is
  <code class="Dv" title="Dv">NULL</code>, the default password provided by
  <a class="Xr" title="Xr" href="zip_set_default_password.html">zip_set_default_password(3)</a>
  is used.
<div class="Pp"></div>
The current encryption method for a file in a zip archive can be determined
  using <a class="Xr" title="Xr" href="zip_stat.html">zip_stat(3)</a>.
<h1 class="Sh" title="Sh" id="RETURN_VALUES"><a class="permalink" href="#RETURN_VALUES">RETURN
  VALUES</a></h1>
Upon successful completion 0 is returned. Otherwise, -1 is returned and the
  error information 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_set_encryption</code>() fails if:
<dl class="Bl-tag">
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt>[<a class="permalink" href="#ZIP_ER_ENCRNOTSUPP"><code class="Er" title="Er" id="ZIP_ER_ENCRNOTSUPP">ZIP_ER_ENCRNOTSUPP</code></a>]</dt>
  <dd>Unsupported compression method requested.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt>[<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>, or the argument combination is
      invalid.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt>[<a class="permalink" href="#ZIP_ER_MEMORY"><code class="Er" title="Er" id="ZIP_ER_MEMORY">ZIP_ER_MEMORY</code></a>]</dt>
  <dd>Required memory could not be allocated.</dd>
  <dt>&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt>[<a class="permalink" href="#ZIP_ER_RDONLY"><code class="Er" title="Er" id="ZIP_ER_RDONLY">ZIP_ER_RDONLY</code></a>]</dt>
  <dd>Read-only zip file, no changes allowed.</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_set_default_password.html">zip_set_default_password(3)</a>,
  <a class="Xr" title="Xr" href="zip_stat.html">zip_stat(3)</a>
<h1 class="Sh" title="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
<code class="Fn" title="Fn">zip_file_set_encryption</code>() was added in libzip
  1.2.0.
<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.27</td>
  </tr>
</table>
</body>
</html>
