Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rpm: rpmarchive.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">rpm
   &#160;<span id="projectnumber">4.14.3-rc1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_97aefd0d527b934f1d99a682da8fe6a9.html">lib</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">rpmarchive.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>File archive (aka payload) API.  
<a href="#details">More...</a></p>

<p><a href="rpmarchive_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ab3e3776250e2f9d9a7cd6689160bc83f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#ab3e3776250e2f9d9a7cd6689160bc83f">RPMERR_CHECK_ERRNO</a>&#160;&#160;&#160;-32768</td></tr>
<tr class="separator:ab3e3776250e2f9d9a7cd6689160bc83f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a4def7ad89bac79be02173fdf379be3ab"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3ab">rpmfilesErrorCodes</a> { <br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba605028e95610e7cddb1e0d2e214df854">RPMERR_ITER_END</a> = -1, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abae99e57b6667138d30bd6e5efdd1101aa">RPMERR_BAD_MAGIC</a> = -2, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba978a8154bb762223c5202d4b9598dbb0">RPMERR_BAD_HEADER</a> = -3, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba820e3413a927e835494668842092a1c3">RPMERR_HDR_SIZE</a> = -4, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3ababd636aa903768ace70792e1f890a04c1">RPMERR_UNKNOWN_FILETYPE</a> = -5, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba5a2a34b9a9d3b73c85f18850e73daaa8">RPMERR_MISSING_FILE</a> = -6, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba00dc020087170b1d4266372135dee1cd">RPMERR_DIGEST_MISMATCH</a> = -7, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba0b584166f9f5d4e71b755af63a21d2f8">RPMERR_INTERNAL</a> = -8, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba761d83b10c8f42f0ae1f229cb19129f6">RPMERR_UNMAPPED_FILE</a> = -9, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba6de7c74905c6a9b1e1201c1dba5f037c">RPMERR_ENOENT</a> = -10, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abac613143ff721265c11864e6f0b5c78e7">RPMERR_ENOTEMPTY</a> = -11, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba773a6cbda4a80eee454022353ef49208">RPMERR_FILE_SIZE</a> = -12, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba04a88a5a135c07ea9095770082685d36">RPMERR_ITER_SKIP</a> = -13, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abaf72bcc00177d91a9c2c47e7221afbd28">RPMERR_EXIST_AS_DIR</a> = -14, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abaec67513f300d6e4a5e0af90ab6ebc9d5">RPMERR_OPEN_FAILED</a> = -32768, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abad152aef1a302ea75e58509be4c5495c2">RPMERR_CHMOD_FAILED</a> = -32769, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba9e6a03d499caa7533fbe1561ad8ee942">RPMERR_CHOWN_FAILED</a> = -32770, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba67eae88c1cf7887376f7275273b8510a">RPMERR_WRITE_FAILED</a> = -32771, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba63b75052aba71f4038bd7959ac2e4224">RPMERR_UTIME_FAILED</a> = -32772, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba2051953ae57007ff46afe48ec835b7d6">RPMERR_UNLINK_FAILED</a> = -32773, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abaae55c77a53d0943e0bd64404e7ea0a90">RPMERR_RENAME_FAILED</a> = -32774, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba7b3c51588fad4c9267e3e0dfeda6335c">RPMERR_SYMLINK_FAILED</a> = -32775, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba42a0afdb6f63fdb34c1bfc83e39252ef">RPMERR_STAT_FAILED</a> = -32776, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba4c93dc42ea4a7de02169898e7cb971b7">RPMERR_LSTAT_FAILED</a> = -32777, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba8ef04c0c28dde5c0c54e7ab3d00c1d89">RPMERR_MKDIR_FAILED</a> = -32778, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba5150db142130f328ebd57f568cc85145">RPMERR_RMDIR_FAILED</a> = -32779, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abaa3434d6f9ce466ea5a7f0db6ee5656f9">RPMERR_MKNOD_FAILED</a> = -32780, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba63806c1be855d9c8be07763820e162d6">RPMERR_MKFIFO_FAILED</a> = -32781, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba21a722e4e20cc88db42759b6f4562059">RPMERR_LINK_FAILED</a> = -32782, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba46eadce5410241e3f395ef1f36626242">RPMERR_READLINK_FAILED</a> = -32783, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba015a48f6d1b5ba597b1b4536d4947aaa">RPMERR_READ_FAILED</a> = -32784, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3aba4096c935e46054e1d6c2f4aa9a4e9caa">RPMERR_COPY_FAILED</a> = -32785, 
<br />
&#160;&#160;<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abac8a4ed9773b46b9993f372c7bdc70ca2">RPMERR_LSETFCON_FAILED</a> = -32786, 
<a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3abaf980b8d2aae778f2998617f556164505">RPMERR_SETCAP_FAILED</a> = -32787
<br />
 }</td></tr>
