rpm: rpmts.h File Reference

rpm 4.13.0

Macros | Typedefs | Enumerations | Functions | Variables
rpmts.h File Reference
Transaction Set API.

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

`#include <sys/types.h>`
`#include <rpm/rpmtypes.h>`
`#include <rpm/rpmte.h>`
`#include <rpm/rpmps.h>`
`#include <rpm/rpmsw.h>`
`#include <rpm/rpmpgp.h>`
`#include <rpm/rpmfi.h>`
`#include <rpm/rpmcallback.h>`
Include dependency graph for rpmts.h:

Go to the source code of this file.

## Macros
#define | _noTransScripts
#define | _noTransTriggers
#define | RPMTRANS_FLAG_NOPAYLOAD 0
#define | RPMTRANS_FLAG_APPLYONLY 0
#define | RPMTRANS_FLAG_KEEPOBSOLETE 0
#define | RPMTRANS_FLAG_DIRSTASH 0
#define | RPMTRANS_FLAG_REPACKAGE 0
#define | RPMTRANS_FLAG_PKGCOMMIT 0
#define | RPMTRANS_FLAG_PKGUNDO 0
#define | RPMTRANS_FLAG_COMMIT 0
#define | RPMTRANS_FLAG_UNDO 0
#define | RPMTRANS_FLAG_REVERSE 0
#define | RPMTRANS_FLAG_NOSUGGEST 0
#define | RPMTRANS_FLAG_ADDINDEPS 0
#define | _RPMVSF_NODIGESTS
#define | _RPMVSF_NOSIGNATURES
#define | _RPMVSF_NOHEADER
#define | _RPMVSF_NOPAYLOAD

## Typedefs
typedef rpmFlags | rpmtransFlags
typedef rpmFlags | rpmVSFlags
typedef enum rpmtsOpX_e | rpmtsOpX
| Indices for timestamps. More...
typedef rpmFlags | rpmtxnFlags

## Enumerations
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_NOPLUGINS = (1 << 7), RPMTRANS_FLAG_NOCONTEXTS = (1 << 8), 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_NOPRETRANS = (1 << 24), RPMTRANS_FLAG_NOPOSTTRANS = (1 << 25), RPMTRANS_FLAG_NOMD5 = (1 << 27), RPMTRANS_FLAG_NOFILEDIGEST = (1 << 27), RPMTRANS_FLAG_NOCONFIGS = (1 << 30), RPMTRANS_FLAG_DEPLOOPS = (1 << 31) }
| Bit(s) to control rpmtsRun() operation. More...
enum | rpmVSFlags_e { RPMVSF_DEFAULT = 0, RPMVSF_NOHDRCHK = (1 << 0), RPMVSF_NEEDPAYLOAD = (1 << 1), RPMVSF_NOSHA1HEADER = (1 << 8), RPMVSF_NOMD5HEADER = (1 << 9), RPMVSF_NODSAHEADER = (1 << 10), RPMVSF_NORSAHEADER = (1 << 11), RPMVSF_NOSHA1 = (1 << 16), RPMVSF_NOMD5 = (1 << 17), RPMVSF_NODSA = (1 << 18), RPMVSF_NORSA = (1 << 19) }
| Bit(s) to control digest and signature verification. More...
enum | rpmtsOpX_e { RPMTS_OP_TOTAL = 0, RPMTS_OP_CHECK = 1, RPMTS_OP_ORDER = 2, RPMTS_OP_FINGERPRINT = 3, 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_MAX = 17 }
| Indices for timestamps. More...
enum | rpmtxnFlags_e { RPMTXN_READ = (1 << 0), RPMTXN_WRITE = (1 << 1) }

