rpm  5.2.1
Macros | Typedefs | Enumerations | Functions | Variables
rpmts.h File Reference

Structures and prototypes used for an "rpmts" transaction set. More...

#include "rpmps.h"
#include "rpmsw.h"
#include "rpmsx.h"
#include <rpmpgp.h>
Include dependency graph for rpmts.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define _noTransScripts
 
#define _noTransTriggers
 
#define rpmtsUnlink(_ts, _msg)   ((rpmts) rpmioUnlinkPoolItem((rpmioItem)(_ts), _msg, __FILE__, __LINE__))
 
#define rpmtsLink(_ts, _msg)   ((rpmts) rpmioLinkPoolItem((rpmioItem)(_ts), _msg, __FILE__, __LINE__))
 
#define rpmtsFree(_ts)   ((rpmts) rpmioFreePoolItem((rpmioItem)(_ts), __FUNCTION__, __FILE__, __LINE__))
 

Typedefs

typedef pgpVSFlags rpmVSFlags
 Bit(s) to control digest and signature verification. More...
 
typedef enum rpmdepFlags_e rpmdepFlags
 Bit(s) to control rpmtsCheck() and rpmtsOrder() operation. More...
 
typedef enum rpmtransFlags_e rpmtransFlags
 Bit(s) to control rpmtsRun() operation. More...
 
typedef enum rpmtsOpX_e rpmtsOpX
 Indices for timestamps. More...
 
typedef enum rpmTSType_e rpmTSType
 Transaction Types. More...
 
typedef enum tsStage_e tsmStage
 

Enumerations

enum  rpmdepFlags_e {
  RPMDEPS_FLAG_NONE = 0, RPMDEPS_FLAG_NOUPGRADE = (1 << 0), RPMDEPS_FLAG_NOREQUIRES = (1 << 1), RPMDEPS_FLAG_NOCONFLICTS = (1 << 2),
  RPMDEPS_FLAG_NOOBSOLETES = (1 << 3), RPMDEPS_FLAG_NOPARENTDIRS = (1 << 4), RPMDEPS_FLAG_NOLINKTOS = (1 << 5), RPMDEPS_FLAG_ANACONDA = (1 << 6),
  RPMDEPS_FLAG_NOSUGGEST = (1 << 7), RPMDEPS_FLAG_ADDINDEPS = (1 << 8), RPMDEPS_FLAG_DEPLOOPS = (1 << 9)
}
 Bit(s) to control rpmtsCheck() and rpmtsOrder() operation. More...
 
enum  rpmtransFlags_e {
  RPMTRANS_FLAG_NONE = 0, RPMTRANS_FLAG_TEST = (1 << 0), RPMTRANS_FLAG_BUILD_PROBS = (1 << 1), RPMTRANS_FLAG_NOSCRIPTS = (1 << 2),
  RPMTRANS_FLAG_JUSTDB = (1 << 3), RPMTRANS_FLAG_NOTRIGGERS = (1 << 4), RPMTRANS_FLAG_NODOCS = (1 << 5), RPMTRANS_FLAG_ALLFILES = (1 << 6),
  RPMTRANS_FLAG_NOCONTEXTS = (1 << 8), RPMTRANS_FLAG_DIRSTASH = (1 << 9), RPMTRANS_FLAG_REPACKAGE = (1 << 10), RPMTRANS_FLAG_PKGCOMMIT = (1 << 11),
  RPMTRANS_FLAG_PKGUNDO = (1 << 12), RPMTRANS_FLAG_COMMIT = (1 << 13), RPMTRANS_FLAG_UNDO = (1 << 14), RPMTRANS_FLAG_APPLYONLY = (1 << 25),
  RPMTRANS_FLAG_NOTRIGGERPREIN = (1 << 16), RPMTRANS_FLAG_NOPRE = (1 << 17), RPMTRANS_FLAG_NOPOST = (1 << 18), RPMTRANS_FLAG_NOTRIGGERIN = (1 << 19),
  RPMTRANS_FLAG_NOTRIGGERUN = (1 << 20), RPMTRANS_FLAG_NOPREUN = (1 << 21), RPMTRANS_FLAG_NOPOSTUN = (1 << 22), RPMTRANS_FLAG_NOTRIGGERPOSTUN = (1 << 23),
  RPMTRANS_FLAG_NOPAYLOAD = (1 << 24), RPMTRANS_FLAG_NORPMDB = (1 << 25), RPMTRANS_FLAG_NOFDIGESTS = (1 << 27), RPMTRANS_FLAG_NOPRETRANS = (1 << 28),
  RPMTRANS_FLAG_NOPOSTTRANS = (1 << 29), RPMTRANS_FLAG_NOCONFIGS = (1 << 30)
}
 Bit(s) to control rpmtsRun() operation. More...
 
