Files | |
file | depends.c |
file | psm.c |
Package state machine to handle a package from a transaction set. | |
file | rpmlib.h |
In Memoriam: Steve Taylor <staylor@redhat.com> was here, now he's not. | |
file | rpmte.h |
Structures used for an "rpmte" transaction element. | |
file | rpmts.h |
Structures and prototypes used for an "rpmts" transaction set. | |
file | transaction.c |
RPMTS | |
typedef rpmpsm_s * | rpmpsm |
Package state machine data. | |
typedef enum rpmdepFlags_e | rpmdepFlags |
Bit(s) to control rpmtsCheck() and rpmtsOrder() operation. | |
typedef enum rpmtransFlags_e | rpmtransFlags |
Bit(s) to control rpmtsRun() operation. | |
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_KEEPOBSOLETE = (1 << 7), 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_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_APPLYONLY = (1 << 25), RPMTRANS_FLAG_NOFDIGESTS = (1 << 27), RPMTRANS_FLAG_NOCONFIGS = (1 << 30) } |
Bit(s) to control rpmtsRun() operation. More... | |
Typedefs | |
typedef rpmts_s * | rpmts |
The RPM Transaction Set. | |
typedef void * | alKey |
An added/available package retrieval key. | |
typedef int | alNum |
An added/available package retrieval index. | |
Functions | |
int | rpmtsCheck (rpmts ts) |
Check that all dependencies can be resolved. | |
int | rpmtsOrder (rpmts ts) |
Determine package order in a transaction set according to dependencies. | |
int | rpmtsRun (rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet) |
Process all package elements in a transaction set. | |
rpmRC | rpmtsRollback (rpmts rbts, rpmprobFilterFlags ignoreSet, int running, rpmte rbte) |
Rollback a failed transaction. | |
rpmts | rpmtsUnlink (rpmts ts, const char *msg) |
Unreference a transaction instance. | |
rpmts | rpmtsLink (rpmts ts, const char *msg) |
Reference a transaction set instance. | |
int | rpmtsCloseDB (rpmts ts) |
Close the database used by the transaction. | |
int | rpmtsOpenDB (rpmts ts, int dbmode) |
Open the database used by the transaction. | |
int | rpmtsInitDB (rpmts ts, int dbmode) |
Initialize the database used by the transaction. | |
int | rpmtsRebuildDB (rpmts ts) |
Rebuild the database used by the transaction. | |
int | rpmtsVerifyDB (rpmts ts) |
Verify the database used by the transaction. | |
rpmdbMatchIterator | rpmtsInitIterator (const rpmts ts, rpmTag rpmtag, const void *keyp, size_t keylen) |
Return transaction database iterator. | |
int | rpmtsCloseSDB (rpmts ts) |
Close the database used by the transaction to solve dependencies. | |
int | rpmtsOpenSDB (rpmts ts, int dbmode) |
Open the database used by the transaction to solve dependencies. | |
void | rpmtsCleanDig (rpmts ts) |
Free signature verification data. | |
void | rpmtsClean (rpmts ts) |
Free memory needed only for dependency checks and ordering. | |
void | rpmtsEmpty (rpmts ts) |
Re-create an empty transaction set. | |
rpmts | rpmtsFree (rpmts ts) |
Destroy transaction set, closing the database as well. | |
rpmVSFlags | rpmtsVSFlags (rpmts ts) |
Get verify signatures flag(s). | |
rpmVSFlags | rpmtsSetVSFlags (rpmts ts, rpmVSFlags vsflags) |
Set verify signatures flag(s). | |
int | rpmtsUnorderedSuccessors (rpmts ts, int first) |
Set index of 1st element of successors. | |
const char * | rpmtsRootDir (rpmts ts) |
Get transaction rootDir, i.e. | |
void | rpmtsSetRootDir (rpmts ts, const char *rootDir) |
Set transaction rootDir, i.e. | |
const char * | rpmtsCurrDir (rpmts ts) |
Get transaction currDir, i.e. | |
void | rpmtsSetCurrDir (rpmts ts, const char *currDir) |
Set transaction currDir, i.e. | |
FD_t | rpmtsScriptFd (rpmts ts) |
Get transaction script file handle, i.e. | |
void | rpmtsSetScriptFd (rpmts ts, FD_t scriptFd) |
Set transaction script file handle, i.e. | |
int | rpmtsSELinuxEnabled (rpmts ts) |
Get selinuxEnabled flag, i.e. | |
int | rpmtsChrootDone (rpmts ts) |
Get chrootDone flag, i.e. | |
int | rpmtsSetChrootDone (rpmts ts, int chrootDone) |
Set chrootDone flag, i.e. | |
rpmsx | rpmtsREContext (const rpmts ts) |
Get file security context patterns. | |
int | rpmtsSetREContext (rpmts ts, rpmsx sx) |
Get file security context patterns. | |
int_32 | rpmtsGetTid (rpmts ts) |
Get transaction id, i.e. | |
int_32 | rpmtsSetTid (rpmts ts, int_32 tid) |
Set transaction id, i.e. | |
int_32 | rpmtsSigtag (const rpmts ts) |
Get signature tag. | |
int_32 | rpmtsSigtype (const rpmts ts) |
Get signature tag type. | |
const void * | rpmtsSig (const rpmts ts) |
Get signature tag data, i.e. | |
int_32 | rpmtsSiglen (const rpmts ts) |
Get signature tag data length, i.e. | |
int | rpmtsSetSig (rpmts ts, int_32 sigtag, int_32 sigtype, const void *sig, int_32 siglen) |
Set signature tag info, i.e. | |
pgpDig | rpmtsDig (rpmts ts) |
Get OpenPGP packet parameters, i.e. | |
pgpDigParams | rpmtsSignature (const rpmts ts) |
Get OpenPGP signature constants. | |
pgpDigParams | rpmtsPubkey (const rpmts ts) |
Get OpenPGP pubkey constants. | |
rpmdb | rpmtsGetRdb (rpmts ts) |
Get transaction set database handle. | |
rpmPRCO | rpmtsPRCO (rpmts ts) |
Get transaction set dependencies. | |
int | rpmtsInitDSI (const rpmts ts) |
Initialize disk space info for each and every mounted file systems. | |
void | rpmtsUpdateDSI (const rpmts ts, dev_t dev, uint_32 fileSize, uint_32 prevSize, uint_32 fixupSize, fileAction action) |
Update disk space info for a file. | |
void | rpmtsCheckDSIProblems (const rpmts ts, const rpmte te) |
Check a transaction element for disk space problems. | |
rpmprobFilterFlags | rpmtsFilterFlags (rpmts ts) |
Get problem ignore bit mask, i.e. | |
rpmtransFlags | rpmtsFlags (rpmts ts) |
Get transaction flags, i.e. | |
rpmtransFlags | rpmtsSetFlags (rpmts ts, rpmtransFlags transFlags) |
Set transaction flags, i.e. | |
rpmdepFlags | rpmtsDFlags (rpmts ts) |
Get dependency flags, i.e. | |
rpmdepFlags | rpmtsSetDFlags (rpmts ts, rpmdepFlags depFlags) |
Set dependency flags, i.e. | |
Spec | rpmtsSpec (rpmts ts) |
Get spec control structure from transaction set. | |
Spec | rpmtsSetSpec (rpmts ts, Spec spec) |
Set a spec control structure in transaction set. | |
rpmte | rpmtsRelocateElement (rpmts ts) |
Get current relocate transaction element. | |
rpmte | rpmtsSetRelocateElement (rpmts ts, rpmte relocateElement) |
Set current relocate transaction element. | |
int | rpmtsSetNotifyCallback (rpmts ts, rpmCallbackFunction notify, rpmCallbackData notifyData) |
Set transaction notify callback function and argument. | |
rpmts | rpmtsCreate (void) |
Create an empty transaction set. | |
int | rpmtsAddInstallElement (rpmts ts, Header h, const fnpyKey key, int upgrade, rpmRelocation relocs) |
Add package to be installed to transaction set. | |
int | rpmtsAddEraseElement (rpmts ts, Header h, int dboffset) |
Add package to be erased to transaction set. |
|
An added/available package retrieval key.
|
|
An added/available package retrieval index.
|
|
Bit(s) to control rpmtsCheck() and rpmtsOrder() operation.
|
|
Package state machine data.
|
|
Bit(s) to control rpmtsRun() operation.
|
|
The RPM Transaction Set. Transaction sets are inherently unordered! RPM may reorder transaction sets to reduce errors. In general, installs/upgrades are done before strict removals, and prerequisite ordering is done on installs/upgrades. |
|
Bit(s) to control rpmtsCheck() and rpmtsOrder() operation.
|
|
Bit(s) to control rpmtsRun() operation.
|
|
Add package to be erased to transaction set.
Definition at line 510 of file depends.c. References removePackage(), and RPMAL_NOMATCH. Referenced by findErases(), rpmErase(), rpmgiNext(), rpmts_AddErase(), and verifyDependencies(). |
|
|
Check that all dependencies can be resolved.
Definition at line 2282 of file depends.c. References _cacheDependsRC, _free(), checkDependentConflicts(), checkDependentPackages(), checkPackageDeps(), rpmalMakeIndex(), rpmdbCloseDBI(), rpmdbFreeIterator(), RPMDBI_DEPENDS, RPMDEPS_FLAG_NOCONFLICTS, RPMDEPS_FLAG_NOLINKTOS, RPMDEPS_FLAG_NOPARENTDIRS, RPMDEPS_FLAG_NOREQUIRES, rpmdsEVR(), rpmdsFromPRCO(), rpmdsInit(), rpmdsN(), rpmdsNegateRC(), rpmdsNext(), rpmdsNSType(), rpmfiFN(), rpmfiInit(), rpmfiNext(), RPMMESS_DEBUG, rpmMessage, RPMNS_TYPE_ENVVAR, RPMPROB_FILTER_NONE, rpmpsCreate(), rpmpsFree(), rpmpsNumProblems(), rpmswEnter(), rpmswExit(), RPMTAG_BASENAMES, RPMTAG_CONFLICTNAME, RPMTAG_DIRNAMES, RPMTAG_FILELINKTOS, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, rpmteA(), rpmteColor(), rpmteDS(), rpmteFI(), rpmteNEVR(), rpmteNEVRA(), rpmteO(), RPMTS_OP_CHECK, rpmtsCloseDB(), rpmtsColor(), rpmtsDFlags(), rpmtsGetRdb(), rpmtsiFree, rpmtsiInit, rpmtsiNext(), rpmtsOp(), rpmtsOpenDB(), rpmtsProblems(), rpmtsRollback(), TR_ADDED, TR_REMOVED, and xstrdup(). Referenced by checkSpec(), rpmErase(), rpmgiNext(), rpmInstall(), rpmrbCheck(), rpmts_Check(), and verifyDependencies(). |
|
Check a transaction element for disk space problems.
Definition at line 1291 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 rpmtsRun(). |
|
Get chrootDone flag, i.e. has chroot(2) been performed?
Definition at line 989 of file rpmts.c. Referenced by rpmpsmStage(), rpmtsRun(), and runScript(). |
|
Free memory needed only for dependency checks and ordering.
Definition at line 671 of file rpmts.c. References _free(), rpmalFree(), rpmpsFree(), rpmteCleanDS(), rpmtsCleanDig(), rpmtsiFree, rpmtsiInit, and rpmtsiNext(). Referenced by checkSpec(), rpmcliImportPubkeys(), rpmErase(), rpmInstall(), rpmInstallSourcePackage(), rpmRollback(), rpmts_Clean(), rpmtsEmpty(), and rpmtsOrder(). |
|
Free signature verification data.
Definition at line 665 of file rpmts.c. References headerFreeData(), and pgpFreeDig(). Referenced by headerCheck(), rpmReadPackageFile(), rpmtsClean(), and rpmVerifySignatures(). |
|
Close the database used by the transaction.
Definition at line 95 of file rpmts.c. References rpmdbClose(), rpmswAdd(), RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, and rpmtsOp(). Referenced by rpmts_CloseDB(), rpmts_InitDB(), rpmtsCheck(), rpmtsFree(), and rpmtsOpenDB(). |
|
Close the database used by the transaction to solve dependencies.
Definition at line 388 of file rpmts.c. References rpmdbClose(), rpmswAdd(), RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, and rpmtsOp(). Referenced by rpmtsFree(). |
|
Create an empty transaction set.
Definition at line 1479 of file rpmts.c. References _free(), is_selinux_enabled, R_OK, rpmdsNewPRCO(), rpmdsSysinfo(), rpmExpandNumeric(), rpmGetPath(), rpmioAccess(), rpmswEnter(), RPMTRANS_TYPE_NORMAL, RPMTS_OP_TOTAL, rpmtsLink, rpmtsOp(), rpmtsSolve(), and xcalloc(). Referenced by cpio_doio(), main(), readRPM(), rpmfcFindRequiredPackages(), rpmts_Create(), and rpmts_init(). |
|
Get transaction currDir, i.e. current directory before chroot(2).
Definition at line 940 of file rpmts.c. Referenced by rpmpsmStage(), and rpmtsRun(). |
|
Get dependency flags, i.e. bits that control rpmtsCheck() and rpmtsOrder().
Definition at line 1391 of file rpmts.c. Referenced by checkPackageSet(), ignoreDep(), rpmgiNext(), rpmtsAddInstallElement(), rpmtsCheck(), rpmtsOrder(), rpmtsRollback(), and unsatisfiedDepend(). |
|
Get OpenPGP packet parameters, i.e. signature/pubkey constants.
Definition at line 1090 of file rpmts.c. References pgpNewDig(). Referenced by headerCheck(), rpmReadPackageFile(), rpmtsFindPubkey(), rpmtsPubkey(), rpmtsSignature(), rpmtsStashKeyid(), rpmVerifySignature(), rpmVerifySignatures(), verifyDSASignature(), verifyMD5Signature(), verifyRSASignature(), verifySHA1Signature(), and verifySizeSignature(). |
|
Re-create an empty transaction set.
Definition at line 698 of file rpmts.c. References rpmteFree(), rpmtsClean(), rpmtsiFree, rpmtsiInit, and rpmtsiNext(). Referenced by rpmcliArgIter(), rpmcliVerify(), rpmErase(), rpmInstall(), rpmRollback(), rpmtsFree(), rpmtsRollback(), and verifyDependencies(). |
|
Get problem ignore bit mask, i.e. bits to filter encountered problems.
Definition at line 1371 of file rpmts.c. Referenced by handleOverlappedFiles(), relocateFileList(), rpmtsInitDSI(), and rpmtsRun(). |
|
Get transaction flags, i.e. bits that control rpmtsRun().
Definition at line 1376 of file rpmts.c. Referenced by fsmMapAttrs(), fsmMapFContext(), fsmMkdirs(), fsmStage(), handleInstInstalledFiles(), rpmInstall(), rpmpsmStage(), rpmtsRollback(), rpmtsRun(), and skipFiles(). |
|
Destroy transaction set, closing the database as well.
Definition at line 765 of file rpmts.c. References _free(), _rpmts_stats, fdFree, rpmalFree(), rpmdsFreePRCO(), rpmsxFree(), rpmtsCloseDB(), rpmtsCloseSDB(), rpmtsEmpty(), rpmtsPrintStats(), and rpmtsUnlink. Referenced by cpio_doio(), main(), mapFreeIterator(), readRPM(), rpmfcFindRequiredPackages(), rpmgiFree(), rpmInstallSourcePackage(), rpmpsmFree(), rpmts_dealloc(), rpmts_free(), and XrpmtsiFree(). |
|
Get transaction set database handle.
Definition at line 1119 of file rpmts.c. Referenced by checkDependentConflicts(), checkDependentPackages(), handleOneTrigger(), rpmcliImportPubkey(), rpmpsmStage(), rpmtsAddInstallElement(), rpmtsCheck(), rpmtsRollback(), rpmtsRun(), runTriggers(), and unsatisfiedDepend(). |
|
Get transaction id, i.e. transaction time stamp.
Definition at line 1023 of file rpmts.c. Referenced by fsmSetup(), rpmcliImportPubkey(), rpmpsmStage(), and rpmtsRollback(). |
|
Initialize the database used by the transaction.
Definition at line 132 of file rpmts.c. References rpmdbInit(). Referenced by main(), and rpmts_InitDB(). |
|
Initialize disk space info for each and every mounted file systems.
Definition at line 1137 of file rpmts.c. References _, _free(), rpmGetFilesystemList(), RPMMESS_DEBUG, rpmMessage, RPMPROB_FILTER_DISKSPACE, rpmtsFilterFlags(), ST_RDONLY, and xcalloc(). Referenced by rpmtsRun(), and unsatisfiedDepend(). |
|
Return transaction database iterator.
Definition at line 158 of file rpmts.c. References _, alloca(), headerCheck(), RPMDBI_LABEL, rpmdbInitIterator(), rpmdbSetHdrChk(), rpmdbSetIteratorRE(), RPMERR_QFMT, rpmError, rpmnsArch(), RPMTAG_ARCH, rpmtsOpenDB(), RPMVSF_NOHDRCHK, and xisdigit(). Referenced by checkDependentConflicts(), checkDependentPackages(), handleInstInstalledFiles(), handleRmvdInstalledFiles(), IDTXload(), markReplacedFiles(), rpmErase(), rpmfcFindRequiredPackages(), rpmgiInitFilter(), rpmInstall(), rpmpsmStage(), rpmQueryVerify(), rpmts_AddErase(), rpmts_Match(), rpmtsAddInstallElement(), rpmtsFindPubkey(), rpmtsRun(), runImmedTriggers(), runTriggers(), and unsatisfiedDepend(). |
|
Reference a transaction set instance.
|
|
Open the database used by the transaction.
Definition at line 109 of file rpmts.c. References _, _free(), rpmdbOpen(), rpmGetPath(), RPMMESS_ERROR, rpmMessage, and rpmtsCloseDB(). Referenced by rpmcliImportPubkey(), rpmts_Match(), rpmts_OpenDB(), rpmtsAddInstallElement(), rpmtsCheck(), rpmtsInitIterator(), rpmtsRollback(), and rpmtsRun(). |
|
Open the database used by the transaction to solve dependencies.
Definition at line 402 of file rpmts.c. References _, _free(), addMacro(), delMacro(), RMIL_DEFAULT, rpmdbOpen(), rpmExpandNumeric(), rpmGetPath(), RPMMESS_WARNING, and rpmMessage. Referenced by rpmtsSolve(). |
|
Determine package order in a transaction set according to dependencies. Order packages, returning error if circular dependencies cannot be eliminated by removing Requires's from the loop(s). Only dependencies from added or removed packages are used to determine ordering using a topological sort (Knuth vol. 1, p. 262). Use rpmtsCheck() to verify that all dependencies can be resolved. The final order ends up as installed packages followed by removed packages, with packages removed for upgrades immediately following the new package to be installed.
Definition at line 1806 of file depends.c. References _, _autobits, _free(), addQ(), addRelation(), alloca(), freeBadDeps(), isAuto, markLoop(), orderListIndexCmp(), orderListIndex_s::pkgKey, RPMAL_NOMATCH, rpmalAdd(), rpmalMakeIndex(), RPMDEPS_FLAG_ANACONDA, RPMDEPS_FLAG_DEPLOOPS, rpmdsFlags(), rpmdsInit(), rpmdsNext(), RPMMESS_DEBUG, RPMMESS_ERROR, RPMMESS_WARNING, rpmMessage, RPMPROB_FILTER_NONE, rpmswEnter(), rpmswExit(), RPMTAG_BASENAMES, RPMTAG_DIRNAMES, RPMTAG_FILELINKTOS, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, rpmteAddedKey(), rpmteDegree(), rpmteDepth(), rpmteDS(), rpmteFI(), rpmteFreeTSI(), rpmteNEVRA(), rpmteNewTSI(), rpmteNpreds(), rpmtePkgFileSize(), rpmteSetAddedKey(), rpmteSetBreadth(), rpmteSetDegree(), rpmteSetDepth(), rpmteSetNpreds(), rpmteSetParent(), rpmteSetTree(), rpmteTree(), rpmteTSI(), rpmteType(), RPMTS_OP_ORDER, rpmtsClean(), rpmtsColor(), rpmtsDFlags(), rpmtsiFree, rpmtsiInit, rpmtsiNext(), rpmtsiOc(), rpmtsOp(), rpmtsPrefColor(), rpmtsRollback(), rpmtsUnorderedSuccessors(), stpcpy(), TR_ADDED, TR_REMOVED, xcalloc(), and zapRelation(). Referenced by rpmErase(), rpmgiNew(), rpmInstall(), rpmrbOrder(), and rpmts_Order(). |
|
Get transaction set dependencies.
|
|
Get OpenPGP pubkey constants.
Definition at line 1110 of file rpmts.c. References pgpDig_s::pubkey, and rpmtsDig(). Referenced by rpmtsFindPubkey(). |
|
Rebuild the database used by the transaction.
Definition at line 140 of file rpmts.c. References headerCheck(), rpmdbRebuild(), and RPMVSF_NOHDRCHK. Referenced by main(), and rpmts_RebuildDB(). |
|
Get file security context patterns.
Definition at line 1006 of file rpmts.c. References rpmsxLink. Referenced by fsmMapFContext(), fsmMkdirs(), rpmInstall(), and rpmts_Run(). |
|
Get current relocate transaction element.
Definition at line 1422 of file rpmts.c. Referenced by relocateFileList(), and rpmfiNew(). |
|
Rollback a failed transaction.
Definition at line 968 of file transaction.c. References _, _free(), _processFailedPackage(), _RPMVSF_NODIGESTS, _RPMVSF_NOSIGNATURES, alloca(), Fclose(), Fopen(), INSTALL_HASH, INSTALL_UPGRADE, rpmdbRemove(), rpmExpand(), rpmExpandNumeric(), RPMMESS_ERROR, RPMMESS_NORMAL, rpmMessage, RPMRC_OK, rpmRollback(), rpmteNEVRA(), RPMTRANS_FLAG_DIRSTASH, RPMTRANS_FLAG_NOFDIGESTS, RPMTRANS_FLAG_REPACKAGE, RPMTRANS_TYPE_AUTOROLLBACK, RPMTRANS_TYPE_ROLLBACK, rpmtsARBGoal(), rpmtsDFlags(), rpmtsEmpty(), rpmtsFlags(), rpmtsGetRdb(), rpmtsGetTid(), rpmtsiFree, rpmtsiInit, rpmtsiNext(), rpmtsOpenDB(), rpmtsSetFlags(), rpmtsSetVSFlags(), rpmtsType(), RPMVSF_NEEDPAYLOAD, RPMVSF_NOHDRCHK, TR_REMOVED, and Unlink(). Referenced by rpmtsCheck(), rpmtsOrder(), and rpmtsRun(). |
|
Get transaction rootDir, i.e. path to chroot(2).
Definition at line 887 of file rpmts.c. References URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath(). Referenced by rpmInstall(), rpmInstallSourcePackage(), rpmpsmStage(), rpmtsRun(), rpmVerifyFile(), and runScript(). |
|
Process all package elements in a transaction set. Before calling rpmtsRun be sure to have:
Additionally, though not required you may want to:
Definition at line 1151 of file transaction.c. References _, _free(), _noTransScripts, _noTransTriggers, Chdir(), Chroot(), CPIO_ALL_HARDLINKS, CPIO_MAP_ABSOLUTE, CPIO_MAP_ADDDOT, CPIO_SBIT_CHECK, currentDirectory(), dbiFreeIndexSet(), dbiIndexRecordFileNumber(), dbiIndexRecordOffset(), dbiIndexSetCount(), ensureOlder(), rpmpsm_s::fi, fpCacheCreate(), fpCacheFree(), fpEqual(), fpHashFunction(), fpLookupList(), handleInstInstalledFiles(), handleOverlappedFiles(), handleRmvdInstalledFiles(), headerFree(), htAddEntry(), htCreate(), htFree(), markLinkedFailed(), NOTIFY, rpmpsm_s::progTag, PSM_PKGERASE, PSM_PKGINSTALL, PSM_PKGSAVE, PSM_SCRIPT, RPMCALLBACK_INST_CLOSE_FILE, RPMCALLBACK_INST_OPEN_FILE, RPMCALLBACK_REPACKAGE_PROGRESS, RPMCALLBACK_REPACKAGE_START, RPMCALLBACK_REPACKAGE_STOP, RPMCALLBACK_TRANS_PROGRESS, RPMCALLBACK_TRANS_START, RPMCALLBACK_TRANS_STOP, rpmdbCheckSignals(), rpmdbFindFpList(), rpmdbFreeIterator(), rpmdbNextIterator(), rpmdbOpenAll(), rpmdbSetIteratorRE(), rpmdbSync(), rpmExpandNumeric(), rpmfiFC(), rpmfiFree(), rpmfiInit(), rpmfiLink, rpmfiNew(), rpmfiNext(), RPMMESS_DEBUG, RPMMESS_ERROR, rpmMessage, RPMPROB_FILTER_OLDPACKAGE, RPMPROB_FILTER_REPLACEOLDFILES, RPMPROB_FILTER_REPLACEPKG, RPMPROB_PKG_INSTALLED, rpmpsAppend(), rpmpsCreate(), rpmpsFree(), rpmpsmFree(), rpmpsmNew(), rpmpsmStage(), rpmpsNumProblems(), rpmpsTrim(), RPMRC_NOKEY, RPMRC_NOTTRUSTED, RPMRC_OK, rpmReadPackageFile(), rpmswEnter(), rpmswExit(), RPMTAG_ARCH, RPMTAG_BASENAMES, RPMTAG_EPOCH, RPMTAG_NAME, RPMTAG_OS, RPMTAG_POSTTRANS, RPMTAG_POSTTRANSPROG, RPMTAG_PRETRANS, RPMTAG_PRETRANSPROG, RPMTAG_RELEASE, RPMTAG_VERSION, rpmteA(), rpmteAddedKey(), rpmteColor(), rpmteDBOffset(), rpmteE(), rpmteFd(), rpmteKey(), rpmteN(), rpmteNEVR(), rpmteO(), rpmteR(), rpmteType(), rpmteV(), RPMTRANS_FLAG_BUILD_PROBS, RPMTRANS_FLAG_DIRSTASH, RPMTRANS_FLAG_JUSTDB, RPMTRANS_FLAG_NOSCRIPTS, RPMTRANS_FLAG_NOTRIGGERS, RPMTRANS_FLAG_REPACKAGE, RPMTRANS_FLAG_TEST, RPMTRANS_TYPE_AUTOROLLBACK, RPMTRANS_TYPE_ROLLBACK, RPMTS_OP_ERASE, RPMTS_OP_FINGERPRINT, RPMTS_OP_INSTALL, RPMTS_OP_REPACKAGE, rpmtsCheckDSIProblems(), rpmtsChrootDone(), rpmtsColor(), rpmtsCurrDir(), rpmtsFilterFlags(), rpmtsFlags(), rpmtsGetRdb(), rpmtsiFi(), rpmtsiFree, rpmtsiInit, rpmtsiNext(), rpmtsInitDSI(), rpmtsInitIterator(), rpmtsiOc(), rpmtsNElements(), rpmtsOp(), rpmtsOpenDB(), rpmtsProblems(), rpmtsRollback(), rpmtsRootDir(), rpmtsSetChrootDone(), rpmtsSetCurrDir(), rpmtsSetFlags(), rpmtsSetRelocateElement(), rpmtsSetTid(), rpmtsSetVSFlags(), rpmtsType(), rpmtsUnorderedSuccessors(), rpmtsVSFlags(), RPMVSF_NEEDPAYLOAD, rpmpsm_s::scriptTag, sharedCmp(), skipFiles(), rpmpsm_s::stepName, TR_ADDED, TR_REMOVED, rpmpsm_s::unorderedSuccessor, xcalloc(), XFA_SKIPPING, and xmalloc(). Referenced by rpmErase(), rpmInstall(), rpmrbRun(), and rpmts_Run(). |
|
Get transaction script file handle, i.e. stdout/stderr on scriptlet execution
Definition at line 958 of file rpmts.c. Referenced by runScript(). |
|
Get selinuxEnabled flag, i.e. is SE linux enabled?
Definition at line 984 of file rpmts.c. Referenced by fsmMapFContext(), fsmMkdirs(), and runScript(). |
|
Set chrootDone flag, i.e. has chroot(2) been performed?
Definition at line 994 of file rpmts.c. Referenced by rpmpsmStage(), and rpmtsRun(). |
|
Set transaction currDir, i.e. current directory before chroot(2).
Definition at line 949 of file rpmts.c. References _free(), and xstrdup(). Referenced by rpmtsRun(). |
|
Set dependency flags, i.e. bits that control rpmtsCheck() and rpmtsOrder().
Definition at line 1396 of file rpmts.c. Referenced by rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmgiNext(), rpmInstall(), rpmRollback(), and rpmts_SetDFlags(). |
|
Set transaction flags, i.e. bits that control rpmtsRun().
Definition at line 1381 of file rpmts.c. Referenced by rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmInstall(), rpmRollback(), rpmts_Rollback(), rpmts_SetFlags(), rpmtsRollback(), and rpmtsRun(). |
|
Set transaction notify callback function and argument.
Definition at line 1469 of file rpmts.c. Referenced by rpmErase(), rpmInstall(), rpmRollback(), and rpmts_Run(). |
|
Get file security context patterns.
Definition at line 1011 of file rpmts.c. References rpmsxFree(), and rpmsxLink. Referenced by rpmInstall(), and rpmts_Run(). |
|
Set current relocate transaction element.
Definition at line 1429 of file rpmts.c. Referenced by addTE(), and rpmtsRun(). |
|
Set transaction rootDir, i.e. path to chroot(2).
Definition at line 912 of file rpmts.c. References _free(), alloca(), stpcpy(), and xstrdup(). Referenced by main(), rpmts_Create(), and rpmts_init(). |
|
Set transaction script file handle, i.e. stdout/stderr on scriptlet execution
Definition at line 969 of file rpmts.c. References fdFree, and fdLink. Referenced by rpmts_setattro(), and rpmVerifyScript(). |
|
Set signature tag info, i.e. from header.
Definition at line 1074 of file rpmts.c. References headerFreeData(). Referenced by headerCheck(), rpmReadPackageFile(), and rpmVerifySignatures(). |
|
Set a spec control structure in transaction set.
Definition at line 1413 of file rpmts.c. Referenced by _specQuery(), buildForTarget(), and parseSpec(). |
|
Set transaction id, i.e. transaction time stamp.
Definition at line 1032 of file rpmts.c. Referenced by rpmtsRun(). |
|
Set verify signatures flag(s).
Definition at line 829 of file rpmts.c. Referenced by build(), main(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmInstall(), rpmInstallSource(), rpmRollback(), rpmts_Create(), rpmts_init(), rpmts_SetVSFlags(), rpmtsRollback(), and rpmtsRun(). |
|
Get signature tag data, i.e. from header.
Definition at line 1058 of file rpmts.c. Referenced by rpmtsFindPubkey(), rpmtsStashKeyid(), rpmVerifySignature(), verifyDSASignature(), verifyMD5Signature(), verifyRSASignature(), verifySHA1Signature(), and verifySizeSignature(). |
|
Get signature tag data length, i.e. no. of bytes of data.
Definition at line 1066 of file rpmts.c. Referenced by rpmVerifySignature(), verifyDSASignature(), verifyMD5Signature(), verifyRSASignature(), and verifySHA1Signature(). |
|
Get OpenPGP signature constants.
Definition at line 1101 of file rpmts.c. References rpmtsDig(), and pgpDig_s::signature. Referenced by rpmtsFindPubkey(), rpmtsStashKeyid(), rpmVerifySignatures(), verifyDSASignature(), and verifyRSASignature(). |
|
Get signature tag.
Definition at line 1042 of file rpmts.c. Referenced by rpmVerifySignature(), verifyDSASignature(), and verifyRSASignature(). |
|
Get signature tag type.
|
|
Get spec control structure from transaction set.
Definition at line 1406 of file rpmts.c. Referenced by spec_Parse(). |
|
Unreference a transaction instance.
|
|
Set index of 1st element of successors.
Definition at line 876 of file rpmts.c. Referenced by rpmtsOrder(), and rpmtsRun(). |
|
Update disk space info for a file.
Definition at line 1241 of file rpmts.c. References FA_ALTNAME, FA_BACKUP, FA_CREATE, FA_ERASE, and FA_SAVE. Referenced by handleOverlappedFiles(). |
|
Verify the database used by the transaction.
Definition at line 152 of file rpmts.c. References rpmdbVerify(). Referenced by main(), and rpmts_VerifyDB(). |
|
Get verify signatures flag(s).
Definition at line 821 of file rpmts.c. Referenced by headerCheck(), rpmInstallSource(), rpmpsmStage(), rpmReadPackageFile(), and rpmtsRun(). |