## 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...
rpmts | rpmtsLink (rpmts ts)
| 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 | rpmtsGetDBMode (rpmts ts)
| Return the transaction database mode. More...
int | rpmtsSetDBMode (rpmts ts, int dbmode)
| Set the transaction database mode. 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...
rpmdbMatchIterator | rpmtsInitIterator (const rpmts ts, rpmDbiTagVal rpmtag, const void *keyp, size_t keylen)
| Return transaction database iterator. More...
rpmRC | rpmtsImportHeader (rpmtxn txn, Header h, rpmFlags flags)
| Import a header into the rpmdb. More...
rpmRC | rpmtsImportPubkey (rpmts ts, const unsigned char *pkt, size_t pktlen)
| Import public key packet(s). More...
rpmKeyring | rpmtsGetKeyring (rpmts ts, int autoload)
| Retrieve handle for keyring used for this transaction set. More...
int | rpmtsSetKeyring (rpmts ts, rpmKeyring keyring)
| Set keyring to use for this transaction set. More...
int | rpmtsSetSolveCallback (rpmts ts, int(*solve)(rpmts ts, rpmds ds, const void *data), const void *solveData)
| Set dependency solver callback. More...
rpmps | rpmtsProblems (rpmts ts)
| Return current transaction set problems. More...
void | rpmtsCleanProblems (rpmts ts)
| Clean current transaction problem set. 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...
rpmVSFlags | rpmtsVSFlags (rpmts ts)
| Get verify signatures flag(s). More...
rpmVSFlags | rpmtsSetVSFlags (rpmts ts, rpmVSFlags vsflags)
| Set verify signatures flag(s). More...
const char * | rpmtsRootDir (rpmts ts)
| Get transaction rootDir, i.e. More...
int | rpmtsSetRootDir (rpmts ts, const char *rootDir)
| Set transaction rootDir, i.e. More...
FD_t | rpmtsScriptFd (rpmts ts)
| Get transaction script file handle, i.e. More...
void | rpmtsSetScriptFd (rpmts ts, FD_t scriptFd)
| Set transaction script file handle, i.e. More...
rpm_tid_t | rpmtsGetTid (rpmts ts)
| Get transaction id, i.e. More...
rpm_tid_t | rpmtsSetTid (rpmts ts, rpm_tid_t tid)
| Set transaction id, i.e. More...
rpmdb | rpmtsGetRdb (rpmts ts)
| Get transaction set database handle. More...
void * | rpmtsNotify (rpmts ts, rpmte te, rpmCallbackType what, rpm_loff_t amount, rpm_loff_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...
rpm_color_t | rpmtsColor (rpmts ts)
| Retrieve color bits of transaction set. More...
rpm_color_t | rpmtsPrefColor (rpmts ts)
| Retrieve preferred file color. More...
rpm_color_t | rpmtsSetColor (rpmts ts, rpm_color_t color)
| Set color bits of transaction set. More...
rpm_color_t | rpmtsSetPrefColor (rpmts ts, rpm_color_t color)
| Set preferred file color. More...
rpmop | rpmtsOp (rpmts ts, rpmtsOpX opx)
| Retrieve operation timestamp from a transaction set. More...
rpmPlugins | rpmtsPlugins (rpmts ts)
| Get the plugins associated with 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 | rpmtsAddReinstallElement (rpmts ts, Header h, const fnpyKey key)
| Add package to be reinstalled to transaction set. More...
int | rpmtsAddEraseElement (rpmts ts, Header h, int dboffset)
| Add package to be erased to transaction set. More...
rpmtxn | rpmtxnBegin (rpmts ts, rpmtxnFlags flags)
| Create a transaction (lock) handle. More...
rpmtxn | rpmtxnEnd (rpmtxn txn)
| Destroy transaction (lock) handle. More...
rpmtsi | rpmtsiFree (rpmtsi tsi)
| Destroy transaction element iterator. More...
rpmtsi | rpmtsiInit (rpmts ts)
| Create transaction element iterator. More...
rpmte | rpmtsiNext (rpmtsi tsi, rpmElementTypes types)
| Return next transaction element of type. More...

## Variables
int | _rpmts_stats

## Detailed Description

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

Definition in file rpmts.h.

## Macro Definition Documentation

## ◆ _noTransScripts

#define _noTransScripts

Value:
( RPMTRANS_FLAG_NOPRE | \
RPMTRANS_FLAG_NOPOST | \
RPMTRANS_FLAG_NOPREUN | \
RPMTRANS_FLAG_NOPOSTUN | \
RPMTRANS_FLAG_NOPRETRANS | \
RPMTRANS_FLAG_NOPOSTTRANS \
)
RPMTRANS_FLAG_NOPRE
Definition: rpmts.h:41

Definition at line 60 of file rpmts.h.

## ◆ _noTransTriggers

#define _noTransTriggers

Value:
( RPMTRANS_FLAG_NOTRIGGERPREIN | \
RPMTRANS_FLAG_NOTRIGGERIN | \
RPMTRANS_FLAG_NOTRIGGERUN | \
RPMTRANS_FLAG_NOTRIGGERPOSTUN \
)
RPMTRANS_FLAG_NOTRIGGERPREIN
Definition: rpmts.h:40

Definition at line 69 of file rpmts.h.

## ◆ _RPMVSF_NODIGESTS

#define _RPMVSF_NODIGESTS

Value:
( RPMVSF_NOSHA1HEADER | \
RPMVSF_NOMD5HEADER | \
RPMVSF_NOSHA1 | \
RPMVSF_NOMD5 )
RPMVSF_NOSHA1HEADER
Definition: rpmts.h:98

Definition at line 112 of file rpmts.h.

## ◆ _RPMVSF_NOHEADER

#define _RPMVSF_NOHEADER

Value:
( RPMVSF_NOSHA1HEADER | \
RPMVSF_NOMD5HEADER | \
RPMVSF_NODSAHEADER | \
RPMVSF_NORSAHEADER )
RPMVSF_NOSHA1HEADER
Definition: rpmts.h:98

Definition at line 124 of file rpmts.h.

## ◆ _RPMVSF_NOPAYLOAD

#define _RPMVSF_NOPAYLOAD

Value:
( RPMVSF_NOSHA1 | \
RPMVSF_NOMD5 | \
RPMVSF_NODSA | \
RPMVSF_NORSA )
RPMVSF_NOSHA1
Definition: rpmts.h:103

Definition at line 130 of file rpmts.h.

## ◆ _RPMVSF_NOSIGNATURES

#define _RPMVSF_NOSIGNATURES

Value:
( RPMVSF_NODSAHEADER | \
RPMVSF_NORSAHEADER | \
RPMVSF_NODSA | \
RPMVSF_NORSA )
RPMVSF_NODSAHEADER
Definition: rpmts.h:100

Definition at line 118 of file rpmts.h.

## ◆ RPMTRANS_FLAG_ADDINDEPS

#define RPMTRANS_FLAG_ADDINDEPS 0

Definition at line 88 of file rpmts.h.

## ◆ RPMTRANS_FLAG_APPLYONLY

#define RPMTRANS_FLAG_APPLYONLY 0

Definition at line 78 of file rpmts.h.

## ◆ RPMTRANS_FLAG_COMMIT

#define RPMTRANS_FLAG_COMMIT 0

Definition at line 84 of file rpmts.h.

## ◆ RPMTRANS_FLAG_DIRSTASH

#define RPMTRANS_FLAG_DIRSTASH 0

Definition at line 80 of file rpmts.h.

## ◆ RPMTRANS_FLAG_KEEPOBSOLETE

#define RPMTRANS_FLAG_KEEPOBSOLETE 0

Definition at line 79 of file rpmts.h.

## ◆ RPMTRANS_FLAG_NOPAYLOAD

#define RPMTRANS_FLAG_NOPAYLOAD 0

Definition at line 77 of file rpmts.h.

## ◆ RPMTRANS_FLAG_NOSUGGEST

#define RPMTRANS_FLAG_NOSUGGEST 0

Definition at line 87 of file rpmts.h.

## ◆ RPMTRANS_FLAG_PKGCOMMIT

#define RPMTRANS_FLAG_PKGCOMMIT 0

Definition at line 82 of file rpmts.h.

## ◆ RPMTRANS_FLAG_PKGUNDO

#define RPMTRANS_FLAG_PKGUNDO 0

Definition at line 83 of file rpmts.h.

## ◆ RPMTRANS_FLAG_REPACKAGE

#define RPMTRANS_FLAG_REPACKAGE 0

Definition at line 81 of file rpmts.h.

## ◆ RPMTRANS_FLAG_REVERSE

#define RPMTRANS_FLAG_REVERSE 0

Definition at line 86 of file rpmts.h.

## ◆ RPMTRANS_FLAG_UNDO

#define RPMTRANS_FLAG_UNDO 0

Definition at line 85 of file rpmts.h.

## Typedef Documentation

## ◆ rpmtransFlags

typedef rpmFlags rpmtransFlags

Definition at line 58 of file rpmts.h.

## ◆ rpmtxnFlags

typedef rpmFlags rpmtxnFlags

Definition at line 163 of file rpmts.h.

## ◆ rpmVSFlags

typedef rpmFlags rpmVSFlags

Definition at line 110 of file rpmts.h.

## Enumeration Type Documentation

## ◆ rpmtxnFlags_e

enum rpmtxnFlags_e

Enumerator
RPMTXN_READ |
RPMTXN_WRITE |

Definition at line 159 of file rpmts.h.

## Variable Documentation

## ◆ _rpmts_stats

int _rpmts_stats