Opening & accessing the RPM database.  
More...
|  | 
| rpmop | rpmdbOp (rpmdb db, rpmdbOpX opx) | 
|  | 
| int | rpmdbOpenAll (rpmdb db) | 
|  | 
| int | rpmdbCountPackages (rpmdb db, const char *name) | 
|  | 
| unsigned int | rpmdbGetIteratorOffset (rpmdbMatchIterator mi) | 
|  | 
| int | rpmdbGetIteratorCount (rpmdbMatchIterator mi) | 
|  | 
| unsigned int | rpmdbGetIteratorFileNum (rpmdbMatchIterator mi) | 
|  | 
| int | rpmdbAppendIterator (rpmdbMatchIterator mi, const unsigned int *hdrNums, unsigned int nHdrNums) | 
|  | 
| int | rpmdbSetIteratorRE (rpmdbMatchIterator mi, rpmTagVal 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, char **msg)) | 
|  | 
| rpmdbMatchIterator | rpmdbInitIterator (rpmdb db, rpmDbiTagVal rpmtag, const void *keyp, size_t keylen) | 
|  | 
| Header | rpmdbNextIterator (rpmdbMatchIterator mi) | 
|  | 
| rpmdbMatchIterator | rpmdbFreeIterator (rpmdbMatchIterator mi) | 
|  | 
| rpmdbIndexIterator | rpmdbIndexKeyIteratorInit (rpmdb db, rpmDbiTag rpmtag) | 
|  | 
| rpmdbIndexIterator | rpmdbIndexIteratorInit (rpmdb db, rpmDbiTag rpmtag) | 
|  | 
| int | rpmdbIndexIteratorNext (rpmdbIndexIterator ii, const void **key, size_t *keylen) | 
|  | 
| int | rpmdbIndexIteratorNextTd (rpmdbIndexIterator ii, rpmtd keytd) | 
|  | 
| unsigned int | rpmdbIndexIteratorNumPkgs (rpmdbIndexIterator ii) | 
|  | 
| unsigned int | rpmdbIndexIteratorPkgOffset (rpmdbIndexIterator ii, unsigned int nr) | 
|  | 
| unsigned int | rpmdbIndexIteratorTagNum (rpmdbIndexIterator ii, unsigned int nr) | 
|  | 
| rpmdbIndexIterator | rpmdbIndexIteratorFree (rpmdbIndexIterator ii) | 
|  | 
| int | rpmdbCtrl (rpmdb db, rpmdbCtrlOp ctrl) | 
|  | 
| char * | rpmdbCookie (rpmdb db) | 
|  | 
| int | rpmdbStat (const char *prefix, struct stat *statbuf) | 
|  | 
| int | rpmdbFStat (rpmdb db, struct stat *statbuf) | 
|  | 
Opening & accessing the RPM database. 
◆ rpmdbAppendIterator()
      
        
          | int rpmdbAppendIterator | ( | rpmdbMatchIterator | mi, | 
        
          |  |  | const unsigned int * | hdrNums, | 
        
          |  |  | unsigned int | nHdrNums ) | 
      
 
Append items to set of package instances to iterate. 
- Parameters
- 
  
    | mi | rpm database iterator |  | hdrNums | array of package instances |  | nHdrNums | number of elements in array |  
 
- Returns
- 0 on success, 1 on failure (bad args) 
 
 
◆ rpmdbCookie()
      
        
          | char * rpmdbCookie | ( | rpmdb | db | ) |  | 
      
 
Retrieve rpm database changed-cookie. Useful for eg. determining cache validity. 
- Parameters
- 
  
  
- Returns
- cookie string (malloced), or NULL on error 
 
 
◆ rpmdbCountPackages()
      
        
          | int rpmdbCountPackages | ( | rpmdb | db, | 
        
          |  |  | const char * | name ) | 
      
 
Return number of instances of package in rpm database. 
- Parameters
- 
  
    | db | rpm database |  | name | rpm package name |  
 
- Returns
- number of instances 
 
 
◆ rpmdbCtrl()
      
        
          | int rpmdbCtrl | ( | rpmdb | db, | 
        
          |  |  | rpmdbCtrlOp | ctrl ) | 
      
 
manipulate the rpm database 
- Parameters
- 
  
    | db | rpm database |  | ctrl | operation |  
 
