Sophie

Sophie

distrib > CentOS > 5 > x86_64 > by-pkgid > 67e32647b06c0323bf90c6b54a6438d1 > files > 641

rpm-apidocs-4.4.2.3-34.el5.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>rpm: lib/rpmsx.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li id="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<h1>lib/rpmsx.h File Reference</h1>Structure(s) used for file security context pattern handling. <a href="#_details">More...</a>
<p>
<code>#include &lt;regex.h&gt;</code><br>

<p>
<a href="rpmsx_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#d45d0659f899d1cd640fc0628274899a">rpmsxUnlink</a>(_sx, _msg)&nbsp;&nbsp;&nbsp;XrpmsxUnlink(_sx, _msg, __FILE__, __LINE__)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#8c86669dd31a7fdf060b42e439f11d4a">rpmsxLink</a>(_sx, _msg)&nbsp;&nbsp;&nbsp;XrpmsxLink(_sx, _msg, __FILE__, __LINE__)</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef rpmsx_s *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef rpmsxp_s *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#2203bc354210519843edecb3f2457799">rpmsxp</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef rpmsxs_s *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#8c966a4aecdb2625d717e6fc71608688">rpmsxs</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#3d45aa410c02a71a16ca1aa2507971da">rpmsxUnlink</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *msg)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unreference a security context patterns instance.  <a href="#3d45aa410c02a71a16ca1aa2507971da"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#d811b7cf7601a87369cffe40f3a91558">XrpmsxUnlink</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *msg, const char *fn, unsigned ln)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#2d2dbfc66ad2c1cfaeb74646cdcdb411">rpmsxLink</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *msg)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reference a security context patterns instance.  <a href="#2d2dbfc66ad2c1cfaeb74646cdcdb411"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#7d32e8f63504ba0f4265a9f503ed2dac">XrpmsxLink</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *msg, const char *fn, unsigned ln)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#09c66e00694076201183e57a78cc43ce">rpmsxFree</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy a security context patterns.  <a href="#09c66e00694076201183e57a78cc43ce"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#ef24e8342214727edb4c10b86c52915e">rpmsxParse</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *fn)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse selinux file security context patterns.  <a href="#ef24e8342214727edb4c10b86c52915e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#c9b4e5b707995bba039135d437273767">rpmsxNew</a> (const char *fn)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create and load security context patterns.  <a href="#c9b4e5b707995bba039135d437273767"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#97c6951c51f3d9fd9122ba1c725c7e83">rpmsxCount</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return security context patterns count.  <a href="#97c6951c51f3d9fd9122ba1c725c7e83"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#be6265f4562d76c4a7aefe7de1f482cb">rpmsxIx</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return security context patterns index.  <a href="#be6265f4562d76c4a7aefe7de1f482cb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#287aa18c50526fe0d177d26472c689a0">rpmsxSetIx</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, int ix)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set security context patterns index.  <a href="#287aa18c50526fe0d177d26472c689a0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#41f28f67d12796d81b5a047425a32c1b">rpmsxPattern</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current pattern.  <a href="#41f28f67d12796d81b5a047425a32c1b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#71272e6af72ba3a96da718b7813fe6f5">rpmsxType</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current type.  <a href="#71272e6af72ba3a96da718b7813fe6f5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#2cdd763acd95fd9356acccd85600e702">rpmsxContext</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current context.  <a href="#2cdd763acd95fd9356acccd85600e702"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">regex_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#eb36003d4197adbba5f4739b990326a6">rpmsxRE</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current regex.  <a href="#eb36003d4197adbba5f4739b990326a6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">mode_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#814aa18a1b5c0e4e614472364afb91e1">rpmsxFMode</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current file mode.  <a href="#814aa18a1b5c0e4e614472364afb91e1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#e5302c6eb2acb8a1015e69c1fbb804a9">rpmsxFStem</a> (const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return current file stem.  <a href="#e5302c6eb2acb8a1015e69c1fbb804a9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#fa00d8ed37728bbd4a321f973fa81925">rpmsxNext</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return next security context patterns iterator index.  <a href="#fa00d8ed37728bbd4a321f973fa81925"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#0417224269134ce03aecf19e1e4e6439">rpmsxInit</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, int <a class="el" href="rpminstall_8c.html#e6ebe94aa9f2d314eb937d8a3042763f">reverse</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize security context patterns iterator.  <a href="#0417224269134ce03aecf19e1e4e6439"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#aa52f09426913a214255c0013b44b8ce">rpmsxFContext</a> (<a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> sx, const char *fn, mode_t fmode)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find file security context from path and type.  <a href="#aa52f09426913a214255c0013b44b8ce"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#5163619b40a7de54cf579f4b98c0b9ca">_rpmsx_debug</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpmsx_8h.html#e53f67f8c7e3738adc8639d9b994c63a">_rpmsx_nopromote</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Structure(s) used for file security context pattern handling. 
<p>

