Sophie

Sophie

distrib > Mandriva > current > i586 > media > main-updates > by-pkgid > 7c859c6f61469ed11e2ab179848b0178 > files > 161

libapr-util-devel-1.4.1-0.1mdv2010.2.i586.rpm

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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"/>
<title>Apache Portable Runtime Utility Library: DBM routines</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.3 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.png"
             onmouseover="return searchBox.OnSearchSelectShow()"
             onmouseout="return searchBox.OnSearchSelectHide()"
             alt=""/>
        <input type="text" id="MSearchField" value="Search" accesskey="S"
             onfocus="searchBox.OnSearchFieldFocus(true)" 
             onblur="searchBox.OnSearchFieldFocus(false)" 
             onkeyup="searchBox.OnSearchFieldChange(event)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>DBM routines<br/>
<small>
[<a class="el" href="group___a_p_r___util.html">APR Utility Functions</a>]</small>
</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__datum__t.html">apr_datum_t</a></td></tr>
<tr><td colspan="2"><h2>Modules</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m___s_d_b_m.html">SDBM library</a></td></tr>
<tr><td colspan="2"><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gacd6e9c0783bd0c232bdd02b14655b6b1">APR_DBM_READONLY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gaf693166e76d6f84b12a0d75307687053">APR_DBM_READWRITE</a>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gabf461a27dab1f4cc7405e891d2ad6522">APR_DBM_RWCREATE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga8bffe207158704162c24fa74dc1b9264">APR_DBM_RWTRUNC</a>&nbsp;&nbsp;&nbsp;4</td></tr>
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__dbm__t.html">apr_dbm_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga47f6ff771143ed7b7987c686c20c8536">apr_dbm_t</a></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gaf7295ba8157f487b78319e168e1344b4">apr_dbm_open_ex</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> **dbm, const char *type, const char *name, apr_int32_t mode, apr_fileperms_t perm, apr_pool_t *cntxt)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gab2d9cc87f4922ae11a175556ec66e390">apr_dbm_open</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> **dbm, const char *name, apr_int32_t mode, apr_fileperms_t perm, apr_pool_t *cntxt)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gaad1e796c7436bf855ce6ec3c567eb3eb">apr_dbm_close</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gac990e695db20e3fa6998089081685196">apr_dbm_fetch</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> key, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> *pvalue)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga014a6acf6f86aaac5fc44af5b8951051">apr_dbm_store</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> key, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> value)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga3b218881f3bb9f8e909f32d99ae2ad34">apr_dbm_delete</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> key)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga20379004362aeeef11166bdaa8c47d1e">apr_dbm_exists</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> key)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gae5428eaa8df9a036212c8fad60e95e3c">apr_dbm_firstkey</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> *pkey)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga92b8233ccf421b89d2144f834dd6f9a6">apr_dbm_nextkey</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> *pkey)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#gacd9f6bc4a633720ac882daba9e0d9873">apr_dbm_freedatum</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="el" href="structapr__datum__t.html">apr_datum_t</a> data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga597bd9e35de9575afb55b3326789c0f3">apr_dbm_geterror</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, int *errcode, char *errbuf, apr_size_t errbufsize)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga7a3a1bd1ece38d90739ecb7cf72bf4fb">apr_dbm_get_usednames_ex</a> (apr_pool_t *pool, const char *type, const char *pathname, const char **used1, const char **used2)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___d_b_m.html#ga1ee45897c5e1b0718dfa4bd35a75dbe1">apr_dbm_get_usednames</a> (apr_pool_t *pool, const char *pathname, const char **used1, const char **used2)</td></tr>
</table>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="gacd6e9c0783bd0c232bdd02b14655b6b1"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_READONLY" ref="gacd6e9c0783bd0c232bdd02b14655b6b1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APR_DBM_READONLY&nbsp;&nbsp;&nbsp;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>open for read-only access </p>

</div>
</div>
<a class="anchor" id="gaf693166e76d6f84b12a0d75307687053"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_READWRITE" ref="gaf693166e76d6f84b12a0d75307687053" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APR_DBM_READWRITE&nbsp;&nbsp;&nbsp;2</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>open for read-write access </p>

</div>
</div>
<a class="anchor" id="gabf461a27dab1f4cc7405e891d2ad6522"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_RWCREATE" ref="gabf461a27dab1f4cc7405e891d2ad6522" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APR_DBM_RWCREATE&nbsp;&nbsp;&nbsp;3</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>open for r/w, create if needed </p>

</div>
</div>
<a class="anchor" id="ga8bffe207158704162c24fa74dc1b9264"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_RWTRUNC" ref="ga8bffe207158704162c24fa74dc1b9264" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APR_DBM_RWTRUNC&nbsp;&nbsp;&nbsp;4</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>open for r/w, truncating an existing DB if present </p>

