Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

rpmdb/rpmdb.h File Reference

Access RPM indices using Berkeley DB interface(s). More...

#include <assert.h>
#include "rpmlib.h"
#include "rpmsw.h"
#include "db.h"

Go to the source code of this file.

Data Structures

struct  _dbiIndexItem
struct  _dbiIndexSet
struct  _dbiVec
struct  _dbiIndex
struct  rpmdb_s

Defines

#define rpmdbUnlink(_db, _msg)   XrpmdbUnlink(_db, _msg, __FILE__, __LINE__)
#define rpmdbLink(_db, _msg)   XrpmdbLink(_db, _msg, __FILE__, __LINE__)

Typedefs

typedef enum rpmMireMode_e rpmMireMode
 Tag value pattern match mode.

typedef _dbiIndexItemdbiIndexItem
typedef _dbiIndexSetdbiIndexSet
typedef _dbiIndexdbiIndex

Enumerations

enum  rpmMireMode_e { RPMMIRE_DEFAULT = 0, RPMMIRE_STRCMP = 1, RPMMIRE_REGEX = 2, RPMMIRE_GLOB = 3 }
 Tag value pattern match mode. More...

enum  rpmdbFlags { RPMDB_FLAG_JUSTCHECK = (1 << 0), RPMDB_FLAG_MINIMAL = (1 << 1), RPMDB_FLAG_CHROOT = (1 << 2) }

Functions

dbiIndex db3New (rpmdb rpmdb, rpmTag rpmtag)
dbiIndex db3Free (dbiIndex dbi)
const char *const  prDbiOpenFlags (int dbflags, int print_dbenv_flags)
dbiIndex dbiOpen (rpmdb db, rpmTag rpmtag, unsigned int flags)
int dbiCopen (dbiIndex dbi, DB_TXN *txnid, DBC **dbcp, unsigned int flags)
int dbiCclose (dbiIndex dbi, DBC *dbcursor, unsigned int flags)
int dbiCdup (dbiIndex dbi, DBC *dbcursor, DBC **dbcp, unsigned int flags)
int dbiDel (dbiIndex dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)
int dbiGet (dbiIndex dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)
int dbiPget (dbiIndex dbi, DBC *dbcursor, DBT *key, DBT *pkey, DBT *data, unsigned int flags)
int dbiPut (dbiIndex dbi, DBC *dbcursor, DBT *key, DBT *data, unsigned int flags)
int dbiCount (dbiIndex dbi, DBC *dbcursor, unsigned int *countp, unsigned int flags)
int dbiVerify (dbiIndex dbi, unsigned int flags)
int dbiClose (dbiIndex dbi, unsigned int flags)
int dbiSync (dbiIndex dbi, unsigned int flags)
int dbiAssociate (dbiIndex dbi, dbiIndex dbisecondary, int(*callback)(DB *, const DBT *, const DBT *, DBT *), unsigned int flags)
int dbiJoin (dbiIndex dbi, DBC **curslist, DBC **dbcp, unsigned int flags)
int dbiByteSwapped (dbiIndex dbi)
int dbiStat (dbiIndex dbi, unsigned int flags)
unsigned int rpmdbGetIteratorFileNum (rpmdbMatchIterator mi)
dbiIndexSet dbiFreeIndexSet (dbiIndexSet set)
unsigned int dbiIndexSetCount (dbiIndexSet set)
unsigned int dbiIndexRecordOffset (dbiIndexSet set, int recno)
unsigned int dbiIndexRecordFileNumber (dbiIndexSet set, int recno)
rpmdb rpmdbUnlink (rpmdb db, const char *msg)
rpmdb XrpmdbUnlink (rpmdb db, const char *msg, const char *fn, unsigned ln)
rpmdb rpmdbLink (rpmdb db, const char *msg)
rpmdb XrpmdbLink (rpmdb db, const char *msg, const char *fn, unsigned ln)
int rpmdbOpen (const char *prefix, rpmdb *dbp, int mode, int perms)
int rpmdbInit (const char *prefix, int perms)
int rpmdbVerify (const char *prefix)
int rpmdbCloseDBI (rpmdb db, int rpmtag)
 Close a single database index.

int rpmdbClose (rpmdb db)
int rpmdbSync (rpmdb db)
int rpmdbOpenAll (rpmdb db)
int rpmdbCountPackages (rpmdb db, const char *name)
unsigned int rpmdbGetIteratorOffset (rpmdbMatchIterator mi)
int rpmdbGetIteratorCount (rpmdbMatchIterator mi)
int rpmdbAppendIterator (rpmdbMatchIterator mi, const int *hdrNums, int nHdrNums)
int rpmdbPruneIterator (rpmdbMatchIterator mi, int *hdrNums, int nHdrNums, int sorted)
int rpmdbSetIteratorRE (rpmdbMatchIterator mi, rpmTag tag, rpmMireMode mode, const char *pattern)
int rpmdbSetIteratorRewrite (rpmdbMatchIterator mi, int rewrite)
int rpmdbSetIteratorModified (rpmdbMatchIterator mi, int modified)
int rpmdbSetHdrChk (rpmdbMatchIterator mi, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, const char **msg))
rpmdbMatchIterator rpmdbInitIterator (rpmdb db, rpmTag rpmtag, const void *keyp, size_t keylen)
Header rpmdbNextIterator (rpmdbMatchIterator mi)
int rpmdbCheckSignals (void)
rpmdbMatchIterator rpmdbFreeIterator (rpmdbMatchIterator mi)
int rpmdbAdd (rpmdb db, int iid, Header h, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, const char **msg))
int rpmdbRemove (rpmdb db, int rid, unsigned int hdrNum, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, const char **msg))
int rpmdbRebuild (const char *prefix, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, const char **msg))
int mergesort (void *base, size_t nmemb, size_t size, int(*cmp)(const void *, const void *))
 Mergesort, same arguments as qsort(2).