<tr class="memdesc:a4def7ad89bac79be02173fdf379be3ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error codes for archive and file handling.  <a href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3ab">More...</a><br /></td></tr>
<tr class="separator:a4def7ad89bac79be02173fdf379be3ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a2f2dc41ad025b34ca25a2482f1d3ec12"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a2f2dc41ad025b34ca25a2482f1d3ec12">rpmfileStrerror</a> (int rc)</td></tr>
<tr class="memdesc:a2f2dc41ad025b34ca25a2482f1d3ec12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return formatted error message on payload handling failure.  <a href="#a2f2dc41ad025b34ca25a2482f1d3ec12">More...</a><br /></td></tr>
<tr class="separator:a2f2dc41ad025b34ca25a2482f1d3ec12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec42596ca3c621a669373f4d970feef9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#aec42596ca3c621a669373f4d970feef9">rpmfiNewArchiveWriter</a> (<a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a> fd, <a class="el" href="group__rpmtypes.html#ga3ab2e7f92cba58663bcb53c299c299d7">rpmfiles</a> files)</td></tr>
<tr class="memdesc:aec42596ca3c621a669373f4d970feef9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get new file iterator for writing the archive content.  <a href="#aec42596ca3c621a669373f4d970feef9">More...</a><br /></td></tr>
<tr class="separator:aec42596ca3c621a669373f4d970feef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5a990d263046890fd331487beec1979"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#ad5a990d263046890fd331487beec1979">rpmfiNewArchiveReader</a> (<a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a> fd, <a class="el" href="group__rpmtypes.html#ga3ab2e7f92cba58663bcb53c299c299d7">rpmfiles</a> files, int itype)</td></tr>
<tr class="memdesc:ad5a990d263046890fd331487beec1979"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get new file iterator for looping over the archive content.  <a href="#ad5a990d263046890fd331487beec1979">More...</a><br /></td></tr>
<tr class="separator:ad5a990d263046890fd331487beec1979"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17fec687c7f9799a9a4cf30166d6d4f5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a17fec687c7f9799a9a4cf30166d6d4f5">rpmfiArchiveClose</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi)</td></tr>
<tr class="memdesc:a17fec687c7f9799a9a4cf30166d6d4f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close payload archive.  <a href="#a17fec687c7f9799a9a4cf30166d6d4f5">More...</a><br /></td></tr>
<tr class="separator:a17fec687c7f9799a9a4cf30166d6d4f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57b18eecb94d619e5f157e45f7de39c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__rpmtypes.html#gab9fe53f396a324ab4d4e07cad793f730">rpm_loff_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a57b18eecb94d619e5f157e45f7de39c3">rpmfiArchiveTell</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi)</td></tr>
<tr class="memdesc:a57b18eecb94d619e5f157e45f7de39c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return current position in payload archive.  <a href="#a57b18eecb94d619e5f157e45f7de39c3">More...</a><br /></td></tr>
<tr class="separator:a57b18eecb94d619e5f157e45f7de39c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a919a64bb2c37c967a8bd6a9cda3127d2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a919a64bb2c37c967a8bd6a9cda3127d2">rpmfiArchiveWrite</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi, const void *buf, size_t size)</td></tr>
<tr class="memdesc:a919a64bb2c37c967a8bd6a9cda3127d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write content into current file in archive.  <a href="#a919a64bb2c37c967a8bd6a9cda3127d2">More...</a><br /></td></tr>
<tr class="separator:a919a64bb2c37c967a8bd6a9cda3127d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab09c5554cadb97cff0839770ca0f8563"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#ab09c5554cadb97cff0839770ca0f8563">rpmfiArchiveWriteFile</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi, <a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a> fd)</td></tr>
<tr class="memdesc:ab09c5554cadb97cff0839770ca0f8563"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write content from given file into current file in archive.  <a href="#ab09c5554cadb97cff0839770ca0f8563">More...</a><br /></td></tr>
<tr class="separator:ab09c5554cadb97cff0839770ca0f8563"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62518fef231e0c660339d1be5644d4aa"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a62518fef231e0c660339d1be5644d4aa">rpmfiArchiveRead</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi, void *buf, size_t size)</td></tr>
<tr class="memdesc:a62518fef231e0c660339d1be5644d4aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read content from current file in archive.  <a href="#a62518fef231e0c660339d1be5644d4aa">More...</a><br /></td></tr>
<tr class="separator:a62518fef231e0c660339d1be5644d4aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3314e7e6e896769c687cc2bffb7dc3a3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a3314e7e6e896769c687cc2bffb7dc3a3">rpmfiArchiveHasContent</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi)</td></tr>
<tr class="memdesc:a3314e7e6e896769c687cc2bffb7dc3a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Has current file content stored in the archive.  <a href="#a3314e7e6e896769c687cc2bffb7dc3a3">More...</a><br /></td></tr>
<tr class="separator:a3314e7e6e896769c687cc2bffb7dc3a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bbc3d8756acdf9aad0d5f32f299f4c7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmarchive_8h.html#a5bbc3d8756acdf9aad0d5f32f299f4c7">rpmfiArchiveReadToFile</a> (<a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> fi, <a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a> fd, int nodigest)</td></tr>
<tr class="memdesc:a5bbc3d8756acdf9aad0d5f32f299f4c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write content from current file in archive to a file.  <a href="#a5bbc3d8756acdf9aad0d5f32f299f4c7">More...</a><br /></td></tr>
<tr class="separator:a5bbc3d8756acdf9aad0d5f32f299f4c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>File archive (aka payload) API. </p>

