• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

rpmdb.h

Go to the documentation of this file.
00001 #ifndef H_RPMDB
00002 #define H_RPMDB
00003 
00009 #include <rpm/rpmtypes.h>
00010 #include <rpm/rpmsw.h>
00011 
00012 #ifdef __cplusplus
00013 extern "C" {
00014 #endif
00015 
00016 extern int _rpmdb_debug;
00017 
00021 typedef enum rpmMireMode_e {
00022     RPMMIRE_DEFAULT     = 0,    
00023     RPMMIRE_STRCMP      = 1,    
00024     RPMMIRE_REGEX       = 2,    
00025     RPMMIRE_GLOB        = 3     
00026 } rpmMireMode;
00027 
00028 typedef enum rpmdbOpX_e {
00029     RPMDB_OP_DBGET              = 1,
00030     RPMDB_OP_DBPUT              = 2,
00031     RPMDB_OP_DBDEL              = 3,
00032     RPMDB_OP_MAX                = 4
00033 } rpmdbOpX;
00034 
00041 rpmop rpmdbOp(rpmdb db, rpmdbOpX opx);
00042 
00049 int rpmdbSetChrootDone(rpmdb db, int chrootDone);
00050 
00057 rpmdb rpmdbUnlink (rpmdb db, const char * msg);
00058 
00065 rpmdb rpmdbLink (rpmdb db, const char * msg);
00066 
00075 int rpmdbOpen (const char * prefix, rpmdb * dbp,
00076                 int mode, int perms);
00077 
00084 int rpmdbInit(const char * prefix, int perms);
00085 
00091 int rpmdbVerify(const char * prefix);
00092 
00099 int rpmdbCloseDBI(rpmdb db, rpmTag rpmtag);
00100 
00106 int rpmdbClose (rpmdb db);
00107 
00113 int rpmdbSync (rpmdb db);
00114 
00120 int rpmdbOpenAll (rpmdb db);
00121 
00128 int rpmdbCountPackages(rpmdb db, const char * name);
00129 
00135 unsigned int rpmdbGetIteratorOffset(rpmdbMatchIterator mi);
00136 
00142 int rpmdbGetIteratorCount(rpmdbMatchIterator mi);
00143 
00146 unsigned int rpmdbGetIteratorFileNum(rpmdbMatchIterator mi);
00147 
00155 int rpmdbAppendIterator(rpmdbMatchIterator mi,
00156                 const int * hdrNums, int nHdrNums);
00157 
00167 int rpmdbPruneIterator(rpmdbMatchIterator mi,
00168                 int * hdrNums, int nHdrNums, int sorted);
00169 
00178 int rpmdbSetIteratorRE(rpmdbMatchIterator mi, rpmTag tag,
00179                 rpmMireMode mode, const char * pattern);
00180 
00188 int rpmdbSetIteratorRewrite(rpmdbMatchIterator mi, int rewrite);
00189 
00196 int rpmdbSetIteratorModified(rpmdbMatchIterator mi, int modified);
00197 
00205 int rpmdbSetHdrChk(rpmdbMatchIterator mi, rpmts ts,
00206         rpmRC (*hdrchk) (rpmts ts, const void * uh, size_t uc, char ** msg));
00207 
00216 rpmdbMatchIterator rpmdbInitIterator(rpmdb db, rpmTag rpmtag,
00217                         const void * keyp, size_t keylen);
00218 
00224 Header rpmdbNextIterator(rpmdbMatchIterator mi);
00225 
00229 int rpmdbCheckSignals(void);
00230 
00239 int rpmdbCheckTerminate(int terminate);
00240 
00246 rpmdbMatchIterator rpmdbFreeIterator(rpmdbMatchIterator mi);
00247 
00257 int rpmdbAdd(rpmdb db, int iid, Header h, rpmts ts,
00258              rpmRC (*hdrchk) (rpmts ts, const void *uh, size_t uc, char ** msg));
00259 
00269 int rpmdbRemove(rpmdb db, int rid, unsigned int hdrNum,
00270                 rpmts ts,
00271                 rpmRC (*hdrchk) (rpmts ts, const void *uh, size_t uc, char ** msg));
00272 
00280 int rpmdbRebuild(const char * prefix, rpmts ts,
00281                 rpmRC (*hdrchk) (rpmts ts, const void *uh, size_t uc, char ** msg));
00282 
00283 #ifdef __cplusplus
00284 }
00285 #endif
00286 
00287 #endif  /* H_RPMDB */

Generated on Mon Aug 9 2010 13:55:27 for rpm by  doxygen 1.7.1