Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > bdcd72668be70f58bf0aa7c2102b0734 > files > 128

lib64apr-util-devel-1.2.12-4mdv2008.1.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Apache Portable Runtime Utility Library: DBM routines</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.5.4 -->
<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="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><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<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></td></tr>
<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
<tr><td class="memItemLeft" nowrap 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"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap 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"><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="group___a_p_r___util___d_b_m.html#gcd6e9c0783bd0c232bdd02b14655b6b1">APR_DBM_READONLY</a>&nbsp;&nbsp;&nbsp;1</td></tr>

<tr><td class="memItemLeft" nowrap 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#gf693166e76d6f84b12a0d75307687053">APR_DBM_READWRITE</a>&nbsp;&nbsp;&nbsp;2</td></tr>

<tr><td class="memItemLeft" nowrap 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#gbf461a27dab1f4cc7405e891d2ad6522">APR_DBM_RWCREATE</a>&nbsp;&nbsp;&nbsp;3</td></tr>

<tr><td class="memItemLeft" nowrap 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#g8bffe207158704162c24fa74dc1b9264">APR_DBM_RWTRUNC</a>&nbsp;&nbsp;&nbsp;4</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap 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#g47f6ff771143ed7b7987c686c20c8536">apr_dbm_t</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap 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#gf7295ba8157f487b78319e168e1344b4">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" nowrap 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#gb2d9cc87f4922ae11a175556ec66e390">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" nowrap 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#gad1e796c7436bf855ce6ec3c567eb3eb">apr_dbm_close</a> (<a class="el" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm)</td></tr>

<tr><td class="memItemLeft" nowrap 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#gc990e695db20e3fa6998089081685196">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" nowrap 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#g014a6acf6f86aaac5fc44af5b8951051">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" nowrap 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#g3b218881f3bb9f8e909f32d99ae2ad34">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" nowrap 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#g20379004362aeeef11166bdaa8c47d1e">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" nowrap 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#ge5428eaa8df9a036212c8fad60e95e3c">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" nowrap 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#g92b8233ccf421b89d2144f834dd6f9a6">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" nowrap 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#gcd9f6bc4a633720ac882daba9e0d9873">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" nowrap 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#g597bd9e35de9575afb55b3326789c0f3">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" nowrap 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#g7a3a1bd1ece38d90739ecb7cf72bf4fb">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" nowrap 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#g1ee45897c5e1b0718dfa4bd35a75dbe1">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" name="gcd6e9c0783bd0c232bdd02b14655b6b1"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_READONLY" ref="gcd6e9c0783bd0c232bdd02b14655b6b1" 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 
</div>
</div><p>
<a class="anchor" name="gf693166e76d6f84b12a0d75307687053"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_READWRITE" ref="gf693166e76d6f84b12a0d75307687053" 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 
</div>
</div><p>
<a class="anchor" name="gbf461a27dab1f4cc7405e891d2ad6522"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_RWCREATE" ref="gbf461a27dab1f4cc7405e891d2ad6522" 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 
</div>
</div><p>
<a class="anchor" name="g8bffe207158704162c24fa74dc1b9264"></a><!-- doxytag: member="apr_dbm.h::APR_DBM_RWTRUNC" ref="g8bffe207158704162c24fa74dc1b9264" 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 
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="g47f6ff771143ed7b7987c686c20c8536"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_t" ref="g47f6ff771143ed7b7987c686c20c8536" 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 
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="gad1e796c7436bf855ce6ec3c567eb3eb"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_close" ref="gad1e796c7436bf855ce6ec3c567eb3eb" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Close a dbm file previously opened by apr_dbm_open <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="g3b218881f3bb9f8e909f32d99ae2ad34"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_delete" ref="g3b218881f3bb9f8e909f32d99ae2ad34" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Delete a dbm record value by key <dl compact><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>
</dl>
<dl class="remark" compact><dt><b>Remarks:</b></dt><dd>It is not an error to delete a non-existent record. </dd></dl>

</div>
</div><p>
<a class="anchor" name="g20379004362aeeef11166bdaa8c47d1e"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_exists" ref="g20379004362aeeef11166bdaa8c47d1e" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Search for a key within the dbm <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="gc990e695db20e3fa6998089081685196"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_fetch" ref="gc990e695db20e3fa6998089081685196" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fetch a dbm record value by key <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="ge5428eaa8df9a036212c8fad60e95e3c"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_firstkey" ref="ge5428eaa8df9a036212c8fad60e95e3c" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve the first record key from a dbm <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="gcd9f6bc4a633720ac882daba9e0d9873"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_freedatum" ref="gcd9f6bc4a633720ac882daba9e0d9873" 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 width="100%"></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>. <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="g1ee45897c5e1b0718dfa4bd35a75dbe1"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_get_usednames" ref="g1ee45897c5e1b0718dfa4bd35a75dbe1" 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 width="100%"></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#gb2d9cc87f4922ae11a175556ec66e390">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. <dl compact><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>
</dl>
<dl class="remark" compact><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><p>
<a class="anchor" name="g7a3a1bd1ece38d90739ecb7cf72bf4fb"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_get_usednames_ex" ref="g7a3a1bd1ece38d90739ecb7cf72bf4fb" 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 width="100%"></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#gb2d9cc87f4922ae11a175556ec66e390">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. <dl compact><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>
    <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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An error if the specified type is invalid. </dd></dl>
<dl class="remark" compact><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><p>
<a class="anchor" name="g597bd9e35de9575afb55b3326789c0f3"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_geterror" ref="g597bd9e35de9575afb55b3326789c0f3" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Report more information when an apr_dbm function fails. <dl compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The errbuf parameter, for convenience. </dd></dl>

</div>
</div><p>
<a class="anchor" name="g92b8233ccf421b89d2144f834dd6f9a6"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_nextkey" ref="g92b8233ccf421b89d2144f834dd6f9a6" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve the next record key from a dbm <dl compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="gb2d9cc87f4922ae11a175556ec66e390"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_open" ref="gb2d9cc87f4922ae11a175556ec66e390" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Open a dbm file by file name <dl compact><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 <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>
</dl>
<dl class="remark" compact><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><p>
<a class="anchor" name="gf7295ba8157f487b78319e168e1344b4"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_open_ex" ref="gf7295ba8157f487b78319e168e1344b4" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Open a dbm file by file name and type of DBM <dl compact><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) <pre>
  GDBM for GDBM files
  SDBM for SDBM files
  DB   for berkeley DB files
  NDBM for NDBM files
  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 <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>
</dl>
<dl class="remark" compact><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><p>
<a class="anchor" name="g014a6acf6f86aaac5fc44af5b8951051"></a><!-- doxytag: member="apr_dbm.h::apr_dbm_store" ref="g014a6acf6f86aaac5fc44af5b8951051" 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 width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Store a dbm record value by key <dl compact><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>
</dl>

</div>
</div><p>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Jan 24 02:22:55 2008 for Apache Portable Runtime Utility Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.4 </small></address>
</body>
</html>