<p class="definition">Definition in file <a class="el" href="rpmarchive_8h_source.html">rpmarchive.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ab3e3776250e2f9d9a7cd6689160bc83f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3e3776250e2f9d9a7cd6689160bc83f">&#9670;&nbsp;</a></span>RPMERR_CHECK_ERRNO</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RPMERR_CHECK_ERRNO&#160;&#160;&#160;-32768</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="rpmarchive_8h_source.html#l00009">9</a> of file <a class="el" href="rpmarchive_8h_source.html">rpmarchive.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a4def7ad89bac79be02173fdf379be3ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4def7ad89bac79be02173fdf379be3ab">&#9670;&nbsp;</a></span>rpmfilesErrorCodes</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="rpmarchive_8h.html#a4def7ad89bac79be02173fdf379be3ab">rpmfilesErrorCodes</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Error codes for archive and file handling. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba605028e95610e7cddb1e0d2e214df854"></a>RPMERR_ITER_END&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abae99e57b6667138d30bd6e5efdd1101aa"></a>RPMERR_BAD_MAGIC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba978a8154bb762223c5202d4b9598dbb0"></a>RPMERR_BAD_HEADER&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba820e3413a927e835494668842092a1c3"></a>RPMERR_HDR_SIZE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3ababd636aa903768ace70792e1f890a04c1"></a>RPMERR_UNKNOWN_FILETYPE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba5a2a34b9a9d3b73c85f18850e73daaa8"></a>RPMERR_MISSING_FILE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba00dc020087170b1d4266372135dee1cd"></a>RPMERR_DIGEST_MISMATCH&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba0b584166f9f5d4e71b755af63a21d2f8"></a>RPMERR_INTERNAL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba761d83b10c8f42f0ae1f229cb19129f6"></a>RPMERR_UNMAPPED_FILE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba6de7c74905c6a9b1e1201c1dba5f037c"></a>RPMERR_ENOENT&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abac613143ff721265c11864e6f0b5c78e7"></a>RPMERR_ENOTEMPTY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba773a6cbda4a80eee454022353ef49208"></a>RPMERR_FILE_SIZE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba04a88a5a135c07ea9095770082685d36"></a>RPMERR_ITER_SKIP&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abaf72bcc00177d91a9c2c47e7221afbd28"></a>RPMERR_EXIST_AS_DIR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abaec67513f300d6e4a5e0af90ab6ebc9d5"></a>RPMERR_OPEN_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abad152aef1a302ea75e58509be4c5495c2"></a>RPMERR_CHMOD_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba9e6a03d499caa7533fbe1561ad8ee942"></a>RPMERR_CHOWN_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba67eae88c1cf7887376f7275273b8510a"></a>RPMERR_WRITE_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba63b75052aba71f4038bd7959ac2e4224"></a>RPMERR_UTIME_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba2051953ae57007ff46afe48ec835b7d6"></a>RPMERR_UNLINK_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abaae55c77a53d0943e0bd64404e7ea0a90"></a>RPMERR_RENAME_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba7b3c51588fad4c9267e3e0dfeda6335c"></a>RPMERR_SYMLINK_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba42a0afdb6f63fdb34c1bfc83e39252ef"></a>RPMERR_STAT_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba4c93dc42ea4a7de02169898e7cb971b7"></a>RPMERR_LSTAT_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba8ef04c0c28dde5c0c54e7ab3d00c1d89"></a>RPMERR_MKDIR_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba5150db142130f328ebd57f568cc85145"></a>RPMERR_RMDIR_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abaa3434d6f9ce466ea5a7f0db6ee5656f9"></a>RPMERR_MKNOD_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba63806c1be855d9c8be07763820e162d6"></a>RPMERR_MKFIFO_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba21a722e4e20cc88db42759b6f4562059"></a>RPMERR_LINK_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba46eadce5410241e3f395ef1f36626242"></a>RPMERR_READLINK_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba015a48f6d1b5ba597b1b4536d4947aaa"></a>RPMERR_READ_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3aba4096c935e46054e1d6c2f4aa9a4e9caa"></a>RPMERR_COPY_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abac8a4ed9773b46b9993f372c7bdc70ca2"></a>RPMERR_LSETFCON_FAILED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4def7ad89bac79be02173fdf379be3abaf980b8d2aae778f2998617f556164505"></a>RPMERR_SETCAP_FAILED&#160;</td><td class="fielddoc"></td></tr>
</table>

