<!DOCTYPE html>
<html>
<!-- This is an automatically generated file.  Do not edit.
   zip_source_buffer_fragment.mdoc -- create zip data source from multiple buffers
   Copyright (C) 2004-2021 Dieter Baron and Thomas Klausner
  
   This file is part of libzip, a library to manipulate ZIP archives.
   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_SOURCE_BUFFER_FRAGMENT(3)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">ZIP_SOURCE_BUFFER_FRAGMENT(3)</td>
    <td class="head-vol">Library Functions Manual</td>
    <td class="head-rtitle">ZIP_SOURCE_BUFFER_FRAGMENT(3)</td>
  </tr>
</table>
<div class="manual-text">
<section class="Sh">
<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<code class="Nm">zip_source_buffer_fragment</code>,
  <code class="Nm">zip_source_buffer_fragment_create</code> &#x2014;
<div class="Nd">create zip data source from multiple buffer</div>
</section>
<section class="Sh">
<h1 class="Sh" id="LIBRARY"><a class="permalink" href="#LIBRARY">LIBRARY</a></h1>
libzip (-lzip)
</section>
<section class="Sh">
<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<code class="In">#include &lt;<a class="In">zip.h</a>&gt;</code>
<p class="Pp"><var class="Ft">zip_source_t *</var>
  <br/>
  <code class="Fn">zip_source_buffer_fragment</code>(<var class="Fa" style="white-space: nowrap;">zip_t
    *archive</var>,
    <var class="Fa" style="white-space: nowrap;">zip_buffer_fragment_t
    *fragments</var>, <var class="Fa" style="white-space: nowrap;">zip_uint64_t
    nfragments</var>, <var class="Fa" style="white-space: nowrap;">int
    freep</var>);</p>
<p class="Pp"><var class="Ft">zip_source_t *</var>
  <br/>
  <code class="Fn">zip_source_buffer_fragment_create</code>(<var class="Fa" style="white-space: nowrap;">zip_buffer_fragment_t
    *fragments</var>, <var class="Fa" style="white-space: nowrap;">zip_uint64_t
    nfragments</var>, <var class="Fa" style="white-space: nowrap;">int
    freep</var>, <var class="Fa" style="white-space: nowrap;">zip_error_t
    *error</var>);</p>
</section>
<section class="Sh">
<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
The functions <code class="Fn">zip_source_buffer_fragment</code>() and
  <code class="Fn">zip_source_buffer_fragment_create</code>() create a zip
  source from the data in <var class="Ar">fragments</var>.
  <var class="Ar">nfragments</var> specifies the number of fragments. If
  <var class="Ar">freep</var> is non-zero, the data will be freed when it is no
  longer needed.
<div class="Bd Pp">
<pre>
struct zip_stat {
    zip_uint8_t *data;    /* pointer to the actual data */
    zip_uint64_t length;  /* length of this fragment */
};
</pre>
</div>
<p class="Pp">The data <var class="Ar">fragments</var> point to must remain
    valid for the lifetime of the created source.
    <var class="Ar">fragments</var> itself can be discarded once the source is
    created.</p>
<p class="Pp">The source can be used to open a zip archive from.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="RETURN_VALUES"><a class="permalink" href="#RETURN_VALUES">RETURN
  VALUES</a></h1>
Upon successful completion, the created source is returned. Otherwise,
  <code class="Dv">NULL</code> is returned and the error code in
  <var class="Ar">archive</var> or <var class="Ar">error</var> is set to
  indicate the error.
</section>
<section class="Sh">
<h1 class="Sh" id="ERRORS"><a class="permalink" href="#ERRORS">ERRORS</a></h1>
<code class="Fn">zip_source_buffer</code>() and
  <code class="Fn">zip_source_buffer_create</code>() fail if:
<dl class="Bl-tag">
  <dt>[<a class="permalink" href="#ZIP_ER_INVAL"><code class="Er" id="ZIP_ER_INVAL">ZIP_ER_INVAL</code></a>]</dt>
  <dd><var class="Ar">nfragments</var> is greater than zero and
      <var class="Ar">fragments</var> is <code class="Dv">NULL</code>.</dd>
  <dt>[<a class="permalink" href="#ZIP_ER_MEMORY"><code class="Er" id="ZIP_ER_MEMORY">ZIP_ER_MEMORY</code></a>]</dt>
  <dd>Required memory could not be allocated.</dd>
</dl>
</section>
<section class="Sh">
<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<a class="Xr" href="libzip.html">libzip(3)</a>,
  <a class="Xr" href="zip_file_add.html">zip_file_add(3)</a>,
  <a class="Xr" href="zip_file_replace.html">zip_file_replace(3)</a>,
  <a class="Xr" href="zip_open_from_source.html">zip_open_from_source(3)</a>,
  <a class="Xr" href="zip_source.html">zip_source(3)</a>
</section>
<section class="Sh">
<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
<code class="Fn">zip_source_buffer_fragment</code>() and
  <code class="Fn">zip_source_buffer_fragment_create</code>() were added in
  libzip 1.4.0.
</section>
<section class="Sh">
<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
<span class="An">Dieter Baron</span>
  &lt;<a class="Mt" href="mailto:dillo@nih.at">dillo@nih.at</a>&gt; and
  <span class="An">Thomas Klausner</span>
  &lt;<a class="Mt" href="mailto:tk@giga.or.at">tk@giga.or.at</a>&gt;
</section>
</div>
<table class="foot">
  <tr>
    <td class="foot-date">December 18, 2017</td>
    <td class="foot-os">NiH</td>
  </tr>
</table>
</body>
</html>
