rpm
5.4.10
|
Routine(s) to handle a "rpmts" transaction sets. More...
#include "system.h"
#include <rpmio.h>
#include <rpmiotypes.h>
#include <rpmlog.h>
#include <iosm.h>
#include <rpmurl.h>
#include <rpmpgp.h>
#include <rpmmacro.h>
#include <rpmkeyring.h>
#include <rpmhkp.h>
#include <rpmsx.h>
#include <rpmtypes.h>
#include <rpmtag.h>
#include <pkgio.h>
#include "rpmdb.h"
#include "rpmal.h"
#include "rpmds.h"
#include "rpmfi.h"
#include "rpmlock.h"
#include "rpmns.h"
#include "rpmte.h"
#include "rpmts.h"
#include <rpmcli.h>
#include "fs.h"
#include "debug.h"
Go to the source code of this file.
Macros | |
#define | _RPMTAG_INTERNAL /* XXX tagStore_s */ |
#define | _RPMDB_INTERNAL /* XXX almost opaque sigh */ |
#define | _RPMTE_INTERNAL /* XXX te->h */ |
#define | _RPMTS_INTERNAL |
#define | _RPMBAG_INTERNAL |
#define | ST_RDONLY 1 |
Functions | |
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 | rpmtsRebuildDB (rpmts ts) |
Rebuild 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... | |
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... | |
static int | sugcmp (const void *a, const void *b) |
Compare suggested package resolutions (qsort/bsearch). 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 key, const void *data), const void *solveData) |
rpmps | rpmtsProblems (rpmts ts) |
Return current transaction set problems. 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... | |
static void | rpmtsPrintStat (const char *name, struct rpmop_s *op) |
static void | rpmtsPrintStats (rpmts ts) |
static void | rpmtsFini (void *_ts) |
static rpmts | rpmtsGetPool (rpmioPool pool) |
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... | |
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... | |
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... | |
FD_t | rpmtsScriptFd (rpmts ts) |
void | rpmtsSetScriptFd (rpmts ts, FD_t scriptFd) |
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... | |
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 | rpmtsSetColor (rpmts ts, rpmuint32_t color) |
Set color bits of transaction set. More... | |
rpmuint32_t | rpmtsPrefColor (rpmts ts) |
Retrieve preferred file color. 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... | |
Variables | |
int | _rpmts_debug = 0 |
int | _rpmts_stats = 0 |
int | _rpmts_macros = 0 |
rpmop | _hdr_loadops |
rpmop | _hdr_getops |
rpmioPool | _rpmtsPool |
Routine(s) to handle a "rpmts" transaction sets.
Definition in file rpmts.c.
#define ST_RDONLY 1 |
Referenced by rpmtsCheckDSIProblems(), and rpmtsInitDSI().
rpmuint32_t rpmtsARBGoal | ( | rpmts | ts | ) |
Return the autorollback goal.
ts | transaction set |
Definition at line 879 of file rpmts.c.
Referenced by rpmtsRollback(), and rpmtsVerifyDB().
Attempt to solve a needed dependency using memory resident tables.
ts | transaction set |
ds | dependency set |
Definition at line 543 of file rpmts.c.
References _free(), rpmalAllSatisfiesDepend(), and xrealloc.
Referenced by rpmtsVerifyDB().
Check a transaction element for disk space problems.
ts | transaction set |
te | current transaction element |
Definition at line 1242 of file rpmts.c.
References rpmfiFC(), RPMPROB_DISKNODES, RPMPROB_DISKSPACE, RPMPROB_RDONLY, rpmpsAppend(), rpmpsFree(), RPMTAG_BASENAMES, rpmteFI(), rpmteKey(), rpmteNEVR(), rpmtsProblems(), and ST_RDONLY.
Referenced by rpmtsPrepare().
int rpmtsChrootDone | ( | rpmts | ts | ) |
Get chrootDone flag, i.e.
has chroot(2) been performed?
ts | transaction set |
Definition at line 1005 of file rpmts.c.
Referenced by psmWait(), rpmpsmStage(), rpmtsPrepare(), and runScript().
void rpmtsClean | ( | rpmts | ts | ) |
Free memory needed only for dependency checks and ordering.
ts | transaction set |
Definition at line 596 of file rpmts.c.
References _free(), rpmalFree(), rpmpsFree(), rpmteCleanDS(), rpmtsCleanDig(), rpmtsiFree(), rpmtsiInit(), and rpmtsiNext().
Referenced by rpmcliImportPubkeys(), rpmcliInstall(), rpmErase(), rpmInstallSourcePackage(), rpmRollback(), rpmts_Clean(), rpmtsEmpty(), and rpmtsVerifyDB().
int rpmtsCloseDB | ( | rpmts | ts | ) |
Close the database used by the transaction.
ts | transaction set |
Definition at line 101 of file rpmts.c.
References rpmdbClose(), rpmswAdd(), RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, and rpmtsOp().
Referenced by _rpmtsCheck(), ftsCacheUpdate(), rpmts_CloseDB(), rpmts_InitDB(), rpmtsFini(), rpmtsOpenDB(), and rpmtsRebuildDB().
int rpmtsCloseSDB | ( | rpmts | ts | ) |
Close the database used by the transaction to solve dependencies.
ts | transaction set |
Definition at line 222 of file rpmts.c.
References rpmdbClose(), rpmswAdd(), RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, and rpmtsOp().
Referenced by rpmtsFini(), and rpmtsVerifyDB().
rpmuint32_t rpmtsColor | ( | rpmts | ts | ) |
Retrieve color bits of transaction set.
ts | transaction set |
Definition at line 1450 of file rpmts.c.
Referenced by _rpmtsCheck(), checkPackageSet(), handleInstInstalledFile(), handleOverlappedFiles(), populateInstallHeader(), rpmpsmStage(), rpmtsAddInstallElement(), rpmtsAddObsoletes(), rpmtsAddUpgrades(), and rpmtsSkipFiles().
rpmts rpmtsCreate | ( | void | ) |
Create an empty transaction set.
Definition at line 1480 of file rpmts.c.
References rpmExpandNumeric(), rpmswEnter(), rpmsxEnabled(), RPMTRANS_TYPE_NORMAL, RPMTS_OP_TOTAL, rpmtsGetPool(), rpmtsLink(), rpmtsOp(), rpmtsSolve(), TSM_UNKNOWN, and xcalloc().
Referenced by argerror(), cpio_doio(), dsort(), main(), processScriptFiles(), and rpmts_new().
const char* rpmtsCurrDir | ( | rpmts | ts | ) |
Get transaction currDir, i.e.
current directory before chroot(2).
ts | transaction set |
Definition at line 951 of file rpmts.c.
Referenced by rpmpsmStage(), and rpmtsPrepare().
int rpmtsDBMode | ( | rpmts | ts | ) |
Retrieve dbmode of transaction set.
ts | transaction set |
Definition at line 1435 of file rpmts.c.
Referenced by _rpmtsCheck(), rpmts_OpenDB(), and rpmtsAddInstallElement().
rpmdepFlags rpmtsDFlags | ( | rpmts | ts | ) |
Get dependency flags, i.e.
bits that control rpmtsCheck() and rpmtsOrder().
ts | transaction set |
Definition at line 1373 of file rpmts.c.
Referenced by _rpmtsCheck(), checkPackageSet(), rpmgiNext(), rpmtsAddInstallElement(), rpmtsRollback(), and unsatisfiedDepend().
Return (ordered) transaction set element.
ts | transaction set |
ix | transaction element index |
Definition at line 1327 of file rpmts.c.
Referenced by rpmInstallSourcePackage(), rpmtsiFi(), and rpmtsiNextElement().
void rpmtsEmpty | ( | rpmts | ts | ) |
Re-create an empty transaction set.
ts | transaction set |
Definition at line 623 of file rpmts.c.
References rpmteFree(), rpmtsClean(), rpmtsiFree(), rpmtsiInit(), and rpmtsiNext().
Referenced by rpmcliArgIter(), rpmcliInstall(), rpmcliVerify(), rpmErase(), rpmRollback(), rpmtsFini(), rpmtsRollback(), rpmtsVerifyDB(), and verifyDependencies().
rpmprobFilterFlags rpmtsFilterFlags | ( | rpmts | ts | ) |
Get problem ignore bit mask, i.e.
bits to filter encountered problems.
ts | transaction set |
Definition at line 1339 of file rpmts.c.
Referenced by handleInstInstalledFile(), handleOverlappedFiles(), relocateFileList(), rpmtsInitDSI(), and rpmtsSanityCheck().
|
static |
Definition at line 707 of file rpmts.c.
References _free(), argvFree(), argvPrint(), fdFree(), rpmalFree(), rpmdsFreePRCO(), rpmGetMacroEntries(), rpmtsCloseDB(), rpmtsCloseSDB(), rpmtsEmpty(), and rpmtsPrintStats().
Referenced by rpmtsGetPool().
rpmtransFlags rpmtsFlags | ( | rpmts | ts | ) |
Get transaction flags, i.e.
bits that control rpmtsRun().
ts | transaction set |
Definition at line 1344 of file rpmts.c.
References RPMTRANS_FLAG_NOCONTEXTS, and rpmtsSELinuxEnabled().
Referenced by _rpmtsCheck(), _rpmtsRun(), fsmSetup(), handleInstInstalledFile(), iosmSetup(), rpmpsmStage(), rpmtsFinish(), rpmtsProcess(), rpmtsRepackage(), rpmtsRollback(), rpmtsSetup(), and rpmtsSkipFiles().
void* rpmtsGetKeyring | ( | rpmts | ts, |
int | autoload | ||
) |
Definition at line 774 of file rpmts.c.
References _rpmtsPool, rpmioGetPool(), rpmioNewPool(), and rpmtsFini().
Referenced by rpmtsCreate().
rpmuint32_t rpmtsGetTid | ( | rpmts | ts | ) |
Get transaction id, i.e.
transaction time stamp.
ts | transaction set |
Definition at line 1022 of file rpmts.c.
Referenced by fsmSetup(), ftsCacheUpdate(), iosmSetup(), rpmcliImportPubkey(), rpmpsmStage(), and rpmtsRollback().
Retrieve goal of transaction set.
ts | transaction set |
Definition at line 1420 of file rpmts.c.
References TSM_UNKNOWN.
int rpmtsInitDSI | ( | const rpmts | ts | ) |
Initialize disk space info for each and every mounted file systems.
ts | transaction set |
Definition at line 1065 of file rpmts.c.
References _free(), D_, rpmGetFilesystemList(), rpmlog(), RPMLOG_DEBUG, RPMPROB_FILTER_DISKSPACE, rpmtsFilterFlags(), ST_RDONLY, and xcalloc().
Referenced by rpmtsSetup(), and unsatisfiedDepend().
Return transaction database iterator.
ts | transaction set |
rpmtag | rpm tag |
keyp | key data (NULL for sequential access) |
keylen | key data length (0 will use strlen(keyp)) |
Definition at line 212 of file rpmts.c.
References rpmmiInit(), and rpmtsOpenDB().
Referenced by checkDependentConflicts(), checkDependentPackages(), ftsCacheUpdate(), IDTXload(), rpmcliEraseElement(), rpmcliInstall(), rpmErase(), rpmgiInitFilter(), rpmmi_new(), rpmpsmStage(), rpmQueryVerify(), rpmrb_NewMi(), rpmteDBHeader(), rpmts_AddErase(), rpmts_Match(), rpmtsAddObsoletes(), rpmtsAddUpgrades(), rpmtsEraseDebuginfo(), rpmtsSanityCheck(), rpmtsVerifyDB(), runImmedTriggers(), runScriptTriggersLoop(), runTriggersLoop(), and unsatisfiedDepend().
int rpmtsNElements | ( | rpmts | ts | ) |
Return number of (ordered) transaction set elements.
ts | transaction set |
Definition at line 1318 of file rpmts.c.
Referenced by _rpmtsRun(), rpmcliInstall(), rpmtsiNextElement(), rpmtsSanityCheck(), and XrpmtsiInit().
void* rpmtsNotify | ( | rpmts | ts, |
rpmte | te, | ||
rpmCallbackType | what, | ||
rpmuint64_t | amount, | ||
rpmuint64_t | total | ||
) |
Perform transaction progress notify callback.
ts | transaction set |
te | current transaction element |
what | type of call back |
amount | current value |
total | final value |
Definition at line 1291 of file rpmts.c.
References headerFree(), headerLink(), and rpmteKey().
Referenced by fsmSetup(), fsmStage(), iosmSetup(), iosmStage(), psmWait(), rpmpsmStage(), rpmteClose(), rpmteFDHeader(), rpmtsFindBaseNamesInDB(), rpmtsPrepare(), rpmtsRepackage(), and runScript().
int rpmtsOpenDB | ( | rpmts | ts, |
int | dbmode | ||
) |
Open the database used by the transaction.
ts | transaction set |
dbmode | O_RDONLY or O_RDWR |
Definition at line 115 of file rpmts.c.
References _, _free(), rpmdbOpen(), rpmGetPath(), rpmlog(), RPMLOG_ERR, and rpmtsCloseDB().
Referenced by _rpmtsCheck(), argerror(), ftsCacheUpdate(), rpmcliImportPubkey(), rpmts_Match(), rpmts_OpenDB(), rpmtsAddInstallElement(), rpmtsInitIterator(), rpmtsLoadNVRA(), rpmtsRebuildDB(), rpmtsRollback(), and rpmtsSetup().
int rpmtsOpenSDB | ( | rpmts | ts, |
int | dbmode | ||
) |
Open the database used by the transaction to solve dependencies.
ts | transaction set |
dbmode | O_RDONLY or O_RDWR |
Definition at line 252 of file rpmts.c.
References _, _free(), addMacro(), argvCount(), argvFree(), argvSplit(), delMacro(), RMIL_DEFAULT, rpmdbOpen(), rpmExpand(), rpmExpandNumeric(), rpmGetPath(), rpmlog(), RPMLOG_WARNING, and urlPath().
Referenced by rpmtsSolve(), and rpmtsVerifyDB().
Get transaction set dependencies.
ts | transaction set |
Definition at line 1042 of file rpmts.c.
References _free(), R_OK, rpmdsNewPRCO(), rpmdsSysinfo(), rpmGetPath(), and rpmioAccess().
Referenced by _rpmtsCheck(), and unsatisfiedDepend().
rpmuint32_t rpmtsPrefColor | ( | rpmts | ts | ) |
Retrieve preferred file color.
ts | transaction set |
Definition at line 1465 of file rpmts.c.
Referenced by handleInstInstalledFile(), and handleOverlappedFiles().
|
static |
Definition at line 654 of file rpmts.c.
References _hdr_getops, _hdr_loadops, rpmop_s::bytes, rpmop_s::count, and rpmop_s::usecs.
Referenced by rpmtsPrintStats().
|
static |
Definition at line 671 of file rpmts.c.
References _hdr_getops, _hdr_loadops, rpmswAdd(), rpmswExit(), RPMTS_OP_CHECK, RPMTS_OP_COMPRESS, RPMTS_OP_DBADD, RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, RPMTS_OP_DBREMOVE, RPMTS_OP_DIGEST, RPMTS_OP_ERASE, RPMTS_OP_FINGERPRINT, RPMTS_OP_HDRGET, RPMTS_OP_HDRLOAD, RPMTS_OP_INSTALL, RPMTS_OP_ORDER, RPMTS_OP_READHDR, RPMTS_OP_REPACKAGE, RPMTS_OP_SCRIPTLETS, RPMTS_OP_SIGNATURE, RPMTS_OP_TOTAL, RPMTS_OP_UNCOMPRESS, rpmtsOp(), and rpmtsPrintStat().
Referenced by rpmtsFini().
Return current transaction set problems.
ts | transaction set |
Definition at line 582 of file rpmts.c.
References rpmpsCreate(), and rpmpsLink().
Referenced by _rpmtsCheck(), checkPackageDeps(), cmpArgvStr(), ensureOlder(), handleInstInstalledFile(), handleOverlappedFiles(), relocateFileList(), rpmcliInstallProblems(), rpmts_Check(), rpmts_Problems(), rpmts_Run(), rpmtsAddInstallElement(), rpmtsCheckDSIProblems(), rpmtsSanityCheck(), rpmtsVerifyDB(), and verifyDependencies().
int rpmtsRebuildDB | ( | rpmts | ts | ) |
Rebuild the database used by the transaction.
ts | transaction set |
Definition at line 136 of file rpmts.c.
References _free(), D_, dbiOpen(), headerFree(), RPMDBI_ADDED, RPMDBI_AVAILABLE, RPMDBI_BTREE, RPMDBI_DEPCACHE, RPMDBI_HASH, RPMDBI_PACKAGES, RPMDBI_QUEUE, RPMDBI_RECNO, RPMDBI_REMOVED, RPMDBI_SEQNO, rpmGetPath(), rpmlog(), RPMLOG_DEBUG, rpmtsCloseDB(), rpmtsGetRdb(), rpmtsOpenDB(), Stat(), tagName(), and Unlink().
Referenced by main(), rpmts_RebuildDB(), and rpmtsInitDB().
Get current relocate transaction element.
ts | transaction set |
Definition at line 1404 of file rpmts.c.
Referenced by relocateFileList(), and rpmfiNew().
const char* rpmtsRootDir | ( | rpmts | ts | ) |
Get transaction rootDir, i.e.
path to chroot(2).
ts | transaction set |
Definition at line 901 of file rpmts.c.
References URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_MONGO, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().
Referenced by _rpmtsRun(), createDir(), psmWait(), rpmfiNew(), rpmpsmStage(), rpmts_rootdir_get(), rpmts_rootdir_set(), rpmtsPrepare(), rpmtsProcess(), rpmvfNew(), and runScript().
Definition at line 969 of file rpmts.c.
Referenced by runScript().
int rpmtsSELinuxEnabled | ( | rpmts | ts | ) |
Get selinuxEnabled flag, i.e.
is SE linux enabled?
ts | transaction set |
Definition at line 997 of file rpmts.c.
Referenced by rpmtsFlags(), rpmtsSetFlags(), rpmtsSetup(), and runScript().
void rpmtsSetARBGoal | ( | rpmts | ts, |
rpmuint32_t | goal | ||
) |
Set autorollback goal.
ts | transaction set |
goal | autorollback goal |
Definition at line 884 of file rpmts.c.
Referenced by rpmcliInstall(), rpmErase(), and rpmtsVerifyDB().
int rpmtsSetChrootDone | ( | rpmts | ts, |
int | chrootDone | ||
) |
Set chrootDone flag, i.e.
has chroot(2) been performed?
ts | transaction set |
chrootDone | new chrootDone flag |
Definition at line 1010 of file rpmts.c.
Referenced by psmWait(), rpmpsmStage(), rpmtsPrepare(), and rpmtsSetup().
rpmuint32_t rpmtsSetColor | ( | rpmts | ts, |
rpmuint32_t | color | ||
) |
Set color bits of transaction set.
ts | transaction set |
color | new color bits |
Definition at line 1455 of file rpmts.c.
Referenced by rpmts_SetColor().
void rpmtsSetCurrDir | ( | rpmts | ts, |
const char * | currDir | ||
) |
Set transaction currDir, i.e.
current directory before chroot(2).
ts | transaction set |
currDir | new transaction currDir (or NULL) |
Definition at line 960 of file rpmts.c.
References _free(), and xstrdup().
Referenced by rpmtsSetup().
int rpmtsSetDBMode | ( | rpmts | ts, |
int | dbmode | ||
) |
Set dbmode of transaction set.
ts | transaction set |
dbmode | new dbmode |
Definition at line 1440 of file rpmts.c.
Referenced by rpmts_CloseDB(), and rpmts_OpenDB().
rpmdepFlags rpmtsSetDFlags | ( | rpmts | ts, |
rpmdepFlags | depFlags | ||
) |
Set dependency flags, i.e.
bits that control rpmtsCheck() and rpmtsOrder().
ts | transaction set |
depFlags | new dependency flags |
Definition at line 1378 of file rpmts.c.
Referenced by rpmcliInstall(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmgiNext(), rpmRollback(), and rpmts_SetDFlags().
rpmtransFlags rpmtsSetFlags | ( | rpmts | ts, |
rpmtransFlags | transFlags | ||
) |
Set transaction flags, i.e.
bits that control rpmtsRun().
ts | transaction set |
transFlags | new transaction flags |
Definition at line 1357 of file rpmts.c.
References RPMTRANS_FLAG_NOCONTEXTS, and rpmtsSELinuxEnabled().
Referenced by rpmcliInstall(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmRollback(), rpmts_Rollback(), rpmts_SetFlags(), rpmtsRollback(), and rpmtsSetup().
Set goal of transaction set.
ts | transaction set |
goal | new goal |
Definition at line 1425 of file rpmts.c.
References TSM_UNKNOWN.
Referenced by rpmcliInstall(), rpmErase(), and rpmgiNext().
int rpmtsSetKeyring | ( | rpmts | ts, |
void * | _keyring | ||
) |
Set transaction keyring.
ts | transaction set |
_keyring | new transaction keyring |
Definition at line 807 of file rpmts.c.
References rpmtsGetRdb().
int rpmtsSetNotifyCallback | ( | rpmts | ts, |
rpmCallbackFunction | notify, | ||
rpmCallbackData | notifyData | ||
) |
Set transaction notify callback function and argument.
ts | transaction set |
notify | progress callback |
notifyData | progress callback private data |
Definition at line 1470 of file rpmts.c.
Referenced by rpmcliInstall(), rpmErase(), rpmRollback(), and rpmts_Run().
Set current relocate transaction element.
ts | transaction set |
relocateElement | new relocate transaction element |
Definition at line 1411 of file rpmts.c.
Referenced by addTE(), and rpmtsProcess().
void rpmtsSetRootDir | ( | rpmts | ts, |
const char * | rootDir | ||
) |
Set transaction rootDir, i.e.
path to chroot(2).
ts | transaction set |
rootDir | new transaction rootDir (or NULL) |
Definition at line 925 of file rpmts.c.
References _free(), alloca(), stpcpy(), and xstrdup().
Referenced by main(), rpmts_new(), and rpmts_rootdir_set().
Definition at line 980 of file rpmts.c.
References fdFree(), and fdLink().
Referenced by rpmts_setattro(), and rpmVerifyScript().
int rpmtsSetSolveCallback | ( | rpmts | ts, |
int(*)(rpmts ts, rpmds key, const void *data) | solve, | ||
const void * | solveData | ||
) |
Definition at line 567 of file rpmts.c.
Referenced by rpmts_Check().
Set a spec control structure in transaction set.
ts | transaction set |
spec | new spec control structure |
Definition at line 1395 of file rpmts.c.
Referenced by _specQuery(), and parseSpec().
rpmuint32_t rpmtsSetTid | ( | rpmts | ts, |
rpmuint32_t | tid | ||
) |
Set transaction id, i.e.
transaction time stamp.
ts | transaction set |
tid | new transaction id |
Definition at line 1031 of file rpmts.c.
Referenced by main(), and rpmtsSetup().
Set transaction type.
Allowed types are: RPMTRANS_TYPE_NORMAL RPMTRANS_TYPE_ROLLBACK RPMTRANS_TYPE_AUTOROLLBACK
ts | transaction set |
type | transaction type |
Definition at line 873 of file rpmts.c.
Referenced by rpmRollback(), and rpmtsVerifyDB().
rpmVSFlags rpmtsSetVSFlags | ( | rpmts | ts, |
rpmVSFlags | vsflags | ||
) |
Set verify signatures flag(s).
ts | transaction set |
vsflags | new verify signatures flags |
Definition at line 843 of file rpmts.c.
References pgpDigVSFlags, and vsflags.
Referenced by main(), rpmcliInstall(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmInstallSource(), rpmRollback(), rpmteFDHeader(), rpmts_new(), rpmts_SetVSFlags(), rpmts_vsflags_set(), and rpmtsRollback().
Attempt to solve a needed dependency using the solve database.
ts | transaction set |
ds | dependency set |
data | opaque data associated with callback |
Definition at line 351 of file rpmts.c.
References _, _free(), alloca(), D_, Fclose(), Ferror(), Fopen(), Fstrerror(), headerFree(), headerGet(), headerLink(), headerSprintf(), _HE_s::p, rpmDataType_u::ptr, RPMDEPS_FLAG_ADDINDEPS, rpmdsAnyMatchesDep(), rpmdsEVR(), rpmdsFlags(), rpmdsN(), rpmdsTagN(), rpmExpand(), rpmHeaderFormats, rpmlog(), RPMLOG_DEBUG, RPMLOG_ERR, rpmmiFree(), rpmmiInit(), rpmmiNext(), RPMRC_NOKEY, RPMRC_NOTTRUSTED, RPMRC_OK, rpmReadPackageFile(), RPMTAG_BUILDTIME, RPMTAG_CONFLICTNAME, RPMTAG_DIRNAMES, RPMTAG_FILELINKTOS, RPMTAG_FILEPATHS, RPMTAG_NAME, RPMTAG_PACKAGEORIGIN, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, rpmtsAddInstallElement(), rpmtsOpenSDB(), rpmDataType_u::str, sugcmp(), _HE_s::tag, TSM_INSTALL, rpmDataType_u::ui32p, and xrealloc.
Referenced by rpmts_Check(), rpmtsCreate(), and rpmtsVerifyDB().
Get spec control structure from transaction set.
ts | transaction set |
Definition at line 1388 of file rpmts.c.
Referenced by rpmts_parse_spec(), and spec_Parse().
Return the type of a transaction.
ts | transaction set |
Definition at line 868 of file rpmts.c.
Referenced by _rpmtsRun(), populateInstallHeader(), rpmpsmStage(), rpmtsRollback(), and rpmtsVerifyDB().
int rpmtsUnorderedSuccessors | ( | rpmts | ts, |
int | first | ||
) |
Set index of 1st element of successors.
ts | transaction set |
first | new index of 1st element of successors |
Definition at line 890 of file rpmts.c.
Referenced by rpmtsProcess().
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.
ts | transaction set |
dev | mount point device |
fileSize | file size |
prevSize | previous file size (if upgrading) |
fixupSize | size difference (if |
_action | file disposition |
Definition at line 1179 of file rpmts.c.
References FA_ALTNAME, FA_BACKUP, FA_CREATE, FA_ERASE, and FA_SAVE.
Referenced by handleOverlappedFiles().
rpmVSFlags rpmtsVSFlags | ( | rpmts | ts | ) |
Get verify signatures flag(s).
ts | transaction set |
Definition at line 838 of file rpmts.c.
References pgpDigVSFlags.
Referenced by ftsCacheUpdate(), rpmInstallSource(), rpmpsmStage(), rpmteFDHeader(), rpmts_GetVSFlags(), rpmts_HdrCheck(), rpmts_vsflags_get(), and rpmts_vsflags_set().
|
static |
Compare suggested package resolutions (qsort/bsearch).
a | 1st instance address |
b | 2nd instance address |
Definition at line 343 of file rpmts.c.
Referenced by rpmtsSolve().
rpmop _hdr_getops |
Definition at line 94 of file header.c.
Referenced by rpmtsPrintStat(), and rpmtsPrintStats().
rpmop _hdr_loadops |
Definition at line 90 of file header.c.
Referenced by rpmtsPrintStat(), and rpmtsPrintStats().
int _rpmts_debug = 0 |
Definition at line 93 of file rpmts.c.
Referenced by _rpmtsCheck(), _rpmtsRun(), main(), rpmts_AddErase(), rpmts_AddInstall(), rpmts_alloc(), rpmts_Check(), rpmts_Clean(), rpmts_CloseDB(), rpmts_dealloc(), rpmts_Debug(), rpmts_free(), rpmts_HdrCheck(), rpmts_HdrFromFdno(), rpmts_IDTXglob(), rpmts_IDTXload(), rpmts_InitDB(), rpmts_iter(), rpmts_iternext(), rpmts_Match(), rpmts_new(), rpmts_Next(), rpmts_OpenDB(), rpmts_Order(), rpmts_PgpImportPubkey(), rpmts_PgpPrtPkts(), rpmts_Problems(), rpmts_RebuildDB(), rpmts_Rollback(), rpmts_Run(), rpmts_SetColor(), rpmts_SetDFlags(), rpmts_SetFlags(), rpmts_SetProbFilter(), rpmts_SetVSFlags(), rpmts_SolveCallback(), rpmts_VerifyDB(), and rpmtsCallback().
int _rpmts_stats = 0 |
Definition at line 96 of file rpmts.c.
Referenced by main(), rpmcliInit(), and setStats().
rpmioPool _rpmtsPool |
Definition at line 772 of file rpmts.c.
Referenced by rpmtsGetPool().