<p class="definition">Definition at line <a class="el" href="rpmarchive_8h_source.html#l00014">14</a> of file <a class="el" href="rpmarchive_8h_source.html">rpmarchive.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a17fec687c7f9799a9a4cf30166d6d4f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17fec687c7f9799a9a4cf30166d6d4f5">&#9670;&nbsp;</a></span>rpmfiArchiveClose()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmfiArchiveClose </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Close payload archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>&gt; 0 on error </dd></dl>

</div>
</div>
<a id="a3314e7e6e896769c687cc2bffb7dc3a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3314e7e6e896769c687cc2bffb7dc3a3">&#9670;&nbsp;</a></span>rpmfiArchiveHasContent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmfiArchiveHasContent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Has current file content stored in the archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info @ return 1 for regular files but 0 for hardlinks without content </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a62518fef231e0c660339d1be5644d4aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62518fef231e0c660339d1be5644d4aa">&#9670;&nbsp;</a></span>rpmfiArchiveRead()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t rpmfiArchiveRead </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Read content from current file in archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
    <tr><td class="paramname">buf</td><td>pointer to buffer </td></tr>
    <tr><td class="paramname">size</td><td>number of bytes to read </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>bytes actually read </dd></dl>

</div>
</div>
<a id="a5bbc3d8756acdf9aad0d5f32f299f4c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bbc3d8756acdf9aad0d5f32f299f4c7">&#9670;&nbsp;</a></span>rpmfiArchiveReadToFile()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmfiArchiveReadToFile </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a>&#160;</td>
          <td class="paramname"><em>fd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nodigest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Write content from current file in archive to a file. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
    <tr><td class="paramname">fd</td><td>file descriptor of file to write to </td></tr>
    <tr><td class="paramname">nodigest</td><td>omit checksum check if 1 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>&gt; 0 on error </dd></dl>

</div>
</div>
<a id="a57b18eecb94d619e5f157e45f7de39c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57b18eecb94d619e5f157e45f7de39c3">&#9670;&nbsp;</a></span>rpmfiArchiveTell()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__rpmtypes.html#gab9fe53f396a324ab4d4e07cad793f730">rpm_loff_t</a> rpmfiArchiveTell </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return current position in payload archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>position </dd></dl>

</div>
</div>
<a id="a919a64bb2c37c967a8bd6a9cda3127d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a919a64bb2c37c967a8bd6a9cda3127d2">&#9670;&nbsp;</a></span>rpmfiArchiveWrite()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t rpmfiArchiveWrite </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Write content into current file in archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
    <tr><td class="paramname">buf</td><td>pointer to content </td></tr>
    <tr><td class="paramname">size</td><td>number of bytes to write </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>bytes actually written </dd></dl>

