9 #include <rpm/rpmtypes.h> 10 #include <rpm/rpmsw.h> 84 int rpmdbInit(
const char * prefix,
int perms);
156 const int * hdrNums,
int nHdrNums);
168 int * hdrNums,
int nHdrNums,
int sorted);
206 rpmRC (*hdrchk) (
rpmts ts,
const void * uh,
size_t uc,
char ** msg));
217 const void * keyp,
size_t keylen);
258 rpmRC (*hdrchk) (
rpmts ts,
const void *uh,
size_t uc,
char ** msg));
271 rpmRC (*hdrchk) (
rpmts ts,
const void *uh,
size_t uc,
char ** msg));
281 rpmRC (*hdrchk) (
rpmts ts,
const void *uh,
size_t uc,
char ** msg));
rpmdbMatchIterator rpmdbInitIterator(rpmdb db, rpmTag rpmtag, const void *keyp, size_t keylen)
Return database iterator.
int rpmdbSetChrootDone(rpmdb db, int chrootDone)
Set chrootDone flag, i.e.
int rpmdbRemove(rpmdb db, int rid, unsigned int hdrNum, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, char **msg))
Remove package header from rpm database and indices.
int rpmdbOpenAll(rpmdb db)
Open all database indices.
enum rpmMireMode_e rpmMireMode
Tag value pattern match mode.
int rpmdbPruneIterator(rpmdbMatchIterator mi, int *hdrNums, int nHdrNums, int sorted)
Remove items from set of package instances to iterate.
int rpmdbRebuild(const char *prefix, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, char **msg))
Rebuild database indices from package headers.
int rpmdbSync(rpmdb db)
Sync all database indices.
int rpmdbCheckTerminate(int terminate)
Check rpmdb signal handler for trapped signal and/or requested exit, clean up any open iterators and ...
enum rpmTag_e rpmTag
Tags identify data in package headers.
rpmdb rpmdbLink(rpmdb db, const char *msg)
Reference a database instance.
int rpmdbOpen(const char *prefix, rpmdb *dbp, int mode, int perms)
Open rpm database.
Header rpmdbNextIterator(rpmdbMatchIterator mi)
Return next package header from iteration.
int rpmdbGetIteratorCount(rpmdbMatchIterator mi)
Return number of elements in rpm database iterator.
int rpmdbSetHdrChk(rpmdbMatchIterator mi, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, char **msg))
Modify iterator to verify retrieved header blobs.
rpmdbMatchIterator rpmdbFreeIterator(rpmdbMatchIterator mi)
Destroy rpm database iterator.
struct rpmdbMatchIterator_s * rpmdbMatchIterator
int rpmdbSetIteratorModified(rpmdbMatchIterator mi, int modified)
Modify iterator to mark header for lazy write on release.
rpmop rpmdbOp(rpmdb db, rpmdbOpX opx)
Retrieve operation timestamp from rpm database.
unsigned int rpmdbGetIteratorFileNum(rpmdbMatchIterator mi)
Cumulative statistics for an operation.
int rpmdbSetIteratorRewrite(rpmdbMatchIterator mi, int rewrite)
Prepare iterator for lazy writes.
int rpmdbAdd(rpmdb db, int iid, Header h, rpmts ts, rpmRC(*hdrchk)(rpmts ts, const void *uh, size_t uc, char **msg))
Add package header to rpm database and indices.
int rpmdbCloseDBI(rpmdb db, rpmTag rpmtag)
Close a single database index.
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
int rpmdbClose(rpmdb db)
Close all database indices and free rpmdb.
unsigned int rpmdbGetIteratorOffset(rpmdbMatchIterator mi)
Return header join key for current position of rpm database iterator.
rpmMireMode_e
Tag value pattern match mode.
int rpmdbCountPackages(rpmdb db, const char *name)
Return number of instances of package in rpm database.
int rpmdbSetIteratorRE(rpmdbMatchIterator mi, rpmTag tag, rpmMireMode mode, const char *pattern)
Add pattern to iterator selector.
int rpmdbAppendIterator(rpmdbMatchIterator mi, const int *hdrNums, int nHdrNums)
Append items to set of package instances to iterate.
rpmdb rpmdbUnlink(rpmdb db, const char *msg)
Unreference a database instance.
int rpmdbVerify(const char *prefix)
Verify database components.
enum rpmRC_e rpmRC
Package read return codes.
int rpmdbCheckSignals(void)
Check for and exit on termination signals.
int rpmdbInit(const char *prefix, int perms)
Initialize database.
struct headerToken_s * Header
RPM header and data retrieval types.