- Returns
- 0 on success; != 0 on error 
 
 
◆ rpmdbFreeIterator()
      
        
          | rpmdbMatchIterator rpmdbFreeIterator | ( | rpmdbMatchIterator | mi | ) |  | 
      
 
Destroy rpm database iterator. 
- Parameters
- 
  
  
- Returns
- NULL always 
 
 
◆ rpmdbFStat()
      
        
          | int rpmdbFStat | ( | rpmdb | db, | 
        
          |  |  | struct stat * | statbuf ) | 
      
 
Perform stat() on an open rpm database 
- Parameters
- 
  
    |  | db | rpm database |  | [out] | statbuf | returned data from stat() |  
 
- Returns
- 0 on success, -1 on error 
 
 
◆ rpmdbGetIteratorCount()
      
        
          | int rpmdbGetIteratorCount | ( | rpmdbMatchIterator | mi | ) |  | 
      
 
Return number of elements in rpm database iterator. 
- Parameters
- 
  
  
- Returns
- number of elements 
 
 
◆ rpmdbGetIteratorFileNum()
      
        
          | unsigned int rpmdbGetIteratorFileNum | ( | rpmdbMatchIterator | mi | ) |  | 
      
 
Return index to the array of elements (eg files) being iterated. 
- Parameters
- 
  
  
- Returns
- array index 
 
 
◆ rpmdbGetIteratorOffset()
      
        
          | unsigned int rpmdbGetIteratorOffset | ( | rpmdbMatchIterator | mi | ) |  | 
      
 
Return header join key for current position of rpm database iterator. 
- Parameters
- 
  
  
- Returns
- current header join key 
 
 
◆ rpmdbIndexIteratorFree()
      
        
          | rpmdbIndexIterator rpmdbIndexIteratorFree | ( | rpmdbIndexIterator | ii | ) |  | 
      
 
Free index iterator 
- Parameters
- 
  
    | ii | index iterator return NULL |  
 
 
 
◆ rpmdbIndexIteratorInit()
      
        
          | rpmdbIndexIterator rpmdbIndexIteratorInit | ( | rpmdb | db, | 
        
          |  |  | rpmDbiTag | rpmtag ) | 
      
 
Get an iterator for an index 
- Parameters
- 
  
    | db | rpm database |  | rpmtag | the index to iterate over |  
 
- Returns
- the index iterator 
 
 
◆ rpmdbIndexIteratorNext()
      
        
          | int rpmdbIndexIteratorNext | ( | rpmdbIndexIterator | ii, | 
        
          |  |  | const void ** | key, | 
        
          |  |  | size_t * | keylen ) | 
      
 
Get the next key - Warning! Keys are not zero terminated! Binary tags may even contain zero bytes 
- Parameters
- 
  
    | ii | index iterator |  | key | address to save the pointer to the key |  | keylen | address to save the length of the key to |  
 
- Returns
- 0 on success; != 0 on error or end of index 
 
 
◆ rpmdbIndexIteratorNextTd()
      
        
          | int rpmdbIndexIteratorNextTd | ( | rpmdbIndexIterator | ii, | 
        
          |  |  | rpmtd | keytd ) | 
      
 
Get the next key into a tag data container. Caller is responsible for calling rpmtdFreeData() to freeing the data returned in keytd once done with it. 
- Parameters
- 
  
    | ii | index iterator |  | keytd | tag container to store the key in |  
 
- Returns
- 0 on success; != 0 on error or end of index 
 
 
◆ rpmdbIndexIteratorNumPkgs()
      
        
          | unsigned int rpmdbIndexIteratorNumPkgs | ( | rpmdbIndexIterator | ii | ) |  | 
      
 
Get number of entries for current key 
- Parameters
- 
  
  
- Returns
- number of entries. 0 on error. 
 
 
◆ rpmdbIndexIteratorPkgOffset()
      
        
          | unsigned int rpmdbIndexIteratorPkgOffset | ( | rpmdbIndexIterator | ii, | 
        
          |  |  | unsigned int | nr ) | 
      
 
Get package offset of entry 
- Parameters
- 
  
    | ii | index iterator |  | nr | number of the entry |  
 