</div>
</div>
<a id="ab09c5554cadb97cff0839770ca0f8563"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab09c5554cadb97cff0839770ca0f8563">&#9670;&nbsp;</a></span>rpmfiArchiveWriteFile()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmfiArchiveWriteFile </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a>&#160;</td>
          <td class="paramname"><em>fi</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a>&#160;</td>
          <td class="paramname"><em>fd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Write content from given file into current file in archive. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fi</td><td>file info </td></tr>
    <tr><td class="paramname">fd</td><td>file descriptor of file to read </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>&gt; 0 on error </dd></dl>

</div>
</div>
<a id="a2f2dc41ad025b34ca25a2482f1d3ec12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f2dc41ad025b34ca25a2482f1d3ec12">&#9670;&nbsp;</a></span>rpmfileStrerror()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* rpmfileStrerror </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>rc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return formatted error message on payload handling failure. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">rc</td><td>error code </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>formatted error string (malloced) </dd></dl>

</div>
</div>
<a id="ad5a990d263046890fd331487beec1979"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5a990d263046890fd331487beec1979">&#9670;&nbsp;</a></span>rpmfiNewArchiveReader()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> rpmfiNewArchiveReader </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a>&#160;</td>
          <td class="paramname"><em>fd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga3ab2e7f92cba58663bcb53c299c299d7">rpmfiles</a>&#160;</td>
          <td class="paramname"><em>files</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>itype</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get new file iterator for looping over the archive content. </p>
<p>Returned rpmfi visites files in the order they are read from the payload. Content of the regular files can be retrieved with <a class="el" href="rpmarchive_8h.html#a62518fef231e0c660339d1be5644d4aa" title="Read content from current file in archive.">rpmfiArchiveRead()</a> or <a class="el" href="rpmarchive_8h.html#a5bbc3d8756acdf9aad0d5f32f299f4c7" title="Write content from current file in archive to a file.">rpmfiArchiveReadToFile()</a> when they are visited with <a class="el" href="group__rpmfi.html#gae165b1266f6927370169df4416b0a687" title="Return next file iterator index.">rpmfiNext()</a>. <a class="el" href="group__rpmfi.html#ga962cd484abca49996c9f9dc3496c0ca4" title="Set current file index in file info set iterator.">rpmfiSetFX()</a> is not supported for this type of iterator. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fd</td><td>file </td></tr>
    <tr><td class="paramname">files</td><td>file info </td></tr>
    <tr><td class="paramname">itype</td><td>how to handle hard links. See rpmFileIter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>new rpmfi </dd></dl>

</div>
</div>
<a id="aec42596ca3c621a669373f4d970feef9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec42596ca3c621a669373f4d970feef9">&#9670;&nbsp;</a></span>rpmfiNewArchiveWriter()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__rpmtypes.html#ga145b1d5b839052f7f79903bc29f8090a">rpmfi</a> rpmfiNewArchiveWriter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga078f4187c683508f3147e94397bab8d5">FD_t</a>&#160;</td>
          <td class="paramname"><em>fd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__rpmtypes.html#ga3ab2e7f92cba58663bcb53c299c299d7">rpmfiles</a>&#160;</td>
          <td class="paramname"><em>files</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get new file iterator for writing the archive content. </p>
<p>The returned rpmfi will only visit the files needing some content. You need to provide the content using <a class="el" href="rpmarchive_8h.html#a919a64bb2c37c967a8bd6a9cda3127d2" title="Write content into current file in archive.">rpmfiArchiveWrite()</a> or <a class="el" href="rpmarchive_8h.html#ab09c5554cadb97cff0839770ca0f8563" title="Write content from given file into current file in archive.">rpmfiArchiveWriteFile()</a>. Make sure to close the rpmfi with <a class="el" href="rpmarchive_8h.html#a17fec687c7f9799a9a4cf30166d6d4f5" title="Close payload archive.">rpmfiArchiveClose()</a> to get the trailer written. <a class="el" href="group__rpmfi.html#ga962cd484abca49996c9f9dc3496c0ca4" title="Set current file index in file info set iterator.">rpmfiSetFX()</a> is not supported for this type of iterator. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fd</td><td>file </td></tr>
    <tr><td class="paramname">files</td><td>file info </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>new rpmfi </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>