apr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bo...@apache.org
Subject svn commit: r784636 [8/47] - in /apr/site/trunk/docs/docs: apr-util/trunk/ apr/trunk/
Date Mon, 15 Jun 2009 00:01:47 GMT
Added: apr/site/trunk/docs/docs/apr/trunk/apr__dbd__internal_8h-source.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/apr__dbd__internal_8h-source.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/apr__dbd__internal_8h-source.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/apr__dbd__internal_8h-source.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,396 @@
+<!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: apr_dbd_internal.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<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 class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</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>apr_dbd_internal.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* Licensed to the Apache Software Foundation (ASF) under one or more</span>
+<a name="l00002"></a>00002 <span class="comment"> * contributor license agreements.  See the NOTICE file distributed with</span>
+<a name="l00003"></a>00003 <span class="comment"> * this work for additional information regarding copyright ownership.</span>
+<a name="l00004"></a>00004 <span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span>
+<a name="l00005"></a>00005 <span class="comment"> * (the "License"); you may not use this file except in compliance with</span>
+<a name="l00006"></a>00006 <span class="comment"> * the License.  You may obtain a copy of the License at</span>
+<a name="l00007"></a>00007 <span class="comment"> *</span>
+<a name="l00008"></a>00008 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
+<a name="l00009"></a>00009 <span class="comment"> *</span>
+<a name="l00010"></a>00010 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
+<a name="l00011"></a>00011 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span>
+<a name="l00012"></a>00012 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<a name="l00013"></a>00013 <span class="comment"> * See the License for the specific language governing permissions and</span>
+<a name="l00014"></a>00014 <span class="comment"> * limitations under the License.</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="comment">/* Overview of what this is and does:</span>
+<a name="l00018"></a>00018 <span class="comment"> * http://www.apache.org/~niq/dbd.html</span>
+<a name="l00019"></a>00019 <span class="comment"> */</span>
+<a name="l00020"></a>00020 
+<a name="l00021"></a>00021 <span class="preprocessor">#ifndef APR_DBD_INTERNAL_H</span>
+<a name="l00022"></a>00022 <span class="preprocessor"></span><span class="preprocessor">#define APR_DBD_INTERNAL_H</span>
+<a name="l00023"></a>00023 <span class="preprocessor"></span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;stdarg.h&gt;</span>
+<a name="l00025"></a>00025 
+<a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="apr__dbd_8h.html" title="APR-UTIL DBD library.">apr_dbd.h</a>"</span>
+<a name="l00027"></a>00027 
+<a name="l00028"></a>00028 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
+<a name="l00030"></a>00030 <span class="preprocessor">#endif</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>
+<a name="l00032"></a>00032 <span class="preprocessor">#define TXN_IGNORE_ERRORS(t) \</span>
+<a name="l00033"></a>00033 <span class="preprocessor">  ((t) &amp;&amp; ((t)-&gt;mode &amp; APR_DBD_TRANSACTION_IGNORE_ERRORS))</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define TXN_NOTICE_ERRORS(t) \</span>
+<a name="l00035"></a>00035 <span class="preprocessor">  ((t) &amp;&amp; !((t)-&gt;mode &amp; APR_DBD_TRANSACTION_IGNORE_ERRORS))</span>
+<a name="l00036"></a>00036 <span class="preprocessor"></span>
+<a name="l00037"></a>00037 <span class="preprocessor">#define TXN_DO_COMMIT(t)   (!((t)-&gt;mode &amp; APR_DBD_TRANSACTION_ROLLBACK))</span>
+<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define TXN_DO_ROLLBACK(t) ((t)-&gt;mode &amp; APR_DBD_TRANSACTION_ROLLBACK)</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>
+<a name="l00040"></a>00040 <span class="preprocessor">#define TXN_MODE_BITS \</span>
+<a name="l00041"></a>00041 <span class="preprocessor">  (APR_DBD_TRANSACTION_ROLLBACK|APR_DBD_TRANSACTION_IGNORE_ERRORS)</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="keyword">struct </span>apr_dbd_driver_t {<span class="comment"></span>
+<a name="l00044"></a>00044 <span class="comment">    /** name */</span>
+<a name="l00045"></a>00045     <span class="keyword">const</span> <span class="keywordtype">char</span> *name;
+<a name="l00046"></a>00046 <span class="comment"></span>
+<a name="l00047"></a>00047 <span class="comment">    /** init: allow driver to perform once-only initialisation.</span>
+<a name="l00048"></a>00048 <span class="comment">     *  Called once only.  May be NULL</span>
+<a name="l00049"></a>00049 <span class="comment">     */</span>
+<a name="l00050"></a>00050     void (*init)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool);
+<a name="l00051"></a>00051 <span class="comment"></span>
+<a name="l00052"></a>00052 <span class="comment">    /** native_handle: return the native database handle of the underlying db</span>
+<a name="l00053"></a>00053 <span class="comment">     *</span>
+<a name="l00054"></a>00054 <span class="comment">     * @param handle - apr_dbd handle</span>
+<a name="l00055"></a>00055 <span class="comment">     * @return - native handle</span>
+<a name="l00056"></a>00056 <span class="comment">     */</span>
+<a name="l00057"></a>00057     <span class="keywordtype">void</span> *(*native_handle)(apr_dbd_t *handle);
+<a name="l00058"></a>00058 <span class="comment"></span>
+<a name="l00059"></a>00059 <span class="comment">    /** open: obtain a database connection from the server rec.</span>
+<a name="l00060"></a>00060 <span class="comment">     *  Must be explicitly closed when you're finished with it.</span>
+<a name="l00061"></a>00061 <span class="comment">     *  WARNING: only use this when you need a connection with</span>
+<a name="l00062"></a>00062 <span class="comment">     *  a lifetime other than a request</span>
+<a name="l00063"></a>00063 <span class="comment">     *</span>
+<a name="l00064"></a>00064 <span class="comment">     *  @param pool - a pool to use for error messages (if any).</span>
+<a name="l00065"></a>00065 <span class="comment">     *  @param params - connection parameters.</span>
+<a name="l00066"></a>00066 <span class="comment">     *  @param error - descriptive error.</span>
+<a name="l00067"></a>00067 <span class="comment">     *  @return database handle, or NULL on error.</span>
+<a name="l00068"></a>00068 <span class="comment">     */</span>
+<a name="l00069"></a>00069     apr_dbd_t *(*open)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, <span class="keyword">const</span> <span class="keywordtype">char</span> *params,
+<a name="l00070"></a>00070                        <span class="keyword">const</span> <span class="keywordtype">char</span> **error);
+<a name="l00071"></a>00071 <span class="comment"></span>
+<a name="l00072"></a>00072 <span class="comment">    /** check_conn: check status of a database connection</span>
+<a name="l00073"></a>00073 <span class="comment">     *</span>
+<a name="l00074"></a>00074 <span class="comment">     *  @param pool - a pool to use for error messages (if any).</span>
+<a name="l00075"></a>00075 <span class="comment">     *  @param handle - the connection to check</span>
+<a name="l00076"></a>00076 <span class="comment">     *  @return APR_SUCCESS or error</span>
+<a name="l00077"></a>00077 <span class="comment">     */</span>
+<a name="l00078"></a>00078     <a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*check_conn)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle);
+<a name="l00079"></a>00079 <span class="comment"></span>
+<a name="l00080"></a>00080 <span class="comment">    /** close: close/release a connection obtained from open()</span>
+<a name="l00081"></a>00081 <span class="comment">     *</span>
+<a name="l00082"></a>00082 <span class="comment">     *  @param handle - the connection to release</span>
+<a name="l00083"></a>00083 <span class="comment">     *  @return APR_SUCCESS or error</span>
+<a name="l00084"></a>00084 <span class="comment">     */</span>
+<a name="l00085"></a>00085     <a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*close)(apr_dbd_t *handle);
+<a name="l00086"></a>00086 <span class="comment"></span>
+<a name="l00087"></a>00087 <span class="comment">    /** set_dbname: select database name.  May be a no-op if not supported.</span>
+<a name="l00088"></a>00088 <span class="comment">     *</span>
+<a name="l00089"></a>00089 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00090"></a>00090 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00091"></a>00091 <span class="comment">     *  @param name - the database to select</span>
+<a name="l00092"></a>00092 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00093"></a>00093 <span class="comment">     */</span>
+<a name="l00094"></a>00094     int (*set_dbname)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>* pool, apr_dbd_t *handle, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);
+<a name="l00095"></a>00095 <span class="comment"></span>
+<a name="l00096"></a>00096 <span class="comment">    /** transaction: start a transaction.  May be a no-op.</span>
+<a name="l00097"></a>00097 <span class="comment">     *</span>
+<a name="l00098"></a>00098 <span class="comment">     *  @param pool   - a pool to use for error messages (if any).</span>
+<a name="l00099"></a>00099 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00100"></a>00100 <span class="comment">     *  @param trans  - ptr to a transaction.  May be null on entry</span>
+<a name="l00101"></a>00101 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00102"></a>00102 <span class="comment">     */</span>
+<a name="l00103"></a>00103     int (*start_transaction)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle,
+<a name="l00104"></a>00104                              apr_dbd_transaction_t **trans);
+<a name="l00105"></a>00105 <span class="comment"></span>
+<a name="l00106"></a>00106 <span class="comment">    /** end_transaction: end a transaction</span>
+<a name="l00107"></a>00107 <span class="comment">     *  (commit on success, rollback on error).</span>
+<a name="l00108"></a>00108 <span class="comment">     *  May be a no-op.</span>
+<a name="l00109"></a>00109 <span class="comment">     *</span>
+<a name="l00110"></a>00110 <span class="comment">     *  @param trans - the transaction.</span>
+<a name="l00111"></a>00111 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00112"></a>00112 <span class="comment">     */</span>
+<a name="l00113"></a>00113     int (*end_transaction)(apr_dbd_transaction_t *trans);
+<a name="l00114"></a>00114 <span class="comment"></span>
+<a name="l00115"></a>00115 <span class="comment">    /** query: execute an SQL query that doesn't return a result set</span>
+<a name="l00116"></a>00116 <span class="comment">     *</span>
+<a name="l00117"></a>00117 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00118"></a>00118 <span class="comment">     *  @param nrows - number of rows affected.</span>
+<a name="l00119"></a>00119 <span class="comment">     *  @param statement - the SQL statement to execute</span>
+<a name="l00120"></a>00120 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00121"></a>00121 <span class="comment">     */</span>
+<a name="l00122"></a>00122     int (*query)(apr_dbd_t *handle, <span class="keywordtype">int</span> *nrows, <span class="keyword">const</span> <span class="keywordtype">char</span> *statement);
+<a name="l00123"></a>00123 <span class="comment"></span>
+<a name="l00124"></a>00124 <span class="comment">    /** select: execute an SQL query that returns a result set</span>
+<a name="l00125"></a>00125 <span class="comment">     *</span>
+<a name="l00126"></a>00126 <span class="comment">     *  @param pool - pool to allocate the result set</span>
+<a name="l00127"></a>00127 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00128"></a>00128 <span class="comment">     *  @param res - pointer to result set pointer.  May point to NULL on entry</span>
+<a name="l00129"></a>00129 <span class="comment">     *  @param statement - the SQL statement to execute</span>
+<a name="l00130"></a>00130 <span class="comment">     *  @param random - 1 to support random access to results (seek any row);</span>
+<a name="l00131"></a>00131 <span class="comment">     *                  0 to support only looping through results in order</span>
+<a name="l00132"></a>00132 <span class="comment">     *                    (async access - faster)</span>
+<a name="l00133"></a>00133 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00134"></a>00134 <span class="comment">     */</span>
+<a name="l00135"></a>00135     int (*select)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, apr_dbd_results_t **res,
+<a name="l00136"></a>00136                   <span class="keyword">const</span> <span class="keywordtype">char</span> *statement, <span class="keywordtype">int</span> random);
+<a name="l00137"></a>00137 <span class="comment"></span>
+<a name="l00138"></a>00138 <span class="comment">    /** num_cols: get the number of columns in a results set</span>
+<a name="l00139"></a>00139 <span class="comment">     *</span>
+<a name="l00140"></a>00140 <span class="comment">     *  @param res - result set.</span>
+<a name="l00141"></a>00141 <span class="comment">     *  @return number of columns</span>
+<a name="l00142"></a>00142 <span class="comment">     */</span>
+<a name="l00143"></a>00143     int (*num_cols)(apr_dbd_results_t *res);
+<a name="l00144"></a>00144 <span class="comment"></span>
+<a name="l00145"></a>00145 <span class="comment">    /** num_tuples: get the number of rows in a results set</span>
+<a name="l00146"></a>00146 <span class="comment">     *  of a synchronous select</span>
+<a name="l00147"></a>00147 <span class="comment">     *</span>
+<a name="l00148"></a>00148 <span class="comment">     *  @param res - result set.</span>
+<a name="l00149"></a>00149 <span class="comment">     *  @return number of rows, or -1 if the results are asynchronous</span>
+<a name="l00150"></a>00150 <span class="comment">     */</span>
+<a name="l00151"></a>00151     int (*num_tuples)(apr_dbd_results_t *res);
+<a name="l00152"></a>00152 <span class="comment"></span>
+<a name="l00153"></a>00153 <span class="comment">    /** get_row: get a row from a result set</span>
+<a name="l00154"></a>00154 <span class="comment">     *</span>
+<a name="l00155"></a>00155 <span class="comment">     *  @param pool - pool to allocate the row</span>
+<a name="l00156"></a>00156 <span class="comment">     *  @param res - result set pointer</span>
+<a name="l00157"></a>00157 <span class="comment">     *  @param row - pointer to row pointer.  May point to NULL on entry</span>
+<a name="l00158"></a>00158 <span class="comment">     *  @param rownum - row number, or -1 for "next row".  Ignored if random</span>
+<a name="l00159"></a>00159 <span class="comment">     *                  access is not supported.</span>
+<a name="l00160"></a>00160 <span class="comment">     *  @return 0 for success, -1 for rownum out of range or data finished</span>
+<a name="l00161"></a>00161 <span class="comment">     */</span>
+<a name="l00162"></a>00162     int (*get_row)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_results_t *res,
+<a name="l00163"></a>00163                    apr_dbd_row_t **row, <span class="keywordtype">int</span> rownum);
+<a name="l00164"></a>00164   <span class="comment"></span>
+<a name="l00165"></a>00165 <span class="comment">    /** get_entry: get an entry from a row</span>
+<a name="l00166"></a>00166 <span class="comment">     *</span>
+<a name="l00167"></a>00167 <span class="comment">     *  @param row - row pointer</span>
+<a name="l00168"></a>00168 <span class="comment">     *  @param col - entry number</span>
+<a name="l00169"></a>00169 <span class="comment">     *  @param val - entry to fill</span>
+<a name="l00170"></a>00170 <span class="comment">     *  @return 0 for success, -1 for no data, +1 for general error</span>
+<a name="l00171"></a>00171 <span class="comment">     */</span>
+<a name="l00172"></a>00172     <span class="keyword">const</span> <span class="keywordtype">char</span>* (*get_entry)(<span class="keyword">const</span> apr_dbd_row_t *row, <span class="keywordtype">int</span> col);
+<a name="l00173"></a>00173   <span class="comment"></span>
+<a name="l00174"></a>00174 <span class="comment">    /** error: get current error message (if any)</span>
+<a name="l00175"></a>00175 <span class="comment">     *</span>
+<a name="l00176"></a>00176 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00177"></a>00177 <span class="comment">     *  @param errnum - error code from operation that returned an error</span>
+<a name="l00178"></a>00178 <span class="comment">     *  @return the database current error message, or message for errnum</span>
+<a name="l00179"></a>00179 <span class="comment">     *          (implementation-dependent whether errnum is ignored)</span>
+<a name="l00180"></a>00180 <span class="comment">     */</span>
+<a name="l00181"></a>00181     <span class="keyword">const</span> <span class="keywordtype">char</span> *(*error)(apr_dbd_t *handle, <span class="keywordtype">int</span> errnum);
+<a name="l00182"></a>00182   <span class="comment"></span>
+<a name="l00183"></a>00183 <span class="comment">    /** escape: escape a string so it is safe for use in query/select</span>
+<a name="l00184"></a>00184 <span class="comment">     *</span>
+<a name="l00185"></a>00185 <span class="comment">     *  @param pool - pool to alloc the result from</span>
+<a name="l00186"></a>00186 <span class="comment">     *  @param string - the string to escape</span>
+<a name="l00187"></a>00187 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00188"></a>00188 <span class="comment">     *  @return the escaped, safe string</span>
+<a name="l00189"></a>00189 <span class="comment">     */</span>
+<a name="l00190"></a>00190     <span class="keyword">const</span> <span class="keywordtype">char</span> *(*escape)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, <span class="keyword">const</span> <span class="keywordtype">char</span> *string,
+<a name="l00191"></a>00191                           apr_dbd_t *handle);
+<a name="l00192"></a>00192   <span class="comment"></span>
+<a name="l00193"></a>00193 <span class="comment">    /** prepare: prepare a statement</span>
+<a name="l00194"></a>00194 <span class="comment">     *</span>
+<a name="l00195"></a>00195 <span class="comment">     *  @param pool - pool to alloc the result from</span>
+<a name="l00196"></a>00196 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00197"></a>00197 <span class="comment">     *  @param query - the SQL query</span>
+<a name="l00198"></a>00198 <span class="comment">     *  @param label - A label for the prepared statement.</span>
+<a name="l00199"></a>00199 <span class="comment">     *                 use NULL for temporary prepared statements</span>
+<a name="l00200"></a>00200 <span class="comment">     *                 (eg within a Request in httpd)</span>
+<a name="l00201"></a>00201 <span class="comment">     *  @param nargs - number of parameters in the query</span>
+<a name="l00202"></a>00202 <span class="comment">     *  @param nvals - number of values passed in p[b]query/select</span>
+<a name="l00203"></a>00203 <span class="comment">     *  @param types - pointer to an array with types of parameters</span>
+<a name="l00204"></a>00204 <span class="comment">     *  @param statement - statement to prepare.  May point to null on entry.</span>
+<a name="l00205"></a>00205 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00206"></a>00206 <span class="comment">     */</span>
+<a name="l00207"></a>00207     int (*prepare)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, <span class="keyword">const</span> <span class="keywordtype">char</span> *query,
+<a name="l00208"></a>00208                    <span class="keyword">const</span> <span class="keywordtype">char</span> *label, <span class="keywordtype">int</span> nargs, <span class="keywordtype">int</span> nvals,
+<a name="l00209"></a>00209                    <a class="code" href="group___a_p_r___util___d_b_d.html#g19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> *types, apr_dbd_prepared_t **statement);
+<a name="l00210"></a>00210 <span class="comment"></span>
+<a name="l00211"></a>00211 <span class="comment">    /** pvquery: query using a prepared statement + args</span>
+<a name="l00212"></a>00212 <span class="comment">     *</span>
+<a name="l00213"></a>00213 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00214"></a>00214 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00215"></a>00215 <span class="comment">     *  @param nrows - number of rows affected.</span>
+<a name="l00216"></a>00216 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00217"></a>00217 <span class="comment">     *  @param args - args to prepared statement</span>
+<a name="l00218"></a>00218 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00219"></a>00219 <span class="comment">     */</span>
+<a name="l00220"></a>00220     int (*pvquery)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, <span class="keywordtype">int</span> *nrows,
+<a name="l00221"></a>00221                    apr_dbd_prepared_t *statement, va_list args);
+<a name="l00222"></a>00222 <span class="comment"></span>
+<a name="l00223"></a>00223 <span class="comment">    /** pvselect: select using a prepared statement + args</span>
+<a name="l00224"></a>00224 <span class="comment">     *</span>
+<a name="l00225"></a>00225 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00226"></a>00226 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00227"></a>00227 <span class="comment">     *  @param res - pointer to query results.  May point to NULL on entry</span>
+<a name="l00228"></a>00228 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00229"></a>00229 <span class="comment">     *  @param random - Whether to support random-access to results</span>
+<a name="l00230"></a>00230 <span class="comment">     *  @param args - args to prepared statement</span>
+<a name="l00231"></a>00231 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00232"></a>00232 <span class="comment">     */</span>
+<a name="l00233"></a>00233     int (*pvselect)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle,
+<a name="l00234"></a>00234                     apr_dbd_results_t **res,
+<a name="l00235"></a>00235                     apr_dbd_prepared_t *statement, <span class="keywordtype">int</span> random, va_list args);
+<a name="l00236"></a>00236 <span class="comment"></span>
+<a name="l00237"></a>00237 <span class="comment">    /** pquery: query using a prepared statement + args</span>
+<a name="l00238"></a>00238 <span class="comment">     *</span>
+<a name="l00239"></a>00239 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00240"></a>00240 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00241"></a>00241 <span class="comment">     *  @param nrows - number of rows affected.</span>
+<a name="l00242"></a>00242 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00243"></a>00243 <span class="comment">     *  @param args - args to prepared statement</span>
+<a name="l00244"></a>00244 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00245"></a>00245 <span class="comment">     */</span>
+<a name="l00246"></a>00246     int (*pquery)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, <span class="keywordtype">int</span> *nrows,
+<a name="l00247"></a>00247                   apr_dbd_prepared_t *statement, <span class="keyword">const</span> <span class="keywordtype">char</span> **args);
+<a name="l00248"></a>00248 <span class="comment"></span>
+<a name="l00249"></a>00249 <span class="comment">    /** pselect: select using a prepared statement + args</span>
+<a name="l00250"></a>00250 <span class="comment">     *</span>
+<a name="l00251"></a>00251 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00252"></a>00252 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00253"></a>00253 <span class="comment">     *  @param res - pointer to query results.  May point to NULL on entry</span>
+<a name="l00254"></a>00254 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00255"></a>00255 <span class="comment">     *  @param random - Whether to support random-access to results</span>
+<a name="l00256"></a>00256 <span class="comment">     *  @param args - args to prepared statement</span>
+<a name="l00257"></a>00257 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00258"></a>00258 <span class="comment">     */</span>
+<a name="l00259"></a>00259     int (*pselect)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle,
+<a name="l00260"></a>00260                    apr_dbd_results_t **res, apr_dbd_prepared_t *statement,
+<a name="l00261"></a>00261                    <span class="keywordtype">int</span> random, <span class="keyword">const</span> <span class="keywordtype">char</span> **args);
+<a name="l00262"></a>00262 
+<a name="l00263"></a>00263   <span class="comment"></span>
+<a name="l00264"></a>00264 <span class="comment">    /** get_name: get a column title from a result set</span>
+<a name="l00265"></a>00265 <span class="comment">     *</span>
+<a name="l00266"></a>00266 <span class="comment">     *  @param res - result set pointer</span>
+<a name="l00267"></a>00267 <span class="comment">     *  @param col - entry number</span>
+<a name="l00268"></a>00268 <span class="comment">     *  @return param name, or NULL if col is out of bounds.</span>
+<a name="l00269"></a>00269 <span class="comment">     */</span>
+<a name="l00270"></a>00270     <span class="keyword">const</span> <span class="keywordtype">char</span>* (*get_name)(<span class="keyword">const</span> apr_dbd_results_t *res, <span class="keywordtype">int</span> col);
+<a name="l00271"></a>00271 <span class="comment"></span>
+<a name="l00272"></a>00272 <span class="comment">    /** transaction_mode_get: get the mode of transaction</span>
+<a name="l00273"></a>00273 <span class="comment">     *</span>
+<a name="l00274"></a>00274 <span class="comment">     *  @param trans - the transaction.</span>
+<a name="l00275"></a>00275 <span class="comment">     *  @return mode of transaction</span>
+<a name="l00276"></a>00276 <span class="comment">     */</span>
+<a name="l00277"></a>00277     int (*transaction_mode_get)(apr_dbd_transaction_t *trans);
+<a name="l00278"></a>00278 <span class="comment"></span>
+<a name="l00279"></a>00279 <span class="comment">    /** transaction_mode_set: get the mode of transaction</span>
+<a name="l00280"></a>00280 <span class="comment">     *</span>
+<a name="l00281"></a>00281 <span class="comment">     *  @param trans - the transaction.</span>
+<a name="l00282"></a>00282 <span class="comment">     *  @param mode  - new mode of the transaction</span>
+<a name="l00283"></a>00283 <span class="comment">     *  @return the mode of transaction in force after the call</span>
+<a name="l00284"></a>00284 <span class="comment">     */</span>
+<a name="l00285"></a>00285     int (*transaction_mode_set)(apr_dbd_transaction_t *trans, <span class="keywordtype">int</span> mode);
+<a name="l00286"></a>00286 <span class="comment"></span>
+<a name="l00287"></a>00287 <span class="comment">    /** format of prepared statement parameters */</span>
+<a name="l00288"></a>00288     <span class="keyword">const</span> <span class="keywordtype">char</span> *pformat;
+<a name="l00289"></a>00289 <span class="comment"></span>
+<a name="l00290"></a>00290 <span class="comment">    /** pvbquery: query using a prepared statement + binary args</span>
+<a name="l00291"></a>00291 <span class="comment">     *</span>
+<a name="l00292"></a>00292 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00293"></a>00293 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00294"></a>00294 <span class="comment">     *  @param nrows - number of rows affected.</span>
+<a name="l00295"></a>00295 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00296"></a>00296 <span class="comment">     *  @param args - binary args to prepared statement</span>
+<a name="l00297"></a>00297 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00298"></a>00298 <span class="comment">     */</span>
+<a name="l00299"></a>00299     int (*pvbquery)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, <span class="keywordtype">int</span> *nrows,
+<a name="l00300"></a>00300                     apr_dbd_prepared_t *statement, va_list args);
+<a name="l00301"></a>00301 <span class="comment"></span>
+<a name="l00302"></a>00302 <span class="comment">    /** pvbselect: select using a prepared statement + binary args</span>
+<a name="l00303"></a>00303 <span class="comment">     *</span>
+<a name="l00304"></a>00304 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00305"></a>00305 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00306"></a>00306 <span class="comment">     *  @param res - pointer to query results.  May point to NULL on entry</span>
+<a name="l00307"></a>00307 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00308"></a>00308 <span class="comment">     *  @param random - Whether to support random-access to results</span>
+<a name="l00309"></a>00309 <span class="comment">     *  @param args - binary args to prepared statement</span>
+<a name="l00310"></a>00310 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00311"></a>00311 <span class="comment">     */</span>
+<a name="l00312"></a>00312     int (*pvbselect)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle,
+<a name="l00313"></a>00313                      apr_dbd_results_t **res,
+<a name="l00314"></a>00314                      apr_dbd_prepared_t *statement, <span class="keywordtype">int</span> random, va_list args);
+<a name="l00315"></a>00315 <span class="comment"></span>
+<a name="l00316"></a>00316 <span class="comment">    /** pbquery: query using a prepared statement + binary args</span>
+<a name="l00317"></a>00317 <span class="comment">     *</span>
+<a name="l00318"></a>00318 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00319"></a>00319 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00320"></a>00320 <span class="comment">     *  @param nrows - number of rows affected.</span>
+<a name="l00321"></a>00321 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00322"></a>00322 <span class="comment">     *  @param args - binary args to prepared statement</span>
+<a name="l00323"></a>00323 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00324"></a>00324 <span class="comment">     */</span>
+<a name="l00325"></a>00325     int (*pbquery)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle, <span class="keywordtype">int</span> *nrows,
+<a name="l00326"></a>00326                    apr_dbd_prepared_t *statement,<span class="keyword">const</span> <span class="keywordtype">void</span> **args);
+<a name="l00327"></a>00327 <span class="comment"></span>
+<a name="l00328"></a>00328 <span class="comment">    /** pbselect: select using a prepared statement + binary args</span>
+<a name="l00329"></a>00329 <span class="comment">     *</span>
+<a name="l00330"></a>00330 <span class="comment">     *  @param pool - working pool</span>
+<a name="l00331"></a>00331 <span class="comment">     *  @param handle - the connection</span>
+<a name="l00332"></a>00332 <span class="comment">     *  @param res - pointer to query results.  May point to NULL on entry</span>
+<a name="l00333"></a>00333 <span class="comment">     *  @param statement - the prepared statement to execute</span>
+<a name="l00334"></a>00334 <span class="comment">     *  @param random - Whether to support random-access to results</span>
+<a name="l00335"></a>00335 <span class="comment">     *  @param args - binary args to prepared statement</span>
+<a name="l00336"></a>00336 <span class="comment">     *  @return 0 for success or error code</span>
+<a name="l00337"></a>00337 <span class="comment">     */</span>
+<a name="l00338"></a>00338     int (*pbselect)(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, apr_dbd_t *handle,
+<a name="l00339"></a>00339                     apr_dbd_results_t **res, apr_dbd_prepared_t *statement,
+<a name="l00340"></a>00340                     <span class="keywordtype">int</span> random, <span class="keyword">const</span> <span class="keywordtype">void</span> **args);
+<a name="l00341"></a>00341   <span class="comment"></span>
+<a name="l00342"></a>00342 <span class="comment">    /** datum_get: get a binary entry from a row</span>
+<a name="l00343"></a>00343 <span class="comment">     *</span>
+<a name="l00344"></a>00344 <span class="comment">     *  @param row - row pointer</span>
+<a name="l00345"></a>00345 <span class="comment">     *  @param col - entry number</span>
+<a name="l00346"></a>00346 <span class="comment">     *  @param type - type of data to get</span>
+<a name="l00347"></a>00347 <span class="comment">     *  @param data - pointer to data, allocated by the caller</span>
+<a name="l00348"></a>00348 <span class="comment">     *  @return APR_SUCCESS, an error code on error or if col is out of bounds</span>
+<a name="l00349"></a>00349 <span class="comment">     */</span>
+<a name="l00350"></a>00350     <a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*datum_get)(<span class="keyword">const</span> apr_dbd_row_t *row, <span class="keywordtype">int</span> col,
+<a name="l00351"></a>00351                               <a class="code" href="group___a_p_r___util___d_b_d.html#g19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> type, <span class="keywordtype">void</span> *data);
+<a name="l00352"></a>00352 };
+<a name="l00353"></a>00353 
+<a name="l00354"></a>00354 <span class="comment">/* Export mutex lock/unlock for drivers that need it </span>
+<a name="l00355"></a>00355 <span class="comment"> * deprecated; create a per-dbd mutex within the (*init) function</span>
+<a name="l00356"></a>00356 <span class="comment"> * to avoid blocking other providers running on other threads</span>
+<a name="l00357"></a>00357 <span class="comment"> */</span>
+<a name="l00358"></a>00358 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbd_mutex_lock(<span class="keywordtype">void</span>);
+<a name="l00359"></a>00359 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbd_mutex_unlock(<span class="keywordtype">void</span>);
+<a name="l00360"></a>00360 
+<a name="l00361"></a>00361 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00362"></a>00362 <span class="preprocessor"></span>}
+<a name="l00363"></a>00363 <span class="preprocessor">#endif</span>
+<a name="l00364"></a>00364 <span class="preprocessor"></span>
+<a name="l00365"></a>00365 <span class="preprocessor">#endif</span>
+</pre></div></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:28 2009 for Apache Portable Runtime by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>