</div>
</div>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga47f6ff771143ed7b7987c686c20c8536"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_t" ref="ga47f6ff771143ed7b7987c686c20c8536" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> <a class="el" href="structapr__dbm__t.html">apr_dbm_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Structure for referencing a dbm </p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gaad1e796c7436bf855ce6ec3c567eb3eb"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_close" ref="gaad1e796c7436bf855ce6ec3c567eb3eb" args="(apr_dbm_t *dbm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void apr_dbm_close </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Close a dbm file previously opened by apr_dbm_open </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database to close </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga3b218881f3bb9f8e909f32d99ae2ad34"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_delete" ref="ga3b218881f3bb9f8e909f32d99ae2ad34" args="(apr_dbm_t *dbm, apr_datum_t key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_delete </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Delete a dbm record value by key </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key datum of the record to delete </td></tr>
  </table>
  </dd>
</dl>
<dl class="remark"><dt><b>Remarks:</b></dt><dd>It is not an error to delete a non-existent record. </dd></dl>

</div>
</div>
<a class="anchor" id="ga20379004362aeeef11166bdaa8c47d1e"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_exists" ref="ga20379004362aeeef11166bdaa8c47d1e" args="(apr_dbm_t *dbm, apr_datum_t key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int apr_dbm_exists </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Search for a key within the dbm </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The datum describing a key to test </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac990e695db20e3fa6998089081685196"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_fetch" ref="gac990e695db20e3fa6998089081685196" args="(apr_dbm_t *dbm, apr_datum_t key, apr_datum_t *pvalue)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_fetch </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a> *&nbsp;</td>
          <td class="paramname"> <em>pvalue</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Fetch a dbm record value by key </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key datum to find this record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pvalue</em>&nbsp;</td><td>The value datum retrieved for this record </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae5428eaa8df9a036212c8fad60e95e3c"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_firstkey" ref="gae5428eaa8df9a036212c8fad60e95e3c" args="(apr_dbm_t *dbm, apr_datum_t *pkey)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_firstkey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a> *&nbsp;</td>
          <td class="paramname"> <em>pkey</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Retrieve the first record key from a dbm </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pkey</em>&nbsp;</td><td>The key datum of the first record </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gacd9f6bc4a633720ac882daba9e0d9873"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_freedatum" ref="gacd9f6bc4a633720ac882daba9e0d9873" args="(apr_dbm_t *dbm, apr_datum_t data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void apr_dbm_freedatum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Proactively toss any memory associated with the <a class="el" href="structapr__datum__t.html">apr_datum_t</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>The datum to free. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1ee45897c5e1b0718dfa4bd35a75dbe1"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_get_usednames" ref="ga1ee45897c5e1b0718dfa4bd35a75dbe1" args="(apr_pool_t *pool, const char *pathname, const char **used1, const char **used2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void apr_dbm_get_usednames </td>
          <td>(</td>
          <td class="paramtype">apr_pool_t *&nbsp;</td>
          <td class="paramname"> <em>pool</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>pathname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>used1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>used2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>If the specified file/path were passed to <a class="el" href="group___a_p_r___util___d_b_m.html#gab2d9cc87f4922ae11a175556ec66e390">apr_dbm_open()</a>, return the actual file/path names which would be (created and) used. At most, two files may be used; used2 may be NULL if only one file is used. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>The pool for allocating used1 and used2. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pathname</em>&nbsp;</td><td>The path name to generate used-names from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>used1</em>&nbsp;</td><td>The first pathname used by the apr_dbm implementation. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>used2</em>&nbsp;</td><td>The second pathname used by apr_dbm. If only one file is used by the specific implementation, this will be set to NULL. </td></tr>
  </table>
  </dd>
</dl>
<dl class="remark"><dt><b>Remarks:</b></dt><dd>The dbm file(s) don't need to exist. This function only manipulates the pathnames. </dd></dl>

</div>
</div>
<a class="anchor" id="ga7a3a1bd1ece38d90739ecb7cf72bf4fb"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_get_usednames_ex" ref="ga7a3a1bd1ece38d90739ecb7cf72bf4fb" args="(apr_pool_t *pool, const char *type, const char *pathname, const char **used1, const char **used2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_get_usednames_ex </td>
          <td>(</td>
          <td class="paramtype">apr_pool_t *&nbsp;</td>
          <td class="paramname"> <em>pool</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>pathname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>used1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>used2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>If the specified file/path were passed to <a class="el" href="group___a_p_r___util___d_b_m.html#gab2d9cc87f4922ae11a175556ec66e390">apr_dbm_open()</a>, return the actual file/path names which would be (created and) used. At most, two files may be used; used2 may be NULL if only one file is used. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>The pool for allocating used1 and used2. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>The type of DBM you require info on </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___a_p_r___util___d_b_m.html#gaf7295ba8157f487b78319e168e1344b4">apr_dbm_open_ex</a> </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pathname</em>&nbsp;</td><td>The path name to generate used-names from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>used1</em>&nbsp;</td><td>The first pathname used by the apr_dbm implementation. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>used2</em>&nbsp;</td><td>The second pathname used by apr_dbm. If only one file is used by the specific implementation, this will be set to NULL. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>An error if the specified type is invalid. </dd></dl>
<dl class="remark"><dt><b>Remarks:</b></dt><dd>The dbm file(s) don't need to exist. This function only manipulates the pathnames. </dd></dl>

</div>
</div>
<a class="anchor" id="ga597bd9e35de9575afb55b3326789c0f3"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_geterror" ref="ga597bd9e35de9575afb55b3326789c0f3" args="(apr_dbm_t *dbm, int *errcode, char *errbuf, apr_size_t errbufsize)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* apr_dbm_geterror </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>errcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>errbuf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&nbsp;</td>
          <td class="paramname"> <em>errbufsize</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Report more information when an apr_dbm function fails. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errcode</em>&nbsp;</td><td>A DBM-specific value for the error (for logging). If this isn't needed, it may be NULL. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errbuf</em>&nbsp;</td><td>Location to store the error text </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errbufsize</em>&nbsp;</td><td>The size of the provided buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The errbuf parameter, for convenience. </dd></dl>

</div>
</div>
<a class="anchor" id="ga92b8233ccf421b89d2144f834dd6f9a6"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_nextkey" ref="ga92b8233ccf421b89d2144f834dd6f9a6" args="(apr_dbm_t *dbm, apr_datum_t *pkey)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_nextkey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a> *&nbsp;</td>
          <td class="paramname"> <em>pkey</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Retrieve the next record key from a dbm </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pkey</em>&nbsp;</td><td>The key datum of the next record </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab2d9cc87f4922ae11a175556ec66e390"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_open" ref="gab2d9cc87f4922ae11a175556ec66e390" args="(apr_dbm_t **dbm, const char *name, apr_int32_t mode, apr_fileperms_t perm, apr_pool_t *cntxt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_open </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> **&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&nbsp;</td>
          <td class="paramname"> <em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_fileperms_t&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_pool_t *&nbsp;</td>
          <td class="paramname"> <em>cntxt</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Open a dbm file by file name </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The newly opened database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The dbm file name to open </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The flag value </p>
<pre>
           APR_DBM_READONLY   open for read-only access
           APR_DBM_READWRITE  open for read-write access
           APR_DBM_RWCREATE   open for r/w, create if needed
           APR_DBM_RWTRUNC    open for r/w, truncate if already there
 </pre> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>perm</em>&nbsp;</td><td>Permissions to apply to if created </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cntxt</em>&nbsp;</td><td>The pool to use when creating the dbm </td></tr>
  </table>
  </dd>
</dl>
<dl class="remark"><dt><b>Remarks:</b></dt><dd>The dbm name may not be a true file name, as many dbm packages append suffixes for seperate data and index files. </dd></dl>

</div>
</div>
<a class="anchor" id="gaf7295ba8157f487b78319e168e1344b4"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_open_ex" ref="gaf7295ba8157f487b78319e168e1344b4" args="(apr_dbm_t **dbm, const char *type, const char *name, apr_int32_t mode, apr_fileperms_t perm, apr_pool_t *cntxt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_open_ex </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> **&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&nbsp;</td>
          <td class="paramname"> <em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_fileperms_t&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_pool_t *&nbsp;</td>
          <td class="paramname"> <em>cntxt</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Open a dbm file by file name and type of DBM </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The newly opened database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>The type of the DBM (not all may be available at run time) </p>
<pre>
  db   for Berkeley DB files
  gdbm for GDBM files
  ndbm for NDBM files
  sdbm for SDBM files (always available)
  default for the default DBM type
  </pre> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The dbm file name to open </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The flag value </p>
<pre>
           APR_DBM_READONLY   open for read-only access
           APR_DBM_READWRITE  open for read-write access
           APR_DBM_RWCREATE   open for r/w, create if needed
           APR_DBM_RWTRUNC    open for r/w, truncate if already there
 </pre> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>perm</em>&nbsp;</td><td>Permissions to apply to if created </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cntxt</em>&nbsp;</td><td>The pool to use when creating the dbm </td></tr>
  </table>
  </dd>
</dl>
<dl class="remark"><dt><b>Remarks:</b></dt><dd>The dbm name may not be a true file name, as many dbm packages append suffixes for seperate data and index files. </dd></dl>
<dl class="bug"><dt><b><a class="el" href="bug.html#_bug000001">Bug:</a></b></dt><dd>In apr-util 0.9 and 1.x, the type arg was case insensitive. This was highly inefficient, and as of 2.x the dbm name must be provided in the correct case (lower case for all bundled providers) </dd></dl>

</div>
</div>
<a class="anchor" id="ga014a6acf6f86aaac5fc44af5b8951051"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_store" ref="ga014a6acf6f86aaac5fc44af5b8951051" args="(apr_dbm_t *dbm, apr_datum_t key, apr_datum_t value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_dbm_store </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dbm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__datum__t.html">apr_datum_t</a>&nbsp;</td>
          <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Store a dbm record value by key </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbm</em>&nbsp;</td><td>The database </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key datum to store this record by </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value datum to store in this record </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Feb 1 12:19:48 2012 for Apache Portable Runtime Utility Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>