<p>
Definition in file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.<hr><h2>Define Documentation</h2>
<a class="anchor" name="8c86669dd31a7fdf060b42e439f11d4a"></a><!-- doxytag: member="rpmsx.h::rpmsxLink" ref="8c86669dd31a7fdf060b42e439f11d4a" args="(_sx, _msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define rpmsxLink          </td>
          <td>(</td>
          <td class="paramtype">_sx,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">_msg&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;XrpmsxLink(_sx, _msg, __FILE__, __LINE__)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8h-source.html#l00116">116</a> of file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00518">rpmsxNew()</a>, <a class="el" href="rpmts_8c-source.html#l01087">rpmtsREContext()</a>, and <a class="el" href="rpmts_8c-source.html#l01092">rpmtsSetREContext()</a>.
</div>
</div><p>
<a class="anchor" name="d45d0659f899d1cd640fc0628274899a"></a><!-- doxytag: member="rpmsx.h::rpmsxUnlink" ref="d45d0659f899d1cd640fc0628274899a" args="(_sx, _msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define rpmsxUnlink          </td>
          <td>(</td>
          <td class="paramtype">_sx,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">_msg&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;XrpmsxUnlink(_sx, _msg, __FILE__, __LINE__)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8h-source.html#l00097">97</a> of file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00226">rpmsxFree()</a>.
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="0aa3c21be12f3a6e6ce79c4e3aea816f"></a><!-- doxytag: member="rpmsx.h::rpmsx" ref="0aa3c21be12f3a6e6ce79c4e3aea816f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct rpmsx_s* <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8h-source.html#l00025">25</a> of file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.
</div>
</div><p>
<a class="anchor" name="2203bc354210519843edecb3f2457799"></a><!-- doxytag: member="rpmsx.h::rpmsxp" ref="2203bc354210519843edecb3f2457799" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct rpmsxp_s* <a class="el" href="rpmsx_8h.html#2203bc354210519843edecb3f2457799">rpmsxp</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8h-source.html#l00026">26</a> of file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.
</div>
</div><p>
<a class="anchor" name="8c966a4aecdb2625d717e6fc71608688"></a><!-- doxytag: member="rpmsx.h::rpmsxs" ref="8c966a4aecdb2625d717e6fc71608688" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct rpmsxs_s* <a class="el" href="rpmsx_8h.html#8c966a4aecdb2625d717e6fc71608688">rpmsxs</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8h-source.html#l00027">27</a> of file <a class="el" href="rpmsx_8h-source.html">rpmsx.h</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="2cdd763acd95fd9356acccd85600e702"></a><!-- doxytag: member="rpmsx.h::rpmsxContext" ref="2cdd763acd95fd9356acccd85600e702" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* rpmsxContext           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current context. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current context, NULL on invalid </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00578">578</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="97c6951c51f3d9fd9122ba1c725c7e83"></a><!-- doxytag: member="rpmsx.h::rpmsxCount" ref="97c6951c51f3d9fd9122ba1c725c7e83" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxCount           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return security context patterns count. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current count </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00539">539</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
</div>
</div><p>
<a class="anchor" name="aa52f09426913a214255c0013b44b8ce"></a><!-- doxytag: member="rpmsx.h::rpmsxFContext" ref="aa52f09426913a214255c0013b44b8ce" args="(rpmsx sx, const char *fn, mode_t fmode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* rpmsxFContext           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mode_t&nbsp;</td>
          <td class="paramname"> <em>fmode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Find file security context from path and type. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fn</em>&nbsp;</td><td>file path </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fmode</em>&nbsp;</td><td>file mode </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>file security context </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00658">658</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmsx_8c-source.html#l00578">rpmsxContext()</a>, <a class="el" href="rpmsx_8c-source.html#l00182">rpmsxFind()</a>, <a class="el" href="rpmsx_8c-source.html#l00596">rpmsxFMode()</a>, <a class="el" href="rpmsx_8c-source.html#l00605">rpmsxFStem()</a>, <a class="el" href="rpmsx_8c-source.html#l00646">rpmsxInit()</a>, <a class="el" href="rpmsx_8c-source.html#l00614">rpmsxNext()</a>, <a class="el" href="rpmsx_8c-source.html#l00560">rpmsxPattern()</a>, and <a class="el" href="rpmsx_8c-source.html#l00587">rpmsxRE()</a>.
</div>
</div><p>
<a class="anchor" name="814aa18a1b5c0e4e614472364afb91e1"></a><!-- doxytag: member="rpmsx.h::rpmsxFMode" ref="814aa18a1b5c0e4e614472364afb91e1" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">mode_t rpmsxFMode           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current file mode. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current file mode, 0 on invalid </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00596">596</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="09c66e00694076201183e57a78cc43ce"></a><!-- doxytag: member="rpmsx.h::rpmsxFree" ref="09c66e00694076201183e57a78cc43ce" args="(rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> rpmsxFree           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destroy a security context patterns. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>NULL always </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00226">226</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmlib_8h-source.html#l00058">_free()</a>, <a class="el" href="rpmsx_8c-source.html#l00017">_rpmsx_debug</a>, and <a class="el" href="rpmsx_8h-source.html#l00097">rpmsxUnlink</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00518">rpmsxNew()</a>, <a class="el" href="rpmts_8c-source.html#l00850">rpmtsFree()</a>, and <a class="el" href="rpmts_8c-source.html#l01092">rpmtsSetREContext()</a>.
</div>
</div><p>
<a class="anchor" name="e5302c6eb2acb8a1015e69c1fbb804a9"></a><!-- doxytag: member="rpmsx.h::rpmsxFStem" ref="e5302c6eb2acb8a1015e69c1fbb804a9" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxFStem           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current file stem. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current file stem, -1 on invalid </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00605">605</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="0417224269134ce03aecf19e1e4e6439"></a><!-- doxytag: member="rpmsx.h::rpmsxInit" ref="0417224269134ce03aecf19e1e4e6439" args="(rpmsx sx, int reverse)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> rpmsxInit           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>reverse</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize security context patterns iterator. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>reverse</em>&nbsp;</td><td>iterate in reverse order? </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>security context patterns </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00646">646</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="be6265f4562d76c4a7aefe7de1f482cb"></a><!-- doxytag: member="rpmsx.h::rpmsxIx" ref="be6265f4562d76c4a7aefe7de1f482cb" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxIx           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return security context patterns index. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current index </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00544">544</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
</div>
</div><p>
<a class="anchor" name="2d2dbfc66ad2c1cfaeb74646cdcdb411"></a><!-- doxytag: member="rpmsx.h::rpmsxLink" ref="2d2dbfc66ad2c1cfaeb74646cdcdb411" args="(rpmsx sx, const char *msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> rpmsxLink           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>msg</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Reference a security context patterns instance. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msg</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>new security context patterns reference </dd></dl>

</div>
</div><p>
<a class="anchor" name="c9b4e5b707995bba039135d437273767"></a><!-- doxytag: member="rpmsx.h::rpmsxNew" ref="c9b4e5b707995bba039135d437273767" args="(const char *fn)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> rpmsxNew           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fn</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create and load security context patterns. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fn</em>&nbsp;</td><td>security context patterns file name </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>new security context patterns </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00518">518</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmsx_8c-source.html#l00226">rpmsxFree()</a>, <a class="el" href="rpmsx_8h-source.html#l00116">rpmsxLink</a>, <a class="el" href="rpmsx_8c-source.html#l00319">rpmsxParse()</a>, and <a class="el" href="rpmmalloc_8c-source.html#l00034">xcalloc()</a>.
</div>
</div><p>
<a class="anchor" name="fa00d8ed37728bbd4a321f973fa81925"></a><!-- doxytag: member="rpmsx.h::rpmsxNext" ref="fa00d8ed37728bbd4a321f973fa81925" args="(rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxNext           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return next security context patterns iterator index. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>security context patterns iterator index, -1 on termination </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00614">614</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmsx_8c-source.html#l00017">_rpmsx_debug</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="ef24e8342214727edb4c10b86c52915e"></a><!-- doxytag: member="rpmsx.h::rpmsxParse" ref="ef24e8342214727edb4c10b86c52915e" args="(rpmsx sx, const char *fn)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxParse           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fn</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Parse selinux file security context patterns. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fn</em>&nbsp;</td><td>file name to parse </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 on success </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00319">319</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="system_8h-source.html#l00478">_</a>, <a class="el" href="rpmlib_8h-source.html#l00058">_free()</a>, <a class="el" href="system_8h.html#d65a8842cc674e3ddf69355898c0ecbf">errno</a>, <a class="el" href="rpmsx_8c.html#3fe9ab8ddb9b4e64043e449a66a0dcd2">inc_err</a>, <a class="el" href="rpmcache_8c-source.html#l00049">items</a>, <a class="el" href="macro_8c-source.html#l02286">rpmGetPath()</a>, <a class="el" href="rpmsx_8c-source.html#l00138">rpmsxAdd()</a>, <a class="el" href="rpmsx_8c-source.html#l00280">rpmsxpCheckNoDupes()</a>, <a class="el" href="rpmsx_8c-source.html#l00057">rpmsxpHasMetaChars()</a>, <a class="el" href="rpmsx_8c-source.html#l00023">rpmsxSort()</a>, <a class="el" href="system_8h-source.html#l00608">S_IFSOCK</a>, <a class="el" href="system_8h-source.html#l00309">security_check_context</a>, <a class="el" href="rpmmalloc_8c-source.html#l00034">xcalloc()</a>, and <a class="el" href="rpmmalloc_8c-source.html#l00024">xmalloc()</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00518">rpmsxNew()</a>.
</div>
</div><p>
<a class="anchor" name="41f28f67d12796d81b5a047425a32c1b"></a><!-- doxytag: member="rpmsx.h::rpmsxPattern" ref="41f28f67d12796d81b5a047425a32c1b" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* rpmsxPattern           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current pattern. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current pattern, NULL on invalid </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00560">560</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="eb36003d4197adbba5f4739b990326a6"></a><!-- doxytag: member="rpmsx.h::rpmsxRE" ref="eb36003d4197adbba5f4739b990326a6" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">regex_t* rpmsxRE           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current regex. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current context, NULL on invalid </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00587">587</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
Referenced by <a class="el" href="rpmsx_8c-source.html#l00658">rpmsxFContext()</a>.
</div>
</div><p>
<a class="anchor" name="287aa18c50526fe0d177d26472c689a0"></a><!-- doxytag: member="rpmsx.h::rpmsxSetIx" ref="287aa18c50526fe0d177d26472c689a0" args="(rpmsx sx, int ix)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int rpmsxSetIx           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>ix</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set security context patterns index. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ix</em>&nbsp;</td><td>new index </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current index </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00549">549</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
</div>
</div><p>
<a class="anchor" name="71272e6af72ba3a96da718b7813fe6f5"></a><!-- doxytag: member="rpmsx.h::rpmsxType" ref="71272e6af72ba3a96da718b7813fe6f5" args="(const rpmsx sx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* rpmsxType           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return current type. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current type, NULL on invalid/missing </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00569">569</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
</div>
</div><p>
<a class="anchor" name="3d45aa410c02a71a16ca1aa2507971da"></a><!-- doxytag: member="rpmsx.h::rpmsxUnlink" ref="3d45aa410c02a71a16ca1aa2507971da" args="(rpmsx sx, const char *msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> rpmsxUnlink           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>msg</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unreference a security context patterns instance. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sx</em>&nbsp;</td><td>security context patterns </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msg</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>NULL always </dd></dl>

</div>
</div><p>
<a class="anchor" name="7d32e8f63504ba0f4265a9f503ed2dac"></a><!-- doxytag: member="rpmsx.h::XrpmsxLink" ref="7d32e8f63504ba0f4265a9f503ed2dac" args="(rpmsx sx, const char *msg, const char *fn, unsigned ln)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> XrpmsxLink           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>msg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>ln</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl compact><dt><b><a class="el" href="todo.html#_todo000074">Todo:</a></b></dt><dd>Remove debugging entry from the ABI. </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00213">213</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmsx_8c-source.html#l00017">_rpmsx_debug</a>.
</div>
</div><p>
<a class="anchor" name="d811b7cf7601a87369cffe40f3a91558"></a><!-- doxytag: member="rpmsx.h::XrpmsxUnlink" ref="d811b7cf7601a87369cffe40f3a91558" args="(rpmsx sx, const char *msg, const char *fn, unsigned ln)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a> XrpmsxUnlink           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="rpmsx_8h.html#0aa3c21be12f3a6e6ce79c4e3aea816f">rpmsx</a>&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>msg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>ln</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl compact><dt><b><a class="el" href="todo.html#_todo000073">Todo:</a></b></dt><dd>Remove debugging entry from the ABI. </dd></dl>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00202">202</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
<p>
References <a class="el" href="rpmsx_8c-source.html#l00017">_rpmsx_debug</a>.
</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="5163619b40a7de54cf579f4b98c0b9ca"></a><!-- doxytag: member="rpmsx.h::_rpmsx_debug" ref="5163619b40a7de54cf579f4b98c0b9ca" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="rpmsx_8h.html#5163619b40a7de54cf579f4b98c0b9ca">_rpmsx_debug</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="rpmsx_8c-source.html#l00017">17</a> of file <a class="el" href="rpmsx_8c-source.html">rpmsx.c</a>.
</div>
</div><p>
<a class="anchor" name="e53f67f8c7e3738adc8639d9b994c63a"></a><!-- doxytag: member="rpmsx.h::_rpmsx_nopromote" ref="e53f67f8c7e3738adc8639d9b994c63a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="rpmsx_8h.html#e53f67f8c7e3738adc8639d9b994c63a">_rpmsx_nopromote</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on 1 Oct 2013 for rpm by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>