Added: apr/site/trunk/docs/docs/apr/trunk/apr__dbd__odbc__v2_8h-source.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/apr__dbd__odbc__v2_8h-source.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/apr__dbd__odbc__v2_8h-source.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/apr__dbd__odbc__v2_8h-source.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,150 @@
+<!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: apr_dbd_odbc_v2.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<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 class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</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>apr_dbd_odbc_v2.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* Licensed to the Apache Software Foundation (ASF) under one or more</span>
+<a name="l00002"></a>00002 <span class="comment"> * contributor license agreements.  See the NOTICE file distributed with</span>
+<a name="l00003"></a>00003 <span class="comment"> * this work for additional information regarding copyright ownership.</span>
+<a name="l00004"></a>00004 <span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span>
+<a name="l00005"></a>00005 <span class="comment"> * (the "License"); you may not use this file except in compliance with</span>
+<a name="l00006"></a>00006 <span class="comment"> * the License.  You may obtain a copy of the License at</span>
+<a name="l00007"></a>00007 <span class="comment"> *</span>
+<a name="l00008"></a>00008 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
+<a name="l00009"></a>00009 <span class="comment"> *</span>
+<a name="l00010"></a>00010 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
+<a name="l00011"></a>00011 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span>
+<a name="l00012"></a>00012 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<a name="l00013"></a>00013 <span class="comment"> * See the License for the specific language governing permissions and</span>
+<a name="l00014"></a>00014 <span class="comment"> * limitations under the License.</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 
+<a name="l00018"></a>00018 <span class="comment">/*  ONLY USED FOR ODBC Version 2   -DODBCV2</span>
+<a name="l00019"></a>00019 <span class="comment">*</span>
+<a name="l00020"></a>00020 <span class="comment">*   Re-define everything to work (more-or-less) in an ODBC V2 environment </span>
+<a name="l00021"></a>00021 <span class="comment">*       Random access to retrieved rows is not supported - i.e. calls to apr_dbd_select() cannot</span>
+<a name="l00022"></a>00022 <span class="comment">*       have a 'random' argument of 1.  apr_dbd_get_row() must always pass rownum as 0 (get next row)</span>
+<a name="l00023"></a>00023 <span class="comment">*</span>
+<a name="l00024"></a>00024 <span class="comment">*/</span>
+<a name="l00025"></a>00025 
+<a name="l00026"></a>00026 <span class="preprocessor">#define SQLHANDLE SQLHENV   // Presumes that ENV, DBC, and STMT handles are all the same datatype</span>
+<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#define SQL_NULL_HANDLE 0</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#define SQL_HANDLE_STMT 1</span>
+<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="preprocessor">#define SQL_HANDLE_DBC  2</span>
+<a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#define SQL_HANDLE_ENV  3</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span><span class="preprocessor">#define SQL_NO_DATA     SQL_NO_DATA_FOUND</span>
+<a name="l00032"></a>00032 <span class="preprocessor"></span>
+<a name="l00033"></a>00033 <span class="preprocessor">#ifndef SQL_SUCCEEDED</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define SQL_SUCCEEDED(rc) (((rc)&amp;(~1))==0)</span>
+<a name="l00035"></a>00035 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00036"></a>00036 <span class="preprocessor"></span>
+<a name="l00037"></a>00037 <span class="preprocessor">#undef SQLSetEnvAttr</span>
+<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define SQLSetEnvAttr(henv, Attribute, Value, StringLength)  (0)</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>
+<a name="l00040"></a>00040 <span class="preprocessor">#undef SQLAllocHandle</span>
+<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define SQLAllocHandle(type, parent, hndl) \</span>
+<a name="l00042"></a>00042 <span class="preprocessor">(     (type == SQL_HANDLE_STMT) ? SQLAllocStmt(parent, hndl) \</span>
+<a name="l00043"></a>00043 <span class="preprocessor">    : (type == SQL_HANDLE_ENV)  ? SQLAllocEnv(hndl) \</span>
+<a name="l00044"></a>00044 <span class="preprocessor">    :                             SQLAllocConnect(parent, hndl)  \</span>
+<a name="l00045"></a>00045 <span class="preprocessor">)</span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span>
+<a name="l00047"></a>00047 <span class="preprocessor">#undef SQLFreeHandle</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define SQLFreeHandle(type, hndl) \</span>
+<a name="l00049"></a>00049 <span class="preprocessor">(     (type == SQL_HANDLE_STMT) ? SQLFreeStmt(hndl, SQL_DROP) \</span>
+<a name="l00050"></a>00050 <span class="preprocessor">    : (type == SQL_HANDLE_ENV)  ? SQLFreeEnv(hndl) \</span>
+<a name="l00051"></a>00051 <span class="preprocessor">    :                             SQLFreeConnect(hndl)  \</span>
+<a name="l00052"></a>00052 <span class="preprocessor">)</span>
+<a name="l00053"></a>00053 <span class="preprocessor"></span>
+<a name="l00054"></a>00054 <span class="preprocessor">#undef SQLGetDiagRec</span>
+<a name="l00055"></a>00055 <span class="preprocessor"></span><span class="preprocessor">#define SQLGetDiagRec(type, h, i, state, native, buffer, bufsize, reslen) \</span>
+<a name="l00056"></a>00056 <span class="preprocessor">        SQLError(  (type == SQL_HANDLE_ENV) ? h : NULL, \</span>
+<a name="l00057"></a>00057 <span class="preprocessor">                   (type == SQL_HANDLE_DBC) ? h : NULL, \</span>
+<a name="l00058"></a>00058 <span class="preprocessor">                   (type == SQL_HANDLE_STMT) ? h : NULL, \</span>
+<a name="l00059"></a>00059 <span class="preprocessor">                   state, native, buffer, bufsize, reslen)</span>
+<a name="l00060"></a>00060 <span class="preprocessor"></span>
+<a name="l00061"></a>00061 <span class="preprocessor">#undef SQLCloseCursor</span>
+<a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#define SQLCloseCursor(stmt) SQLFreeStmt(stmt, SQL_CLOSE)</span>
+<a name="l00063"></a>00063 <span class="preprocessor"></span>
+<a name="l00064"></a>00064 <span class="preprocessor">#undef SQLGetConnectAttr</span>
+<a name="l00065"></a>00065 <span class="preprocessor"></span><span class="preprocessor">#define SQLGetConnectAttr(hdbc, fOption, ValuePtr, BufferLength, NULL) \</span>
+<a name="l00066"></a>00066 <span class="preprocessor">    SQLGetConnectOption(hdbc, fOption, ValuePtr)</span>
+<a name="l00067"></a>00067 <span class="preprocessor"></span>
+<a name="l00068"></a>00068 <span class="preprocessor">#undef SQLSetConnectAttr</span>
+<a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define SQLSetConnectAttr(hdbc, fOption, ValuePtr, BufferLength) \</span>
+<a name="l00070"></a>00070 <span class="preprocessor">        SQLSetConnectOption(hdbc, fOption, (SQLUINTEGER) ValuePtr)</span>
+<a name="l00071"></a>00071 <span class="preprocessor"></span>
+<a name="l00072"></a>00072 <span class="preprocessor">#undef SQLSetStmtAttr</span>
+<a name="l00073"></a>00073 <span class="preprocessor"></span><span class="preprocessor">#define SQLSetStmtAttr(hstmt, fOption, ValuePtr, BufferLength) (0); return APR_ENOTIMPL;</span>
+<a name="l00074"></a>00074 <span class="preprocessor"></span>
+<a name="l00075"></a>00075 <span class="preprocessor">#undef SQLEndTran</span>
+<a name="l00076"></a>00076 <span class="preprocessor"></span><span class="preprocessor">#define SQLEndTran(hType, hdbc,type)  SQLTransact(henv, hdbc, type)</span>
+<a name="l00077"></a>00077 <span class="preprocessor"></span>
+<a name="l00078"></a>00078 <span class="preprocessor">#undef SQLFetchScroll</span>
+<a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#define SQLFetchScroll(stmt, orient, rownum) (0); return APR_ENOTIMPL;</span>
+<a name="l00080"></a>00080 <span class="preprocessor"></span>
+<a name="l00081"></a>00081 <span class="preprocessor">#define SQL_DESC_TYPE           SQL_COLUMN_TYPE</span>
+<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#define SQL_DESC_CONCISE_TYPE   SQL_COLUMN_TYPE</span>
+<a name="l00083"></a>00083 <span class="preprocessor"></span><span class="preprocessor">#define SQL_DESC_DISPLAY_SIZE   SQL_COLUMN_DISPLAY_SIZE</span>
+<a name="l00084"></a>00084 <span class="preprocessor"></span><span class="preprocessor">#define SQL_DESC_OCTET_LENGTH   SQL_COLUMN_LENGTH</span>
+<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#define SQL_DESC_UNSIGNED       SQL_COLUMN_UNSIGNED</span>
+<a name="l00086"></a>00086 <span class="preprocessor"></span>
+<a name="l00087"></a>00087 <span class="preprocessor">#undef SQLColAttribute</span>
+<a name="l00088"></a>00088 <span class="preprocessor"></span><span class="preprocessor">#define SQLColAttribute(s, c, f, a, l, m, n) SQLColAttributes(s, c, f, a, l, m, n)</span>
+<a name="l00089"></a>00089 <span class="preprocessor"></span>
+<a name="l00090"></a>00090 <span class="preprocessor">#define SQL_ATTR_ACCESS_MODE            SQL_ACCESS_MODE</span>
+<a name="l00091"></a>00091 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_AUTOCOMMIT                     SQL_AUTOCOMMIT</span>
+<a name="l00092"></a>00092 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_CONNECTION_TIMEOUT     113</span>
+<a name="l00093"></a>00093 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_CURRENT_CATALOG        SQL_CURRENT_QUALIFIER</span>
+<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_DISCONNECT_BEHAVIOR    114</span>
+<a name="l00095"></a>00095 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_ENLIST_IN_DTC          1207</span>
+<a name="l00096"></a>00096 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_ENLIST_IN_XA           1208</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="preprocessor">#define SQL_ATTR_CONNECTION_DEAD        1209</span>
+<a name="l00099"></a>00099 <span class="preprocessor"></span><span class="preprocessor">#define SQL_CD_TRUE                                     1L              </span><span class="comment">/* Connection is closed/dead */</span>
+<a name="l00100"></a>00100 <span class="preprocessor">#define SQL_CD_FALSE                            0L              </span><span class="comment">/* Connection is open/available */</span>
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102 <span class="preprocessor">#define SQL_ATTR_LOGIN_TIMEOUT          SQL_LOGIN_TIMEOUT</span>
+<a name="l00103"></a>00103 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_ODBC_CURSORS           SQL_ODBC_CURSORS</span>
+<a name="l00104"></a>00104 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_PACKET_SIZE            SQL_PACKET_SIZE</span>
+<a name="l00105"></a>00105 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_QUIET_MODE                     SQL_QUIET_MODE</span>
+<a name="l00106"></a>00106 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_TRACE                          SQL_OPT_TRACE</span>
+<a name="l00107"></a>00107 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_TRACEFILE                      SQL_OPT_TRACEFILE</span>
+<a name="l00108"></a>00108 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_TRANSLATE_LIB          SQL_TRANSLATE_DLL</span>
+<a name="l00109"></a>00109 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_TRANSLATE_OPTION       SQL_TRANSLATE_OPTION</span>
+<a name="l00110"></a>00110 <span class="preprocessor"></span><span class="preprocessor">#define SQL_ATTR_TXN_ISOLATION          SQL_TXN_ISOLATION</span>
+<a name="l00111"></a>00111 <span class="preprocessor"></span>
+<a name="l00112"></a>00112 <span class="preprocessor">#define SQL_ATTR_CURSOR_SCROLLABLE -1</span>
+<a name="l00113"></a>00113 <span class="preprocessor"></span>
+<a name="l00114"></a>00114 <span class="preprocessor">#define SQL_C_SBIGINT   (SQL_BIGINT+SQL_SIGNED_OFFSET)     </span><span class="comment">/* SIGNED BIGINT */</span>
+<a name="l00115"></a>00115 <span class="preprocessor">#define SQL_C_UBIGINT   (SQL_BIGINT+SQL_UNSIGNED_OFFSET)   </span><span class="comment">/* UNSIGNED BIGINT */</span>
+<a name="l00116"></a>00116 
+<a name="l00117"></a>00117 <span class="preprocessor">#define SQL_FALSE           0</span>
+<a name="l00118"></a>00118 <span class="preprocessor"></span><span class="preprocessor">#define SQL_TRUE            1</span>
+<a name="l00119"></a>00119 <span class="preprocessor"></span>
+</pre></div></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:28 2009 for Apache Portable Runtime by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>