enum  rpmtsOpX_e {
  RPMTS_OP_TOTAL = 0, RPMTS_OP_CHECK = 1, RPMTS_OP_ORDER = 2, RPMTS_OP_FINGERPRINT = 3,
  RPMTS_OP_REPACKAGE = 4, RPMTS_OP_INSTALL = 5, RPMTS_OP_ERASE = 6, RPMTS_OP_SCRIPTLETS = 7,
  RPMTS_OP_COMPRESS = 8, RPMTS_OP_UNCOMPRESS = 9, RPMTS_OP_DIGEST = 10, RPMTS_OP_SIGNATURE = 11,
  RPMTS_OP_DBADD = 12, RPMTS_OP_DBREMOVE = 13, RPMTS_OP_DBGET = 14, RPMTS_OP_DBPUT = 15,
  RPMTS_OP_DBDEL = 16, RPMTS_OP_READHDR = 17, RPMTS_OP_HDRLOAD = 18, RPMTS_OP_HDRGET = 19,
  RPMTS_OP_DEBUG = 20, RPMTS_OP_MAX = 20
}
 Indices for timestamps. More...
 
enum  rpmTSType_e { RPMTRANS_TYPE_NORMAL = 0, RPMTRANS_TYPE_ROLLBACK = (1 << 0), RPMTRANS_TYPE_AUTOROLLBACK = (1 << 1) }
 Transaction Types. More...
 
enum  tsStage_e { TSM_UNKNOWN = 0, TSM_INSTALL = 7, TSM_ERASE = 8 }
 

Functions

int rpmtsCheck (rpmts ts)
 Perform dependency resolution on the transaction set. More...
 
int rpmtsOrder (rpmts ts)
 Determine package order in a transaction set according to dependencies. More...
 
int rpmtsRun (rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet)
 Process all package elements in a transaction set. More...
 
rpmRC rpmtsRollback (rpmts rbts, rpmprobFilterFlags ignoreSet, int running, rpmte rbte)
 Rollback a failed transaction. More...
 
rpmts rpmtsUnlink (rpmts ts, const char *msg)
 Unreference a transaction instance. More...
 
rpmts rpmtsLink (rpmts ts, const char *msg)
 Reference a transaction set instance. More...
 
int rpmtsCloseDB (rpmts ts)
 Close the database used by the transaction. More...
 
int rpmtsOpenDB (rpmts ts, int dbmode)
 Open the database used by the transaction. More...
 
int rpmtsInitDB (rpmts ts, int dbmode)
 Initialize the database used by the transaction. More...
 
int rpmtsRebuildDB (rpmts ts)
 Rebuild the database used by the transaction. More...
 
int rpmtsVerifyDB (rpmts ts)
 Verify the database used by the transaction. More...
 
rpmmi rpmtsInitIterator (const rpmts ts, rpmTag rpmtag, const void *keyp, size_t keylen)
 Return transaction database iterator. More...
 
rpmRC rpmtsFindPubkey (rpmts ts, void *_dig)
 Retrieve pubkey from rpm database. More...
 
int rpmtsCloseSDB (rpmts ts)
 Close the database used by the transaction to solve dependencies. More...
 
int rpmtsOpenSDB (rpmts ts, int dbmode)
 Open the database used by the transaction to solve dependencies. More...
 
int rpmtsSolve (rpmts ts, rpmds ds, const void *data)
 Attempt to solve a needed dependency using the solve database. More...
 
int rpmtsAvailable (rpmts ts, const rpmds ds)
 Attempt to solve a needed dependency using memory resident tables. More...
 
int rpmtsSetSolveCallback (rpmts ts, int(*solve)(rpmts ts, rpmds ds, const void *data), const void *solveData)
 Set dependency solver callback. More...
 