- Returns
- db offset of pkg 
 
 
◆ rpmdbIndexIteratorTagNum()
      
        
          | unsigned int rpmdbIndexIteratorTagNum | ( | rpmdbIndexIterator | ii, | 
        
          |  |  | unsigned int | nr ) | 
      
 
Get tag number of entry 
- Parameters
- 
  
    | ii | index iterator |  | nr | number of the entry |  
 
- Returns
- number of tag within the package 
 
 
◆ rpmdbIndexKeyIteratorInit()
      
        
          | rpmdbIndexIterator rpmdbIndexKeyIteratorInit | ( | rpmdb | db, | 
        
          |  |  | rpmDbiTag | rpmtag ) | 
      
 
Get an iterator for index keys 
- Parameters
- 
  
    | db | rpm database |  | rpmtag | the index to iterate over |  
 
- Returns
- the index iterator 
 
 
◆ rpmdbInitIterator()
      
        
          | rpmdbMatchIterator rpmdbInitIterator | ( | rpmdb | db, | 
        
          |  |  | rpmDbiTagVal | rpmtag, | 
        
          |  |  | const void * | keyp, | 
        
          |  |  | size_t | keylen ) | 
      
 
Return database iterator. 
- Parameters
- 
  
    | db | rpm database |  | rpmtag | database index tag |  | keyp | key data (NULL for sequential access) |  | keylen | key data length (0 will use strlen(keyp)) |  
 
- Returns
- NULL on failure 
 
 
◆ rpmdbNextIterator()
      
        
          | Header rpmdbNextIterator | ( | rpmdbMatchIterator | mi | ) |  | 
      
 
Return next package header from iteration. 
- Parameters
- 
  
  
- Returns
- NULL on end of iteration. 
 
 
◆ rpmdbOp()
      
        
          | rpmop rpmdbOp | ( | rpmdb | db, | 
        
          |  |  | rpmdbOpX | opx ) | 
      
 
Retrieve operation timestamp from rpm database. 
- Parameters
- 
  
    | db | rpm database |  | opx | operation timestamp index |  
 
- Returns
- pointer to operation timestamp. 
 
 
◆ rpmdbOpenAll()
      
        
          | int rpmdbOpenAll | ( | rpmdb | db | ) |  | 
      
 
Open all database indices. 
- Parameters
- 
  
  
- Returns
- 0 on success 
 
 
◆ rpmdbSetHdrChk()
      
        
          | 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. 
- Parameters
- 
  
    | mi | rpm database iterator |  | ts | transaction set |  | (*hdrchk) | headerCheck() vector |  
 
- Returns
- 0 always 
 
 
◆ rpmdbSetIteratorModified()
      
        
          | int rpmdbSetIteratorModified | ( | rpmdbMatchIterator | mi, | 
        
          |  |  | int | modified ) | 
      
 
Modify iterator to mark header for lazy write on release. 
- Parameters
- 
  
    | mi | rpm database iterator |  | modified | new value of modified |  
 
- Returns
- previous value 
 
 
◆ rpmdbSetIteratorRE()
      
        
          | int rpmdbSetIteratorRE | ( | rpmdbMatchIterator | mi, | 
        
          |  |  | rpmTagVal | tag, | 
        
          |  |  | rpmMireMode | mode, | 
        
          |  |  | const char * | pattern ) | 
      
 
Add pattern to iterator selector. 
- Parameters
- 
  
    | mi | rpm database iterator |  | tag | rpm tag |  | mode | type of pattern match |  | pattern | pattern to match |  
 
- Returns
- 0 on success 
 
 
◆ rpmdbSetIteratorRewrite()
      
        
          | int rpmdbSetIteratorRewrite | ( | rpmdbMatchIterator | mi, | 
        
          |  |  | int | rewrite ) | 
      
 
Prepare iterator for lazy writes. 
- Note
- Must be called before rpmdbNextIterator() with CDB model database. 
- Parameters
- 
  
    | mi | rpm database iterator |  | rewrite | new value of rewrite |  
 
- Returns
- previous value 
 
 
◆ rpmdbStat()
      
        
          | int rpmdbStat | ( | const char * | prefix, | 
        
          |  |  | struct stat * | statbuf ) | 
      
 
Perform stat() on rpm database 
- Parameters
- 
  
    |  | prefix | prefix or NULL for / |  | [out] | statbuf | returned data from stat() |  
 
- Returns
- 0 on success, -1 on error