Variables

int _rpmdb_debug
int * dbiTags
int dbiTagsMax


Detailed Description

Access RPM indices using Berkeley DB interface(s).

Definition in file rpmdb.h.


Define Documentation

#define rpmdbLink _db,
_msg   )     XrpmdbLink(_db, _msg, __FILE__, __LINE__)
 

Definition at line 851 of file rpmdb.h.

Referenced by newRpmdb(), and rpmdbInitIterator().

#define rpmdbUnlink _db,
_msg   )     XrpmdbUnlink(_db, _msg, __FILE__, __LINE__)
 

Definition at line 833 of file rpmdb.h.

Referenced by rpmdbClose(), and rpmdbFreeIterator().


Typedef Documentation

typedef struct _dbiIndex* dbiIndex
 

Definition at line 53 of file rpmdb.h.

Referenced by cvtdberr(), db3associate(), db3byteswapped(), db3cclose(), db3ccount(), db3cdel(), db3cdup(), db3cget(), db3close(), db3copen(), db3cpget(), db3cput(), db3Free(), db3join(), db3New(), db3open(), db3stat(), db3sync(), db_fini(), db_init(), dbiAssociate(), dbiByteSwapped(), dbiCclose(), dbiCdup(), dbiClose(), dbiCopen(), dbiCount(), dbiDel(), dbiFindByLabel(), dbiFindMatches(), dbiGet(), dbiJoin(), dbiOpen(), dbiPget(), dbiPut(), dbiStat(), dbiSync(), dbiVerify(), dbt2set(), miFreeHeader(), openDatabase(), rpmdbAdd(), rpmdbCountPackages(), rpmdbFindByFile(), rpmdbFreeIterator(), rpmdbGrowIterator(), rpmdbInitIterator(), rpmdbNextIterator(), rpmdbRemove(), rpmpsmStage(), set2dbt(), and unsatisfiedDepend().

typedef struct _dbiIndexItem* dbiIndexItem
 

Definition at line 44 of file rpmdb.h.

Referenced by dbiIndexNewItem(), rpmdbAdd(), rpmdbFindByFile(), rpmdbFindFpList(), and rpmdbRemove().

typedef enum rpmMireMode_e rpmMireMode
 

Tag value pattern match mode.

Referenced by mireDup(), and rpmdbSetIteratorRE().


Enumeration Type Documentation

enum rpmMireMode_e
 

Tag value pattern match mode.

Enumeration values:
RPMMIRE_DEFAULT  regex with \., .* and ^...$ added
RPMMIRE_STRCMP  strings using strcmp(3)
RPMMIRE_REGEX  regex(7) patterns through regcomp(3)
RPMMIRE_GLOB  glob(7) patterns through fnmatch(3)

Definition at line 35 of file rpmdb.h.


Function Documentation

int mergesort void *  base,
size_t  nmemb,
size_t  size,
int(*  cmp)(const void *, const void *)
 

Mergesort, same arguments as qsort(2).

Definition at line 207 of file merge.c.

References CCOPY_ELT, CCOPY_LIST, errno, EVAL, ICOPY_ELT, ICOPY_LIST, ISIZE, PSIZE, and setup().

Referenced by rpmdbSortIterator().

int rpmdbCloseDBI rpmdb  db,
int  rpmtag
 

Close a single database index.

Parameters:
db rpm database
rpmtag rpm tag
Returns:
0 on success

Definition at line 780 of file rpmdb.c.

References rpmdb_s::_dbi, dbiClose(), dbiTags, dbiTagsMax, and rpmdb.

Referenced by rpmtsCheck().

rpmdb XrpmdbLink rpmdb  db,
const char *  msg,
const char *  fn,
unsigned  ln
 

Todo:
Remove debugging entry from the ABI.

Definition at line 1049 of file rpmdb.c.

References _rpmdb_debug, rpmdb_s::nrefs, and rpmdb.

rpmdb XrpmdbUnlink rpmdb  db,
const char *  msg,
const char *  fn,
unsigned  ln
 

Todo:
Remove debugging entry from the ABI.

Definition at line 1039 of file rpmdb.c.

References _rpmdb_debug, rpmdb_s::nrefs, and rpmdb.


Variable Documentation

int _rpmdb_debug
 

Definition at line 17 of file rpmdb.h.

int dbiTagsMax
 

Definition at line 813 of file rpmdb.h.

Referenced by dbiOpen(), dbiTagsInit(), dbiTagToDbix(), newRpmdb(), openDatabase(), rpmdbAdd(), rpmdbCloseDBI(), rpmdbMoveDatabase(), rpmdbOpenAll(), rpmdbRemove(), and rpmdbRemoveDatabase().


Generated on Tue Dec 28 15:13:26 2004 for rpm by doxygen 1.3.6