rpmTSType rpmtsType (rpmts ts)
 Return the type of a transaction. More...
 
void rpmtsSetType (rpmts ts, rpmTSType type)
 Set transaction type. More...
 
rpmuint32_t rpmtsARBGoal (rpmts ts)
 Return the autorollback goal. More...
 
void rpmtsSetARBGoal (rpmts ts, rpmuint32_t goal)
 Set autorollback goal. More...
 
rpmps rpmtsProblems (rpmts ts)
 Return current transaction set problems. More...
 
void rpmtsCleanDig (rpmts ts)
 Free signature verification data. More...
 
void rpmtsClean (rpmts ts)
 Free memory needed only for dependency checks and ordering. More...
 
void rpmtsEmpty (rpmts ts)
 Re-create an empty transaction set. More...
 
rpmts rpmtsFree (rpmts ts)
 Destroy transaction set, closing the database as well. More...
 
void * rpmtsGetKeyring (rpmts ts, int autoload)
 Get transaction keyring. More...
 
int rpmtsSetKeyring (rpmts ts, void *_keyring)
 Set transaction keyring. More...
 
rpmVSFlags rpmtsVSFlags (rpmts ts)
 Get verify signatures flag(s). More...
 
rpmVSFlags rpmtsSetVSFlags (rpmts ts, rpmVSFlags vsflags)
 Set verify signatures flag(s). More...
 
int rpmtsUnorderedSuccessors (rpmts ts, int first)
 Set index of 1st element of successors. More...
 
const char * rpmtsRootDir (rpmts ts)
 Get transaction rootDir, i.e. More...
 
void rpmtsSetRootDir (rpmts ts, const char *rootDir)
 Set transaction rootDir, i.e. More...
 
const char * rpmtsCurrDir (rpmts ts)
 Get transaction currDir, i.e. More...
 
void rpmtsSetCurrDir (rpmts ts, const char *currDir)
 Set transaction currDir, i.e. More...
 
int rpmtsSELinuxEnabled (rpmts ts)
 Get selinuxEnabled flag, i.e. More...
 
int rpmtsChrootDone (rpmts ts)
 Get chrootDone flag, i.e. More...
 
int rpmtsSetChrootDone (rpmts ts, int chrootDone)
 Set chrootDone flag, i.e. More...
 
rpmuint32_t rpmtsGetTid (rpmts ts)
 Get transaction id, i.e. More...
 
rpmuint32_t rpmtsSetTid (rpmts ts, rpmuint32_t tid)
 Set transaction id, i.e. More...
 
pgpDig rpmtsDig (rpmts ts)
 Get OpenPGP packet parameters, i.e. More...
 
pgpDigParams rpmtsPubkey (const rpmts ts)
 Return OpenPGP pubkey constants. More...
 
rpmdb rpmtsGetRdb (rpmts ts)
 Get transaction set database handle. More...
 
rpmPRCO rpmtsPRCO (rpmts ts)
 Get transaction set dependencies. More...
 
int rpmtsInitDSI (const rpmts ts)
 Initialize disk space info for each and every mounted file systems. More...
 
void rpmtsUpdateDSI (const rpmts ts, dev_t dev, rpmuint32_t fileSize, rpmuint32_t prevSize, rpmuint32_t fixupSize, int _action)
 Update disk space info for a file. More...
 
void rpmtsCheckDSIProblems (const rpmts ts, const rpmte te)
 Check a transaction element for disk space problems. More...
 
void * rpmtsNotify (rpmts ts, rpmte te, rpmCallbackType what, rpmuint64_t amount, rpmuint64_t total)
 Perform transaction progress notify callback. More...
 
int rpmtsNElements (rpmts ts)
 Return number of (ordered) transaction set elements. More...
 
rpmte rpmtsElement (rpmts ts, int ix)
 Return (ordered) transaction set element. More...
 
rpmprobFilterFlags rpmtsFilterFlags (rpmts ts)
 Get problem ignore bit mask, i.e. More...
 
rpmtransFlags rpmtsFlags (rpmts ts)
 Get transaction flags, i.e. More...
 
rpmtransFlags rpmtsSetFlags (rpmts ts, rpmtransFlags transFlags)
 Set transaction flags, i.e. More...
 
rpmdepFlags rpmtsDFlags (rpmts ts)
 Get dependency flags, i.e. More...
 
