<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>rpm: rpmdb/rpmdb.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.4.7 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul></div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div> <h1>rpmdb/rpmdb.h File Reference</h1>Access RPM indices using Berkeley DB interface(s). <a href="#_details">More...</a> <p> <code>#include <assert.h></code><br> <code>#include "<a class="el" href="rpmlib_8h-source.html">rpmlib.h</a>"</code><br> <code>#include "<a class="el" href="rpmsw_8h-source.html">rpmsw.h</a>"</code><br> <code>#include "db.h"</code><br> <p> <a href="rpmdb_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__dbiIndexItem.html">_dbiIndexItem</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A single item from an index database (i.e. <a href="struct__dbiIndexItem.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__dbiIndexSet.html">_dbiIndexSet</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Items retrieved from the index database. <a href="struct__dbiIndexSet.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__dbiVec.html">_dbiVec</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Private methods for accessing an index database. <a href="struct__dbiVec.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__dbiIndex.html">_dbiIndex</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Describes an index database (implemented on Berkeley db3 functionality). <a href="struct__dbiIndex.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structrpmdb__s.html">rpmdb_s</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Describes the collection of index databases used by rpm. <a href="structrpmdb__s.html#_details">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#2547664ca75218f531bd03ede4d8afb5">rpmdbUnlink</a>(_db, _msg) XrpmdbUnlink(_db, _msg, __FILE__, __LINE__)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#49d4400d9a605f2bd156bc519521a012">rpmdbLink</a>(_db, _msg) XrpmdbLink(_db, _msg, __FILE__, __LINE__)</td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef enum <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e">rpmMireMode_e</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#5d484afc8c793389ed9ce400cdf7551f">rpmMireMode</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Tag value pattern match mode. <a href="#5d484afc8c793389ed9ce400cdf7551f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__dbiIndexItem.html">_dbiIndexItem</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#d9db637a67ce906db1ab48669f9deaaa">dbiIndexItem</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__dbiIndexSet.html">_dbiIndexSet</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g5799cb039d4edd97dcb0035ff1cade3b">dbiIndexSet</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A single element (i.e. <a href="group__rpmdb.html#g5799cb039d4edd97dcb0035ff1cade3b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__dbiIndex.html">_dbiIndex</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#dff70d9ae08c65cc83de7df848fc5109">dbiIndex</a></td></tr> <tr><td colspan="2"><br><h2>Enumerations</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e">rpmMireMode_e</a> { <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92eef121497d11f9c3622516f18f2f30eb9">RPMMIRE_DEFAULT</a> = 0, <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e10f053aa0bcdf57007682c0e5a34f3c6">RPMMIRE_STRCMP</a> = 1, <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e242ad3c89666107d755f82b854f5350c">RPMMIRE_REGEX</a> = 2, <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92ec157db23fef936f4c34ab326b25f1e16">RPMMIRE_GLOB</a> = 3 }</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Tag value pattern match mode. <a href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g24efbcbe19809366c2e9ba97d8ae0360">rpmdbFlags</a> { <a class="el" href="group__rpmdb.html#gg24efbcbe19809366c2e9ba97d8ae03604f7860176b4defc83f8192dec5194a23">RPMDB_FLAG_JUSTCHECK</a> = (1 << 0), <a class="el" href="group__rpmdb.html#gg24efbcbe19809366c2e9ba97d8ae03602a3503d3901f7fbf2d4e29ff875a54b0">RPMDB_FLAG_MINIMAL</a> = (1 << 1), <a class="el" href="group__rpmdb.html#gg24efbcbe19809366c2e9ba97d8ae0360ab58240e33207336c342ba141a79e397">RPMDB_FLAG_CHROOT</a> = (1 << 2) }</td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__dbiIndex.html">dbiIndex</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__db3.html#g3792cac571f6918fad03765f196177da">db3New</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> <a class="el" href="structrpmdb__s.html">rpmdb</a>, <a class="el" href="rpmlib_8h.html#d0da081a8aa5491edae4ad732d03c2f3">rpmTag</a> rpmtag)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return new configured index database handle instance. <a href="group__db3.html#g3792cac571f6918fad03765f196177da"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__dbiIndex.html">dbiIndex</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__db3.html#g7278fc746ae47c8a5425aae58078c521">db3Free</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy index database handle instance. <a href="group__db3.html#g7278fc746ae47c8a5425aae58078c521"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__db3.html#ged773a79f6743b099b86f920c6da5fc7">prDbiOpenFlags</a> (int dbflags, int print_dbenv_flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Format db3 open flags for debugging print. <a href="group__db3.html#ged773a79f6743b099b86f920c6da5fc7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__dbiIndex.html">dbiIndex</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g4dd756d922e8573a0ffef0ef0da66b58">dbiOpen</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, <a class="el" href="rpmlib_8h.html#d0da081a8aa5491edae4ad732d03c2f3">rpmTag</a> rpmtag, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return handle for an index database. <a href="group__dbi.html#g4dd756d922e8573a0ffef0ef0da66b58"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g4dbff9b3f44c223ee2b5c0ed9779e9ba">dbiCopen</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DB_TXN *txnid, DBC **dbcp, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Open a database cursor. <a href="group__dbi.html#g4dbff9b3f44c223ee2b5c0ed9779e9ba"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#gd5cddc3565e00c0d45e4b4c605af6b57">dbiCclose</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close a database cursor. <a href="group__dbi.html#gd5cddc3565e00c0d45e4b4c605af6b57"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g2bec3c4d5070890d88bb7a28c1b9b4e3">dbiCdup</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, DBC **dbcp, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Duplicate a database cursor. <a href="group__dbi.html#g2bec3c4d5070890d88bb7a28c1b9b4e3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g07eaeec415448e798525cdd7c1eabb28">dbiDel</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Delete (key,data) pair(s) from index database. <a href="group__dbi.html#g07eaeec415448e798525cdd7c1eabb28"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g55b0af119b154e5930358ec710acb225">dbiGet</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve (key,data) pair from index database. <a href="group__dbi.html#g55b0af119b154e5930358ec710acb225"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g787eaea85acab126393871e66883e7cf">dbiPget</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, DBT *key, DBT *pkey, DBT *data, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve (key,data) pair using dbcursor->c_pget. <a href="group__dbi.html#g787eaea85acab126393871e66883e7cf"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g45ed1c15426c14fef946635385b0b93e">dbiPut</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store (key,data) pair in index database. <a href="group__dbi.html#g45ed1c15426c14fef946635385b0b93e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g0652bc0541eb257a23ef2c8918efe662">dbiCount</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC *dbcursor, unsigned int *countp, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve count of (possible) duplicate items. <a href="group__dbi.html#g0652bc0541eb257a23ef2c8918efe662"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#gac80edfaa1a4acf5d833666a857e32c3">dbiVerify</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Verify (and close) index database. <a href="group__dbi.html#gac80edfaa1a4acf5d833666a857e32c3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#ga8f6e30977a3ce117c94566f1f95db63">dbiClose</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close index database. <a href="group__dbi.html#ga8f6e30977a3ce117c94566f1f95db63"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g93042bd804c966ddf004774a7536ae66">dbiSync</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Flush pending operations to disk. <a href="group__dbi.html#g93042bd804c966ddf004774a7536ae66"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g49d91a6a025512f5b5676ee869a07d03">dbiAssociate</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, <a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbisecondary, int(*callback)(DB *, const DBT *, const DBT *, DBT *), unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Associate secondary database with primary. <a href="group__dbi.html#g49d91a6a025512f5b5676ee869a07d03"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#gb9b9349064b7b5f08951145344aa275a">dbiJoin</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, DBC **curslist, DBC **dbcp, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return join cursor for list of cursors. <a href="group__dbi.html#gb9b9349064b7b5f08951145344aa275a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#gf7b1038882e4fac6bfd5530dbd53d7ee">dbiByteSwapped</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is database byte swapped? <a href="group__dbi.html#gf7b1038882e4fac6bfd5530dbd53d7ee"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g4f4cd96c25624f22d4c2732b9641c982">dbiStat</a> (<a class="el" href="struct__dbiIndex.html">dbiIndex</a> dbi, unsigned int flags)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is database byte swapped? <a href="group__dbi.html#g4f4cd96c25624f22d4c2732b9641c982"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g29c0127269b1e724bab21c1242317122">rpmdbGetIteratorFileNum</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__dbiIndexSet.html">dbiIndexSet</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g0f8bc037369f2926c5746cdd98a449b1">dbiFreeIndexSet</a> (<a class="el" href="struct__dbiIndexSet.html">dbiIndexSet</a> set)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy set of index database items. <a href="group__dbi.html#g0f8bc037369f2926c5746cdd98a449b1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g09eaccb4d6ede3c6398c69e2c43d4719">dbiIndexSetCount</a> (<a class="el" href="struct__dbiIndexSet.html">dbiIndexSet</a> set)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Count items in index database set. <a href="group__dbi.html#g09eaccb4d6ede3c6398c69e2c43d4719"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g69b7e0fd9a48219c4778fdd35d9992e3">dbiIndexRecordOffset</a> (<a class="el" href="struct__dbiIndexSet.html">dbiIndexSet</a> set, int recno)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return record offset of header from element in index database set. <a href="group__dbi.html#g69b7e0fd9a48219c4778fdd35d9992e3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dbi.html#g486311b0df539761688ad88d71aca225">dbiIndexRecordFileNumber</a> (<a class="el" href="struct__dbiIndexSet.html">dbiIndexSet</a> set, int recno)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return file index from element in index database set. <a href="group__dbi.html#g486311b0df539761688ad88d71aca225"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gc1174363a619746de00eb9570c3e5ec1">rpmdbUnlink</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, const char *msg)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unreference a database instance. <a href="group__rpmdb.html#gc1174363a619746de00eb9570c3e5ec1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#832acac44b9bf9ed7473ebc6c72981b2">XrpmdbUnlink</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, const char *msg, const char *fn, unsigned ln)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g5315a60d3139731e0308ad30208ae839">rpmdbLink</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, const char *msg)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Reference a database instance. <a href="group__rpmdb.html#g5315a60d3139731e0308ad30208ae839"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#33b3c8f710c51b99e0033f6dad051814">XrpmdbLink</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, const char *msg, const char *fn, unsigned ln)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g803b20c733ed24a4e2361b8ab557b436">rpmdbOpen</a> (const char *prefix, <a class="el" href="structrpmdb__s.html">rpmdb</a> *dbp, int mode, int perms)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Open rpm database. <a href="group__rpmdb.html#g803b20c733ed24a4e2361b8ab557b436"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gcf517c5c8cb7eb61e6332e4ddabc91c8">rpmdbInit</a> (const char *prefix, int perms)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize database. <a href="group__rpmdb.html#gcf517c5c8cb7eb61e6332e4ddabc91c8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g239060fa5ee54a365933a7a433006b52">rpmdbVerify</a> (const char *prefix)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Verify database components. <a href="group__rpmdb.html#g239060fa5ee54a365933a7a433006b52"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#7b663c461a2569587c71dbc53c579cca">rpmdbCloseDBI</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, int rpmtag)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close a single database index. <a href="#7b663c461a2569587c71dbc53c579cca"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g6a784cca3ad8e152c47ce6e830673e8a">rpmdbClose</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close all database indices and free rpmdb. <a href="group__rpmdb.html#g6a784cca3ad8e152c47ce6e830673e8a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#ge03accdb0f64c9d77fa3ad16ac805304">rpmdbSync</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sync all database indices. <a href="group__rpmdb.html#ge03accdb0f64c9d77fa3ad16ac805304"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gc046aa1ef6c0d47b3857ff6afd6af3e6">rpmdbOpenAll</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Open all database indices. <a href="group__rpmdb.html#gc046aa1ef6c0d47b3857ff6afd6af3e6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g411b4d901d2f4953f9674c104973d4f8">rpmdbCountPackages</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, const char *<a class="el" href="structname.html">name</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return number of instances of package in rpm database. <a href="group__rpmdb.html#g411b4d901d2f4953f9674c104973d4f8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g4fefb65ede996aa0edcc80286ca640d1">rpmdbGetIteratorOffset</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return header join key for current position of rpm database iterator. <a href="group__rpmdb.html#g4fefb65ede996aa0edcc80286ca640d1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g0b2fac12a598a46a3f0780fab05839a0">rpmdbGetIteratorCount</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return number of elements in rpm database iterator. <a href="group__rpmdb.html#g0b2fac12a598a46a3f0780fab05839a0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g41cfde52641abf73ba0f8684fe287ff1">rpmdbAppendIterator</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, const int *hdrNums, int nHdrNums)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Append items to set of package instances to iterate. <a href="group__rpmdb.html#g41cfde52641abf73ba0f8684fe287ff1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gf3dbe5ef1b760500851695954956fdfe">rpmdbPruneIterator</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, int *hdrNums, int nHdrNums, int sorted)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove items from set of package instances to iterate. <a href="group__rpmdb.html#gf3dbe5ef1b760500851695954956fdfe"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g8a31a5d7e8f728784d6cf52b620bf818">rpmdbSetIteratorRE</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, <a class="el" href="rpmlib_8h.html#d0da081a8aa5491edae4ad732d03c2f3">rpmTag</a> tag, <a class="el" href="rpmdb_8h.html#5d484afc8c793389ed9ce400cdf7551f">rpmMireMode</a> mode, const char *pattern)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add pattern to iterator selector. <a href="group__rpmdb.html#g8a31a5d7e8f728784d6cf52b620bf818"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gcb4ad7f6238ce9caaa37b7c7dc6cec69">rpmdbSetIteratorRewrite</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, int rewrite)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Prepare iterator for lazy writes. <a href="group__rpmdb.html#gcb4ad7f6238ce9caaa37b7c7dc6cec69"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#ga21b317118dfc602bbe4636222842e39">rpmdbSetIteratorModified</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, int modified)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Modify iterator to mark header for lazy write on release. <a href="group__rpmdb.html#ga21b317118dfc602bbe4636222842e39"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gb2d00f89638baf26fd761a6ea95bc530">rpmdbSetHdrChk</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi, <a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, <a class="el" href="rpmlib_8h.html#06da857c39457bfb6ea9049643fdb706">rpmRC</a>(*hdrchk)(<a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, const void *uh, size_t uc, const char **msg))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Modify iterator to verify retrieved header blobs. <a href="group__rpmdb.html#gb2d00f89638baf26fd761a6ea95bc530"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#gaa190ebe0d275e0f46b6ed9561ed33e2">rpmdbInitIterator</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, <a class="el" href="rpmlib_8h.html#d0da081a8aa5491edae4ad732d03c2f3">rpmTag</a> rpmtag, const void *keyp, size_t keylen)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return database iterator. <a href="group__rpmdb.html#gaa190ebe0d275e0f46b6ed9561ed33e2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structheaderToken__s.html">Header</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#ga20413aa4018cf32e700decc7dba83f3">rpmdbNextIterator</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return next package header from iteration. <a href="group__rpmdb.html#ga20413aa4018cf32e700decc7dba83f3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g31b6263b2a1b5a854a4183fbcf4a7581">rpmdbCheckSignals</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check for and exit on termination signals. <a href="group__rpmdb.html#g31b6263b2a1b5a854a4183fbcf4a7581"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g4e3c2f83aa71faae4c511fcc4d215e4d">rpmdbCheckTerminate</a> (int terminate)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check rpmdb signal handler for trapped signal and/or requested exit, clean up any open iterators and databases on termination condition. <a href="group__rpmdb.html#g4e3c2f83aa71faae4c511fcc4d215e4d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g7d328106a65ab43bbef20b9897e463a4">rpmdbFreeIterator</a> (<a class="el" href="struct__rpmdbMatchIterator.html">rpmdbMatchIterator</a> mi)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy rpm database iterator. <a href="group__rpmdb.html#g7d328106a65ab43bbef20b9897e463a4"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g3ecc67fc1e93747c6314cb6a0fc05197">rpmdbAdd</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, int iid, <a class="el" href="structheaderToken__s.html">Header</a> h, <a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, <a class="el" href="rpmlib_8h.html#06da857c39457bfb6ea9049643fdb706">rpmRC</a>(*hdrchk)(<a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, const void *uh, size_t uc, const char **msg))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add package header to rpm database and indices. <a href="group__rpmdb.html#g3ecc67fc1e93747c6314cb6a0fc05197"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g82aaf2d4daa20c89318a3025eff5a2b6">rpmdbRemove</a> (<a class="el" href="structrpmdb__s.html">rpmdb</a> db, int rid, unsigned int hdrNum, <a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, <a class="el" href="rpmlib_8h.html#06da857c39457bfb6ea9049643fdb706">rpmRC</a>(*hdrchk)(<a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, const void *uh, size_t uc, const char **msg))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove package header from rpm database and indices. <a href="group__rpmdb.html#g82aaf2d4daa20c89318a3025eff5a2b6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#g4d26d136cd34320cf0f0a10e846b3307">rpmdbRebuild</a> (const char *prefix, <a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, <a class="el" href="rpmlib_8h.html#06da857c39457bfb6ea9049643fdb706">rpmRC</a>(*hdrchk)(<a class="el" href="rpmlib_8h.html#1a512138316a227059ca128597dbd464">rpmts</a> ts, const void *uh, size_t uc, const char **msg))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Rebuild database indices from package headers. <a href="group__rpmdb.html#g4d26d136cd34320cf0f0a10e846b3307"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#d5b80d228a80a7b24e0013b92005fd95">mergesort</a> (void *base, size_t nmemb, size_t size, int(*cmp)(const void *, const void *))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Mergesort, same arguments as qsort(2). <a href="#d5b80d228a80a7b24e0013b92005fd95"></a><br></td></tr> <tr><td colspan="2"><br><h2>Variables</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#2af73bfa54f40c03158ae5cb6ac09216">_rpmdb_debug</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmdb.html#ga7534e6bf743a2b31a8dee8433b75f12">dbiTags</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Tags for which rpmdb indices will be built. <a href="group__rpmdb.html#ga7534e6bf743a2b31a8dee8433b75f12"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmdb_8h.html#4d950401cccdb8690ebdc83e75d62a3f">dbiTagsMax</a></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Access RPM indices using Berkeley DB interface(s). <p> <p> Definition in file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>.<hr><h2>Define Documentation</h2> <a class="anchor" name="49d4400d9a605f2bd156bc519521a012"></a><!-- doxytag: member="rpmdb.h::rpmdbLink" ref="49d4400d9a605f2bd156bc519521a012" args="(_db, _msg)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define rpmdbLink </td> <td>(</td> <td class="paramtype">_db, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">_msg </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> XrpmdbLink(_db, _msg, __FILE__, __LINE__)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8h-source.html#l00852">852</a> of file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>. <p> Referenced by <a class="el" href="rpmdb_8c-source.html#l00963">newRpmdb()</a>, and <a class="el" href="rpmdb_8c-source.html#l02503">rpmdbInitIterator()</a>. </div> </div><p> <a class="anchor" name="2547664ca75218f531bd03ede4d8afb5"></a><!-- doxytag: member="rpmdb.h::rpmdbUnlink" ref="2547664ca75218f531bd03ede4d8afb5" args="(_db, _msg)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define rpmdbUnlink </td> <td>(</td> <td class="paramtype">_db, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">_msg </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> XrpmdbUnlink(_db, _msg, __FILE__, __LINE__)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8h-source.html#l00834">834</a> of file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>. <p> Referenced by <a class="el" href="rpmdb_8c-source.html#l00886">rpmdbClose()</a>. </div> </div><p> <hr><h2>Typedef Documentation</h2> <a class="anchor" name="dff70d9ae08c65cc83de7df848fc5109"></a><!-- doxytag: member="rpmdb.h::dbiIndex" ref="dff70d9ae08c65cc83de7df848fc5109" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="struct__dbiIndex.html">_dbiIndex</a>* <a class="el" href="struct__dbiIndex.html">dbiIndex</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8h-source.html#l00053">53</a> of file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>. </div> </div><p> <a class="anchor" name="d9db637a67ce906db1ab48669f9deaaa"></a><!-- doxytag: member="rpmdb.h::dbiIndexItem" ref="d9db637a67ce906db1ab48669f9deaaa" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="struct__dbiIndexItem.html">_dbiIndexItem</a>* <a class="el" href="struct__dbiIndexItem.html">dbiIndexItem</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8h-source.html#l00044">44</a> of file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>. </div> </div><p> <a class="anchor" name="5d484afc8c793389ed9ce400cdf7551f"></a><!-- doxytag: member="rpmdb.h::rpmMireMode" ref="5d484afc8c793389ed9ce400cdf7551f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef enum <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e">rpmMireMode_e</a> <a class="el" href="rpmdb_8h.html#5d484afc8c793389ed9ce400cdf7551f">rpmMireMode</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Tag value pattern match mode. <p> </div> </div><p> <hr><h2>Enumeration Type Documentation</h2> <a class="anchor" name="3590a1de30d95ec5698863667d77d92e"></a><!-- doxytag: member="rpmdb.h::rpmMireMode_e" ref="3590a1de30d95ec5698863667d77d92e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="rpmdb_8h.html#3590a1de30d95ec5698863667d77d92e">rpmMireMode_e</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Tag value pattern match mode. <p> <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="3590a1de30d95ec5698863667d77d92eef121497d11f9c3622516f18f2f30eb9"></a><!-- doxytag: member="RPMMIRE_DEFAULT" ref="3590a1de30d95ec5698863667d77d92eef121497d11f9c3622516f18f2f30eb9" args="" -->RPMMIRE_DEFAULT</em> </td><td> regex with \., .* and ^...$ added </td></tr> <tr><td valign="top"><em><a class="anchor" name="3590a1de30d95ec5698863667d77d92e10f053aa0bcdf57007682c0e5a34f3c6"></a><!-- doxytag: member="RPMMIRE_STRCMP" ref="3590a1de30d95ec5698863667d77d92e10f053aa0bcdf57007682c0e5a34f3c6" args="" -->RPMMIRE_STRCMP</em> </td><td> strings using strcmp(3) </td></tr> <tr><td valign="top"><em><a class="anchor" name="3590a1de30d95ec5698863667d77d92e242ad3c89666107d755f82b854f5350c"></a><!-- doxytag: member="RPMMIRE_REGEX" ref="3590a1de30d95ec5698863667d77d92e242ad3c89666107d755f82b854f5350c" args="" -->RPMMIRE_REGEX</em> </td><td> regex(7) patterns through regcomp(3) </td></tr> <tr><td valign="top"><em><a class="anchor" name="3590a1de30d95ec5698863667d77d92ec157db23fef936f4c34ab326b25f1e16"></a><!-- doxytag: member="RPMMIRE_GLOB" ref="3590a1de30d95ec5698863667d77d92ec157db23fef936f4c34ab326b25f1e16" args="" -->RPMMIRE_GLOB</em> </td><td> glob(7) patterns through fnmatch(3) </td></tr> </table> </dl> <p> Definition at line <a class="el" href="rpmdb_8h-source.html#l00035">35</a> of file <a class="el" href="rpmdb_8h-source.html">rpmdb.h</a>. </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="d5b80d228a80a7b24e0013b92005fd95"></a><!-- doxytag: member="rpmdb.h::mergesort" ref="d5b80d228a80a7b24e0013b92005fd95" args="(void *base, size_t nmemb, size_t size, int(*cmp)(const void *, const void *))" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mergesort </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"> <em>base</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>nmemb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>size</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int(*)(const void *, const void *) </td> <td class="paramname"> <em>cmp</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Mergesort, same arguments as qsort(2). <p> <p> Definition at line <a class="el" href="merge_8c-source.html#l00208">208</a> of file <a class="el" href="merge_8c-source.html">merge.c</a>. <p> References <a class="el" href="merge_8c-source.html#l00074">CCOPY_ELT</a>, <a class="el" href="merge_8c-source.html#l00070">CCOPY_LIST</a>, <a class="el" href="system_8h.html#d65a8842cc674e3ddf69355898c0ecbf">errno</a>, <a class="el" href="merge_8c-source.html#l00085">EVAL</a>, <a class="el" href="merge_8c-source.html#l00065">ICOPY_ELT</a>, <a class="el" href="merge_8c-source.html#l00061">ICOPY_LIST</a>, <a class="el" href="merge_8c-source.html#l00059">ISIZE</a>, <a class="el" href="merge_8c-source.html#l00060">PSIZE</a>, and <a class="el" href="merge_8c-source.html#l00136">setup()</a>. <p> Referenced by <a class="el" href="rpmdb_8c-source.html#l02388">rpmdbSortIterator()</a>. </div> </div><p> <a class="anchor" name="7b663c461a2569587c71dbc53c579cca"></a><!-- doxytag: member="rpmdb.h::rpmdbCloseDBI" ref="7b663c461a2569587c71dbc53c579cca" args="(rpmdb db, int rpmtag)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int rpmdbCloseDBI </td> <td>(</td> <td class="paramtype"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td> <td class="paramname"> <em>db</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>rpmtag</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Close a single database index. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>db</em> </td><td>rpm database </td></tr> <tr><td valign="top"></td><td valign="top"><em>rpmtag</em> </td><td>rpm tag </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>0 on success </dd></dl> <p> Definition at line <a class="el" href="rpmdb_8c-source.html#l00858">858</a> of file <a class="el" href="rpmdb_8c-source.html">rpmdb.c</a>. <p> References <a class="el" href="rpmdb_8h-source.html#l00431">rpmdb_s::_dbi</a>, <a class="el" href="rpmdb_8h-source.html#l00683">dbiClose()</a>, <a class="el" href="rpmdb_8c-source.html#l00061">dbiTags</a>, and <a class="el" href="rpmdb_8c-source.html#l00063">dbiTagsMax</a>. <p> Referenced by <a class="el" href="depends_8c-source.html#l01706">rpmtsCheck()</a>. </div> </div><p> <a class="anchor" name="33b3c8f710c51b99e0033f6dad051814"></a><!-- doxytag: member="rpmdb.h::XrpmdbLink" ref="33b3c8f710c51b99e0033f6dad051814" args="(rpmdb db, const char *msg, const char *fn, unsigned ln)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structrpmdb__s.html">rpmdb</a> XrpmdbLink </td> <td>(</td> <td class="paramtype"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td> <td class="paramname"> <em>db</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>msg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>fn</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned </td> <td class="paramname"> <em>ln</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <dl compact><dt><b><a class="el" href="todo.html#_todo000099">Todo:</a></b></dt><dd>Remove debugging entry from the ABI. </dd></dl> <p> Definition at line <a class="el" href="rpmdb_8c-source.html#l01140">1140</a> of file <a class="el" href="rpmdb_8c-source.html">rpmdb.c</a>. <p> References <a class="el" href="rpmdb_8c-source.html#l00049">_rpmdb_debug</a>, and <a class="el" href="rpmdb_8h-source.html#l00438">rpmdb_s::nrefs</a>. </div> </div><p> <a class="anchor" name="832acac44b9bf9ed7473ebc6c72981b2"></a><!-- doxytag: member="rpmdb.h::XrpmdbUnlink" ref="832acac44b9bf9ed7473ebc6c72981b2" args="(rpmdb db, const char *msg, const char *fn, unsigned ln)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structrpmdb__s.html">rpmdb</a> XrpmdbUnlink </td> <td>(</td> <td class="paramtype"><a class="el" href="structrpmdb__s.html">rpmdb</a> </td> <td class="paramname"> <em>db</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>msg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>fn</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned </td> <td class="paramname"> <em>ln</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <dl compact><dt><b><a class="el" href="todo.html#_todo000098">Todo:</a></b></dt><dd>Remove debugging entry from the ABI. </dd></dl> <p> Definition at line <a class="el" href="rpmdb_8c-source.html#l01130">1130</a> of file <a class="el" href="rpmdb_8c-source.html">rpmdb.c</a>. <p> References <a class="el" href="rpmdb_8c-source.html#l00049">_rpmdb_debug</a>, and <a class="el" href="rpmdb_8h-source.html#l00438">rpmdb_s::nrefs</a>. </div> </div><p> <hr><h2>Variable Documentation</h2> <a class="anchor" name="2af73bfa54f40c03158ae5cb6ac09216"></a><!-- doxytag: member="rpmdb.h::_rpmdb_debug" ref="2af73bfa54f40c03158ae5cb6ac09216" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int <a class="el" href="rpmdb_8h.html#2af73bfa54f40c03158ae5cb6ac09216">_rpmdb_debug</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8c-source.html#l00049">49</a> of file <a class="el" href="rpmdb_8c-source.html">rpmdb.c</a>. </div> </div><p> <a class="anchor" name="4d950401cccdb8690ebdc83e75d62a3f"></a><!-- doxytag: member="rpmdb.h::dbiTagsMax" ref="4d950401cccdb8690ebdc83e75d62a3f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int <a class="el" href="rpmdb_8h.html#4d950401cccdb8690ebdc83e75d62a3f">dbiTagsMax</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="rpmdb_8c-source.html#l00063">63</a> of file <a class="el" href="rpmdb_8c-source.html">rpmdb.c</a>. <p> Referenced by <a class="el" href="rpmdb_8c-source.html#l00265">dbiOpen()</a>, <a class="el" href="rpmdb_8c-source.html#l00178">dbiTagsInit()</a>, <a class="el" href="rpmdb_8c-source.html#l00160">dbiTagToDbix()</a>, <a class="el" href="rpmdb_8c-source.html#l00963">newRpmdb()</a>, <a class="el" href="rpmdb_8c-source.html#l01034">openDatabase()</a>, <a class="el" href="rpmdb_8c-source.html#l02952">rpmdbAdd()</a>, <a class="el" href="rpmdb_8c-source.html#l00858">rpmdbCloseDBI()</a>, <a class="el" href="rpmdb_8c-source.html#l03654">rpmdbMoveDatabase()</a>, <a class="el" href="rpmdb_8c-source.html#l00839">rpmdbOpenAll()</a>, <a class="el" href="rpmdb_8c-source.html#l02645">rpmdbRemove()</a>, and <a class="el" href="rpmdb_8c-source.html#l03596">rpmdbRemoveDatabase()</a>. </div> </div><p> <hr size="1"><address style="align: right;"><small>Generated on 1 Oct 2013 for rpm by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address> </body> </html>