Added: apr/site/trunk/docs/docs/apr/trunk/apr__dbm_8h-source.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/apr__dbm_8h-source.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/apr__dbm_8h-source.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/apr__dbm_8h-source.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,258 @@
+<!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: apr_dbm.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<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 class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</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>apr_dbm.h</h1><a href="apr__dbm_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* Licensed to the Apache Software Foundation (ASF) under one or more</span>
+<a name="l00002"></a>00002 <span class="comment"> * contributor license agreements.  See the NOTICE file distributed with</span>
+<a name="l00003"></a>00003 <span class="comment"> * this work for additional information regarding copyright ownership.</span>
+<a name="l00004"></a>00004 <span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span>
+<a name="l00005"></a>00005 <span class="comment"> * (the "License"); you may not use this file except in compliance with</span>
+<a name="l00006"></a>00006 <span class="comment"> * the License.  You may obtain a copy of the License at</span>
+<a name="l00007"></a>00007 <span class="comment"> *</span>
+<a name="l00008"></a>00008 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
+<a name="l00009"></a>00009 <span class="comment"> *</span>
+<a name="l00010"></a>00010 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
+<a name="l00011"></a>00011 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span>
+<a name="l00012"></a>00012 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<a name="l00013"></a>00013 <span class="comment"> * See the License for the specific language governing permissions and</span>
+<a name="l00014"></a>00014 <span class="comment"> * limitations under the License.</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef APR_DBM_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define APR_DBM_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "apu.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "<a class="code" href="apr_8h.html" title="APR Platform Definitions.">apr.h</a>"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="apr__errno_8h.html" title="APR Error Codes.">apr_errno.h</a>"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "<a class="code" href="apr__pools_8h.html" title="APR memory allocation.">apr_pools.h</a>"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="apr__file__info_8h.html" title="APR File Information.">apr_file_info.h</a>"</span>
+<a name="l00025"></a>00025 
+<a name="l00026"></a>00026 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
+<a name="l00028"></a>00028 <span class="preprocessor">#endif</span>
+<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="comment"></span>
+<a name="l00030"></a>00030 <span class="comment">/**</span>
+<a name="l00031"></a>00031 <span class="comment"> * @file apr_dbm.h</span>
+<a name="l00032"></a>00032 <span class="comment"> * @brief APR-UTIL DBM library</span>
+<a name="l00033"></a>00033 <span class="comment"> */</span><span class="comment"></span>
+<a name="l00034"></a>00034 <span class="comment">/** </span>
+<a name="l00035"></a>00035 <span class="comment"> * @defgroup APR_Util_DBM DBM routines</span>
+<a name="l00036"></a>00036 <span class="comment"> * @ingroup APR_Util</span>
+<a name="l00037"></a>00037 <span class="comment"> * @{</span>
+<a name="l00038"></a>00038 <span class="comment"> */</span><span class="comment"></span>
+<a name="l00039"></a>00039 <span class="comment">/**</span>
+<a name="l00040"></a>00040 <span class="comment"> * Structure for referencing a dbm</span>
+<a name="l00041"></a>00041 <span class="comment"> */</span>
+<a name="l00042"></a><a class="code" href="group___a_p_r___util___d_b_m.html#g47f6ff771143ed7b7987c686c20c8536">00042</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> <a class="code" href="structapr__dbm__t.html">apr_dbm_t</a>;
+<a name="l00043"></a>00043 <span class="comment"></span>
+<a name="l00044"></a>00044 <span class="comment">/**</span>
+<a name="l00045"></a>00045 <span class="comment"> * Structure for referencing the datum record within a dbm</span>
+<a name="l00046"></a>00046 <span class="comment"> */</span>
+<a name="l00047"></a><a class="code" href="structapr__datum__t.html">00047</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>
+<a name="l00048"></a>00048 {<span class="comment"></span>
+<a name="l00049"></a>00049 <span class="comment">    /** pointer to the 'data' to retrieve/store in the DBM */</span>
+<a name="l00050"></a><a class="code" href="structapr__datum__t.html#7f4e0997f26d818c5674446ebb3d58bb">00050</a>     <span class="keywordtype">char</span> *dptr;<span class="comment"></span>
+<a name="l00051"></a>00051 <span class="comment">    /** size of the 'data' to retrieve/store in the DBM */</span>
+<a name="l00052"></a><a class="code" href="structapr__datum__t.html#5b58c23a5f65a8a6e3f8228fef5e429c">00052</a>     apr_size_t dsize;
+<a name="l00053"></a>00053 } <a class="code" href="structapr__datum__t.html">apr_datum_t</a>;
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="comment">/* modes to open the DB */</span>
+<a name="l00056"></a><a class="code" href="group___a_p_r___util___d_b_m.html#gcd6e9c0783bd0c232bdd02b14655b6b1">00056</a> <span class="preprocessor">#define APR_DBM_READONLY        1       </span><span class="comment">/**&lt; open for read-only access */</span>
+<a name="l00057"></a><a class="code" href="group___a_p_r___util___d_b_m.html#gf693166e76d6f84b12a0d75307687053">00057</a> <span class="preprocessor">#define APR_DBM_READWRITE       2       </span><span class="comment">/**&lt; open for read-write access */</span>
+<a name="l00058"></a><a class="code" href="group___a_p_r___util___d_b_m.html#gbf461a27dab1f4cc7405e891d2ad6522">00058</a> <span class="preprocessor">#define APR_DBM_RWCREATE        3       </span><span class="comment">/**&lt; open for r/w, create if needed */</span>
+<a name="l00059"></a><a class="code" href="group___a_p_r___util___d_b_m.html#g8bffe207158704162c24fa74dc1b9264">00059</a> <span class="preprocessor">#define APR_DBM_RWTRUNC         4       </span><span class="comment">/**&lt; open for r/w, truncating an existing</span>
+<a name="l00060"></a>00060 <span class="comment">                                          DB if present */</span>
+<a name="l00061"></a>00061 <span class="comment">/**</span>
+<a name="l00062"></a>00062 <span class="comment"> * Open a dbm file by file name and type of DBM</span>
+<a name="l00063"></a>00063 <span class="comment"> * @param dbm The newly opened database</span>
+<a name="l00064"></a>00064 <span class="comment"> * @param type The type of the DBM (not all may be available at run time)</span>
+<a name="l00065"></a>00065 <span class="comment"> * &lt;pre&gt;</span>
+<a name="l00066"></a>00066 <span class="comment"> *  db   for Berkeley DB files</span>
+<a name="l00067"></a>00067 <span class="comment"> *  gdbm for GDBM files</span>
+<a name="l00068"></a>00068 <span class="comment"> *  ndbm for NDBM files</span>
+<a name="l00069"></a>00069 <span class="comment"> *  sdbm for SDBM files (always available)</span>
+<a name="l00070"></a>00070 <span class="comment"> *  default for the default DBM type</span>
+<a name="l00071"></a>00071 <span class="comment"> *  &lt;/pre&gt;</span>
+<a name="l00072"></a>00072 <span class="comment"> * @param name The dbm file name to open</span>
+<a name="l00073"></a>00073 <span class="comment"> * @param mode The flag value</span>
+<a name="l00074"></a>00074 <span class="comment"> * &lt;PRE&gt;</span>
+<a name="l00075"></a>00075 <span class="comment"> *           APR_DBM_READONLY   open for read-only access</span>
+<a name="l00076"></a>00076 <span class="comment"> *           APR_DBM_READWRITE  open for read-write access</span>
+<a name="l00077"></a>00077 <span class="comment"> *           APR_DBM_RWCREATE   open for r/w, create if needed</span>
+<a name="l00078"></a>00078 <span class="comment"> *           APR_DBM_RWTRUNC    open for r/w, truncate if already there</span>
+<a name="l00079"></a>00079 <span class="comment"> * &lt;/PRE&gt;</span>
+<a name="l00080"></a>00080 <span class="comment"> * @param perm Permissions to apply to if created</span>
+<a name="l00081"></a>00081 <span class="comment"> * @param cntxt The pool to use when creating the dbm</span>
+<a name="l00082"></a>00082 <span class="comment"> * @remark The dbm name may not be a true file name, as many dbm packages</span>
+<a name="l00083"></a>00083 <span class="comment"> * append suffixes for seperate data and index files.</span>
+<a name="l00084"></a>00084 <span class="comment"> * @bug In apr-util 0.9 and 1.x, the type arg was case insensitive.  This</span>
+<a name="l00085"></a>00085 <span class="comment"> * was highly inefficient, and as of 2.x the dbm name must be provided in</span>
+<a name="l00086"></a>00086 <span class="comment"> * the correct case (lower case for all bundled providers)</span>
+<a name="l00087"></a>00087 <span class="comment"> */</span>
+<a name="l00088"></a>00088 
+<a name="l00089"></a>00089 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_open_ex(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> **dbm, const <span class="keywordtype">char</span>* <a class="code" href="structapr__dbm__t.html#27287213e7ebe16d9945207a13300faf">type</a>, 
+<a name="l00090"></a>00090                                        const <span class="keywordtype">char</span> *name, 
+<a name="l00091"></a>00091                                        apr_int32_t mode, <a class="code" href="group__apr__file__info.html#g3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm,
+<a name="l00092"></a>00092                                        <a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *cntxt);
+<a name="l00093"></a>00093 
+<a name="l00094"></a>00094 <span class="comment"></span>
+<a name="l00095"></a>00095 <span class="comment">/**</span>
+<a name="l00096"></a>00096 <span class="comment"> * Open a dbm file by file name</span>
+<a name="l00097"></a>00097 <span class="comment"> * @param dbm The newly opened database</span>
+<a name="l00098"></a>00098 <span class="comment"> * @param name The dbm file name to open</span>
+<a name="l00099"></a>00099 <span class="comment"> * @param mode The flag value</span>
+<a name="l00100"></a>00100 <span class="comment"> * &lt;PRE&gt;</span>
+<a name="l00101"></a>00101 <span class="comment"> *           APR_DBM_READONLY   open for read-only access</span>
+<a name="l00102"></a>00102 <span class="comment"> *           APR_DBM_READWRITE  open for read-write access</span>
+<a name="l00103"></a>00103 <span class="comment"> *           APR_DBM_RWCREATE   open for r/w, create if needed</span>
+<a name="l00104"></a>00104 <span class="comment"> *           APR_DBM_RWTRUNC    open for r/w, truncate if already there</span>
+<a name="l00105"></a>00105 <span class="comment"> * &lt;/PRE&gt;</span>
+<a name="l00106"></a>00106 <span class="comment"> * @param perm Permissions to apply to if created</span>
+<a name="l00107"></a>00107 <span class="comment"> * @param cntxt The pool to use when creating the dbm</span>
+<a name="l00108"></a>00108 <span class="comment"> * @remark The dbm name may not be a true file name, as many dbm packages</span>
+<a name="l00109"></a>00109 <span class="comment"> * append suffixes for seperate data and index files.</span>
+<a name="l00110"></a>00110 <span class="comment"> */</span>
+<a name="l00111"></a>00111 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_open(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> **dbm, const <span class="keywordtype">char</span> *name, 
+<a name="l00112"></a>00112                                        apr_int32_t mode, <a class="code" href="group__apr__file__info.html#g3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm,
+<a name="l00113"></a>00113                                        <a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *cntxt);
+<a name="l00114"></a>00114 <span class="comment"></span>
+<a name="l00115"></a>00115 <span class="comment">/**</span>
+<a name="l00116"></a>00116 <span class="comment"> * Close a dbm file previously opened by apr_dbm_open</span>
+<a name="l00117"></a>00117 <span class="comment"> * @param dbm The database to close</span>
+<a name="l00118"></a>00118 <span class="comment"> */</span>
+<a name="l00119"></a>00119 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<span class="keywordtype">void</span>) apr_dbm_close(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm);
+<a name="l00120"></a>00120 <span class="comment"></span>
+<a name="l00121"></a>00121 <span class="comment">/**</span>
+<a name="l00122"></a>00122 <span class="comment"> * Fetch a dbm record value by key</span>
+<a name="l00123"></a>00123 <span class="comment"> * @param dbm The database </span>
+<a name="l00124"></a>00124 <span class="comment"> * @param key The key datum to find this record</span>
+<a name="l00125"></a>00125 <span class="comment"> * @param pvalue The value datum retrieved for this record</span>
+<a name="l00126"></a>00126 <span class="comment"> */</span>
+<a name="l00127"></a>00127 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_fetch(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> key,
+<a name="l00128"></a>00128                                         <a class="code" href="structapr__datum__t.html">apr_datum_t</a> *pvalue);<span class="comment"></span>
+<a name="l00129"></a>00129 <span class="comment">/**</span>
+<a name="l00130"></a>00130 <span class="comment"> * Store a dbm record value by key</span>
+<a name="l00131"></a>00131 <span class="comment"> * @param dbm The database </span>
+<a name="l00132"></a>00132 <span class="comment"> * @param key The key datum to store this record by</span>
+<a name="l00133"></a>00133 <span class="comment"> * @param value The value datum to store in this record</span>
+<a name="l00134"></a>00134 <span class="comment"> */</span>
+<a name="l00135"></a>00135 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_store(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> key, 
+<a name="l00136"></a>00136                                         <a class="code" href="structapr__datum__t.html">apr_datum_t</a> value);
+<a name="l00137"></a>00137 <span class="comment"></span>
+<a name="l00138"></a>00138 <span class="comment">/**</span>
+<a name="l00139"></a>00139 <span class="comment"> * Delete a dbm record value by key</span>
+<a name="l00140"></a>00140 <span class="comment"> * @param dbm The database </span>
+<a name="l00141"></a>00141 <span class="comment"> * @param key The key datum of the record to delete</span>
+<a name="l00142"></a>00142 <span class="comment"> * @remark It is not an error to delete a non-existent record.</span>
+<a name="l00143"></a>00143 <span class="comment"> */</span>
+<a name="l00144"></a>00144 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_delete(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> key);
+<a name="l00145"></a>00145 <span class="comment"></span>
+<a name="l00146"></a>00146 <span class="comment">/**</span>
+<a name="l00147"></a>00147 <span class="comment"> * Search for a key within the dbm</span>
+<a name="l00148"></a>00148 <span class="comment"> * @param dbm The database </span>
+<a name="l00149"></a>00149 <span class="comment"> * @param key The datum describing a key to test</span>
+<a name="l00150"></a>00150 <span class="comment"> */</span>
+<a name="l00151"></a>00151 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<span class="keywordtype">int</span>) apr_dbm_exists(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> key);
+<a name="l00152"></a>00152 <span class="comment"></span>
+<a name="l00153"></a>00153 <span class="comment">/**</span>
+<a name="l00154"></a>00154 <span class="comment"> * Retrieve the first record key from a dbm</span>
+<a name="l00155"></a>00155 <span class="comment"> * @param dbm The database </span>
+<a name="l00156"></a>00156 <span class="comment"> * @param pkey The key datum of the first record</span>
+<a name="l00157"></a>00157 <span class="comment"> */</span>
+<a name="l00158"></a>00158 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_firstkey(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> *pkey);
+<a name="l00159"></a>00159 <span class="comment"></span>
+<a name="l00160"></a>00160 <span class="comment">/**</span>
+<a name="l00161"></a>00161 <span class="comment"> * Retrieve the next record key from a dbm</span>
+<a name="l00162"></a>00162 <span class="comment"> * @param dbm The database </span>
+<a name="l00163"></a>00163 <span class="comment"> * @param pkey The key datum of the next record</span>
+<a name="l00164"></a>00164 <span class="comment"> */</span>
+<a name="l00165"></a>00165 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_nextkey(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> *pkey);
+<a name="l00166"></a>00166 <span class="comment"></span>
+<a name="l00167"></a>00167 <span class="comment">/**</span>
+<a name="l00168"></a>00168 <span class="comment"> * Proactively toss any memory associated with the apr_datum_t.</span>
+<a name="l00169"></a>00169 <span class="comment"> * @param dbm The database </span>
+<a name="l00170"></a>00170 <span class="comment"> * @param data The datum to free.</span>
+<a name="l00171"></a>00171 <span class="comment"> */</span>
+<a name="l00172"></a>00172 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<span class="keywordtype">void</span>) apr_dbm_freedatum(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <a class="code" href="structapr__datum__t.html">apr_datum_t</a> data);
+<a name="l00173"></a>00173 <span class="comment"></span>
+<a name="l00174"></a>00174 <span class="comment">/**</span>
+<a name="l00175"></a>00175 <span class="comment"> * Report more information when an apr_dbm function fails.</span>
+<a name="l00176"></a>00176 <span class="comment"> * @param dbm The database</span>
+<a name="l00177"></a>00177 <span class="comment"> * @param errcode A DBM-specific value for the error (for logging). If this</span>
+<a name="l00178"></a>00178 <span class="comment"> *                isn't needed, it may be NULL.</span>
+<a name="l00179"></a>00179 <span class="comment"> * @param errbuf Location to store the error text</span>
+<a name="l00180"></a>00180 <span class="comment"> * @param errbufsize The size of the provided buffer</span>
+<a name="l00181"></a>00181 <span class="comment"> * @return The errbuf parameter, for convenience.</span>
+<a name="l00182"></a>00182 <span class="comment"> */</span>
+<a name="l00183"></a>00183 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<span class="keywordtype">char</span> *) apr_dbm_geterror(<a class="code" href="structapr__dbm__t.html">apr_dbm_t</a> *dbm, <span class="keywordtype">int</span> *<a class="code" href="structapr__dbm__t.html#130a628921f4c46241d09476f8a3090c">errcode</a>,
+<a name="l00184"></a>00184                                      <span class="keywordtype">char</span> *errbuf, apr_size_t errbufsize);<span class="comment"></span>
+<a name="l00185"></a>00185 <span class="comment">/**</span>
+<a name="l00186"></a>00186 <span class="comment"> * If the specified file/path were passed to apr_dbm_open(), return the</span>
+<a name="l00187"></a>00187 <span class="comment"> * actual file/path names which would be (created and) used. At most, two</span>
+<a name="l00188"></a>00188 <span class="comment"> * files may be used; used2 may be NULL if only one file is used.</span>
+<a name="l00189"></a>00189 <span class="comment"> * @param pool The pool for allocating used1 and used2.</span>
+<a name="l00190"></a>00190 <span class="comment"> * @param type The type of DBM you require info on @see apr_dbm_open_ex</span>
+<a name="l00191"></a>00191 <span class="comment"> * @param pathname The path name to generate used-names from.</span>
+<a name="l00192"></a>00192 <span class="comment"> * @param used1 The first pathname used by the apr_dbm implementation.</span>
+<a name="l00193"></a>00193 <span class="comment"> * @param used2 The second pathname used by apr_dbm. If only one file is</span>
+<a name="l00194"></a>00194 <span class="comment"> *              used by the specific implementation, this will be set to NULL.</span>
+<a name="l00195"></a>00195 <span class="comment"> * @return An error if the specified type is invalid.</span>
+<a name="l00196"></a>00196 <span class="comment"> * @remark The dbm file(s) don't need to exist. This function only manipulates</span>
+<a name="l00197"></a>00197 <span class="comment"> *      the pathnames.</span>
+<a name="l00198"></a>00198 <span class="comment"> */</span>
+<a name="l00199"></a>00199 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<a class="code" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_dbm_get_usednames_ex(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *<a class="code" href="structapr__dbm__t.html#f80b38e28d1504e98f9aa3308285bf9b">pool</a>,
+<a name="l00200"></a>00200                                                    const <span class="keywordtype">char</span> *type,
+<a name="l00201"></a>00201                                                    const <span class="keywordtype">char</span> *pathname,
+<a name="l00202"></a>00202                                                    const <span class="keywordtype">char</span> **used1,
+<a name="l00203"></a>00203                                                    const <span class="keywordtype">char</span> **used2);
+<a name="l00204"></a>00204 <span class="comment"></span>
+<a name="l00205"></a>00205 <span class="comment">/**</span>
+<a name="l00206"></a>00206 <span class="comment"> * If the specified file/path were passed to apr_dbm_open(), return the</span>
+<a name="l00207"></a>00207 <span class="comment"> * actual file/path names which would be (created and) used. At most, two</span>
+<a name="l00208"></a>00208 <span class="comment"> * files may be used; used2 may be NULL if only one file is used.</span>
+<a name="l00209"></a>00209 <span class="comment"> * @param pool The pool for allocating used1 and used2.</span>
+<a name="l00210"></a>00210 <span class="comment"> * @param pathname The path name to generate used-names from.</span>
+<a name="l00211"></a>00211 <span class="comment"> * @param used1 The first pathname used by the apr_dbm implementation.</span>
+<a name="l00212"></a>00212 <span class="comment"> * @param used2 The second pathname used by apr_dbm. If only one file is</span>
+<a name="l00213"></a>00213 <span class="comment"> *              used by the specific implementation, this will be set to NULL.</span>
+<a name="l00214"></a>00214 <span class="comment"> * @remark The dbm file(s) don't need to exist. This function only manipulates</span>
+<a name="l00215"></a>00215 <span class="comment"> *      the pathnames.</span>
+<a name="l00216"></a>00216 <span class="comment"> */</span>
+<a name="l00217"></a>00217 <a class="code" href="group___a_p_r___util___base64.html#gf43a293bb29d7041e6c85e90b967715f">APU_DECLARE</a>(<span class="keywordtype">void</span>) apr_dbm_get_usednames(<a class="code" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool,
+<a name="l00218"></a>00218                                         const <span class="keywordtype">char</span> *pathname,
+<a name="l00219"></a>00219                                         const <span class="keywordtype">char</span> **used1,
+<a name="l00220"></a>00220                                         const <span class="keywordtype">char</span> **used2);
+<a name="l00221"></a>00221 <span class="comment"></span>
+<a name="l00222"></a>00222 <span class="comment">/** @} */</span>
+<a name="l00223"></a>00223 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00224"></a>00224 <span class="preprocessor"></span>}
+<a name="l00225"></a>00225 <span class="preprocessor">#endif</span>
+<a name="l00226"></a>00226 <span class="preprocessor"></span>
+<a name="l00227"></a>00227 <span class="preprocessor">#endif  </span><span class="comment">/* !APR_DBM_H */</span>
+</pre></div></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:28 2009 for Apache Portable Runtime by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>



Mime
View raw message