rpmdepFlags rpmtsSetDFlags (rpmts ts, rpmdepFlags depFlags)
 Set dependency flags, i.e. More...
 
Spec rpmtsSpec (rpmts ts)
 Get spec control structure from transaction set. More...
 
Spec rpmtsSetSpec (rpmts ts, Spec spec)
 Set a spec control structure in transaction set. More...
 
rpmte rpmtsRelocateElement (rpmts ts)
 Get current relocate transaction element. More...
 
rpmte rpmtsSetRelocateElement (rpmts ts, rpmte relocateElement)
 Set current relocate transaction element. More...
 
tsmStage rpmtsGoal (rpmts ts)
 Retrieve goal of transaction set. More...
 
tsmStage rpmtsSetGoal (rpmts ts, tsmStage goal)
 Set goal of transaction set. More...
 
int rpmtsDBMode (rpmts ts)
 Retrieve dbmode of transaction set. More...
 
int rpmtsSetDBMode (rpmts ts, int dbmode)
 Set dbmode of transaction set. More...
 
rpmuint32_t rpmtsColor (rpmts ts)
 Retrieve color bits of transaction set. More...
 
rpmuint32_t rpmtsPrefColor (rpmts ts)
 Retrieve prefered file color. More...
 
rpmuint32_t rpmtsSetColor (rpmts ts, rpmuint32_t color)
 Set color bits of transaction set. More...
 
rpmop rpmtsOp (rpmts ts, rpmtsOpX opx)
 Retrieve operation timestamp from a transaction set. More...
 
int rpmtsSetNotifyCallback (rpmts ts, rpmCallbackFunction notify, rpmCallbackData notifyData)
 Set transaction notify callback function and argument. More...
 
rpmts rpmtsCreate (void)
 Create an empty transaction set. More...
 
int rpmtsAddInstallElement (rpmts ts, Header h, const fnpyKey key, int upgrade, rpmRelocation relocs)
 Add package to be installed to transaction set. More...
 
int rpmtsAddEraseElement (rpmts ts, Header h, int dboffset)
 Add package to be erased to transaction set. More...
 

Variables

int _rpmts_debug
 
int _rpmts_macros
 
int _rpmts_stats
 
int _fps_debug
 
int rpmcliPackagesTotal
 

Detailed Description

Structures and prototypes used for an "rpmts" transaction set.

Definition in file rpmts.h.

Macro Definition Documentation

#define _noTransScripts
Value:
RPMTRANS_FLAG_NOPRE | \
RPMTRANS_FLAG_NOPOST | \
RPMTRANS_FLAG_NOPREUN | \
RPMTRANS_FLAG_NOPOSTUN | \
RPMTRANS_FLAG_NOPOSTTRANS \
)

Definition at line 96 of file rpmts.h.

Referenced by installArgCallback(), main(), and rpmtsRun().

#define _noTransTriggers
Value:
RPMTRANS_FLAG_NOTRIGGERIN | \
RPMTRANS_FLAG_NOTRIGGERUN | \
RPMTRANS_FLAG_NOTRIGGERPOSTUN \
)

Definition at line 105 of file rpmts.h.

Referenced by installArgCallback(), main(), and rpmtsRun().

#define rpmtsFree (   _ts)    ((rpmts) rpmioFreePoolItem((rpmioItem)(_ts), __FUNCTION__, __FILE__, __LINE__))

Definition at line 636 of file rpmts.h.

#define rpmtsLink (   _ts,
  _msg 
)    ((rpmts) rpmioLinkPoolItem((rpmioItem)(_ts), _msg, __FILE__, __LINE__))

Definition at line 420 of file rpmts.h.

#define rpmtsUnlink (   _ts,
  _msg 
)    ((rpmts) rpmioUnlinkPoolItem((rpmioItem)(_ts), _msg, __FILE__, __LINE__))

Definition at line 408 of file rpmts.h.

Variable Documentation

int _fps_debug

Definition at line 308 of file transaction.c.

int _rpmts_debug

Definition at line 83 of file rpmts.c.

int _rpmts_macros

Definition at line 89 of file rpmts.c.

int _rpmts_stats

Definition at line 86 of file rpmts.c.

int rpmcliPackagesTotal

Definition at line 40 of file rpminstall.c.