#include <rpmsq.h>
Go to the source code of this file.
Data Structures | |
struct | rpmpsm_s |
Defines | |
#define | PSM_VERBOSE 0x8000 |
#define | PSM_INTERNAL 0x4000 |
#define | PSM_SYSCALL 0x2000 |
#define | PSM_DEAD 0x1000 |
#define | _fv(_a) ((_a) | PSM_VERBOSE) |
#define | _fi(_a) ((_a) | PSM_INTERNAL) |
#define | _fs(_a) ((_a) | (PSM_INTERNAL | PSM_SYSCALL)) |
#define | _fd(_a) ((_a) | (PSM_INTERNAL | PSM_DEAD)) |
#define | rpmpsmUnlink(_psm, _msg) XrpmpsmUnlink(_psm, _msg, __FILE__, __LINE__) |
#define | rpmpsmLink(_psm, _msg) XrpmpsmLink(_psm, _msg, __FILE__, __LINE__) |
#define | rpmpsmUNSAFE rpmpsmSTAGE |
Typedefs | |
typedef enum pkgStage_e | pkgStage |
Enumerations | |
enum | pkgStage_e { PSM_UNKNOWN = 0, PSM_INIT = 1, PSM_PRE = 2, PSM_PROCESS = 3, PSM_POST = 4, PSM_UNDO = 5, PSM_FINI = 6, PSM_PKGINSTALL = 7, PSM_PKGERASE = 8, PSM_PKGCOMMIT = 10, PSM_PKGSAVE = 12, PSM_CREATE = 17, PSM_NOTIFY = 22, PSM_DESTROY = 23, PSM_COMMIT = 25, PSM_CHROOT_IN = 51, PSM_CHROOT_OUT = 52, PSM_SCRIPT = 53, PSM_TRIGGERS = 54, PSM_IMMED_TRIGGERS = 55, PSM_RPMIO_FLAGS = 56, PSM_RPMDB_LOAD = 97, PSM_RPMDB_ADD = 98, PSM_RPMDB_REMOVE = 99 } |
Functions | |
rpmpsm | rpmpsmUnlink (rpmpsm psm, const char *msg) |
Unreference a package state machine instance. | |
rpmpsm | XrpmpsmUnlink (rpmpsm psm, const char *msg, const char *fn, unsigned ln) |
rpmpsm | rpmpsmLink (rpmpsm psm, const char *msg) |
Reference a package state machine instance. | |
rpmpsm | XrpmpsmLink (rpmpsm psm, const char *msg, const char *fn, unsigned ln) |
rpmpsm | rpmpsmFree (rpmpsm psm) |
Destroy a package state machine. | |
rpmpsm | rpmpsmNew (rpmts ts, rpmte te, rpmfi fi) |
Create and load a package state machine. | |
rpmRC | rpmpsmStage (rpmpsm psm, pkgStage stage) |
Package state machine driver. | |
Variables | |
int | _psm_debug |
Definition in file psm.h.
#define rpmpsmLink | ( | _psm, | |||
_msg | ) | XrpmpsmLink(_psm, _msg, __FILE__, __LINE__) |
#define rpmpsmUnlink | ( | _psm, | |||
_msg | ) | XrpmpsmUnlink(_psm, _msg, __FILE__, __LINE__) |
typedef enum pkgStage_e pkgStage |
enum pkgStage_e |
Destroy a package state machine.
psm | package state machine |
Definition at line 1279 of file psm.c.
References _free(), rpmpsm_s::fi, rpmpsm_s::nrefs, rpmfiFree(), rpmpsmUnlink, rpmteFree(), rpmtsFree(), rpmpsm_s::te, and rpmpsm_s::ts.
Referenced by rpmtsRun(), and rpmVerifyScript().
Reference a package state machine instance.
psm | package state machine | |
msg |
Create and load a package state machine.
ts | transaction set | |
te | transaction set element | |
fi | file info set |
Definition at line 1312 of file psm.c.
References rpmfiLink, rpmpsmLink, rpmtsLink, and xcalloc().
Referenced by rpmtsRun(), and rpmVerifyScript().
Package state machine driver.
Definition at line 1355 of file psm.c.
References _, _free(), rpmpsm_s::amount, rpmpsm_s::cfd, rpmpsm_s::chrootDone, rpmpsm_s::countCorrection, CPIO_MAP_GID, CPIO_MAP_MODE, CPIO_MAP_PATH, CPIO_MAP_UID, CPIO_SBIT_CHECK, cpioStrerror(), dbiOpen(), errno, FA_COPYOUT, rpmpsm_s::failedFile, Fclose(), rpmpsm_s::fd, fdDup(), Fdopen(), FDSTAT_DIGEST, fdstat_op(), FDSTAT_READ, FDSTAT_WRITE, Ferror(), Fflush(), rpmpsm_s::fi, Fileno(), Fopen(), FSM_PKGBUILD, FSM_PKGCOMMIT, FSM_PKGERASE, FSM_PKGINSTALL, fsmSetup(), fsmTeardown(), Fstrerror(), rpmpsm_s::goal, HEADER_MAGIC_YES, headerAddEntry(), headerCheck(), headerCopyLoad(), headerFree(), headerFreeData(), headerFreeIterator(), headerGetEntry(), headerInitIterator(), headerIsEntry(), headerLink(), headerNew(), headerNextIterator(), headerRegenSigHeader(), headerReload(), headerSprintf(), headerWrite(), markReplacedFiles(), rpmpsm_s::mi, myinstall_instance, rpmpsm_s::npkgs_installed, rpmpsm_s::oh, rpmpsm_s::pkgfn, pkgStageString(), rpmpsm_s::pkgURL, rpmpsm_s::progTag, PSM_CHROOT_IN, PSM_CHROOT_OUT, PSM_COMMIT, PSM_CREATE, PSM_DESTROY, PSM_FINI, PSM_IMMED_TRIGGERS, PSM_INIT, PSM_NOTIFY, PSM_PKGCOMMIT, PSM_PKGERASE, PSM_PKGINSTALL, PSM_PKGSAVE, PSM_POST, PSM_PRE, PSM_PROCESS, PSM_RPMDB_ADD, PSM_RPMDB_LOAD, PSM_RPMDB_REMOVE, PSM_RPMIO_FLAGS, PSM_SCRIPT, PSM_TRIGGERS, PSM_UNDO, PSM_UNKNOWN, rpmpsm_s::rc, RPM_CHAR_TYPE, RPM_INT32_TYPE, RPMCALLBACK_CPIO_ERROR, RPMCALLBACK_INST_PROGRESS, RPMCALLBACK_INST_START, RPMCALLBACK_UNINST_START, RPMCALLBACK_UNINST_STOP, RPMCALLBACK_UNPACK_ERROR, rpmdbAdd(), rpmdbCountPackages(), rpmdbFreeIterator(), rpmdbGetIteratorOffset(), RPMDBI_PACKAGES, rpmdbNextIterator(), rpmdbRemove(), rpmdbSetIteratorRE(), RPMERR_CPIO, RPMERR_NOSPACE, RPMERR_SCRIPT, rpmError, rpmfiBuildFNames(), rpmfiFC(), RPMFILE_STATE_NORMAL, rpmFreeSignature(), rpmGenPath(), rpmGetArchInfo(), rpmGetOsInfo(), rpmGetPath(), rpmHeaderFormats, rpmpsm_s::rpmio_flags, RPMLEAD_BINARY, RPMMESS_DEBUG, RPMMESS_VERBOSE, rpmMessage, RPMMIRE_STRCMP, rpmpsmNext(), RPMRC_FAIL, RPMRC_OK, RPMSENSE_TRIGGERIN, RPMSENSE_TRIGGERPOSTUN, RPMSENSE_TRIGGERUN, RPMSIGTYPE_HEADERSIG, rpmswAdd(), rpmswEnter(), rpmswExit(), RPMTAG_ARCH, RPMTAG_ARCHIVESIZE, RPMTAG_BASENAMES, RPMTAG_DEFAULTPREFIX, RPMTAG_EPOCH, RPMTAG_FILEGROUPNAME, RPMTAG_FILESTATES, RPMTAG_FILEUSERNAME, RPMTAG_HEADERIMAGE, RPMTAG_HEADERIMMUTABLE, RPMTAG_HEADERSIGNATURES, RPMTAG_INSTALLCOLOR, RPMTAG_INSTALLTIME, RPMTAG_NAME, RPMTAG_ORIGBASENAMES, RPMTAG_OS, RPMTAG_PAYLOADCOMPRESSOR, RPMTAG_POSTIN, RPMTAG_POSTINPROG, RPMTAG_POSTUN, RPMTAG_POSTUNPROG, RPMTAG_PREIN, RPMTAG_PREINPROG, RPMTAG_PREUN, RPMTAG_PREUNPROG, RPMTAG_RELEASE, RPMTAG_REMOVETID, RPMTAG_TRIGGERNAME, RPMTAG_VERSION, rpmTagTable, rpmteA(), rpmteE(), rpmteFd(), rpmteN(), rpmteNEVR(), rpmteO(), rpmteR(), rpmteSetDBInstance(), rpmteV(), RPMTRANS_FLAG_APPLYONLY, RPMTRANS_FLAG_JUSTDB, RPMTRANS_FLAG_NOPOST, RPMTRANS_FLAG_NOPOSTUN, RPMTRANS_FLAG_NOPRE, RPMTRANS_FLAG_NOPREUN, RPMTRANS_FLAG_NOTRIGGERIN, RPMTRANS_FLAG_NOTRIGGERPOSTUN, RPMTRANS_FLAG_NOTRIGGERPREIN, RPMTRANS_FLAG_NOTRIGGERUN, RPMTRANS_FLAG_PKGCOMMIT, RPMTRANS_FLAG_TEST, RPMTRANS_TYPE_AUTOROLLBACK, RPMTRANS_TYPE_ROLLBACK, RPMTS_OP_COMPRESS, RPMTS_OP_DBADD, RPMTS_OP_DBREMOVE, RPMTS_OP_DIGEST, RPMTS_OP_UNCOMPRESS, rpmtsChrootDone(), rpmtsColor(), rpmtsCurrDir(), rpmtsFlags(), rpmtsGetRdb(), rpmtsGetScore(), rpmtsGetTid(), rpmtsGetType(), rpmtsInitIterator(), rpmtsNotify(), rpmtsOp(), rpmtsRootDir(), rpmtsScoreGetEntry(), rpmtsSetChrootDone(), rpmtsVSFlags(), RPMVSF_NOHDRCHK, rpmWriteSignature(), runImmedTriggers(), runInstScript(), runTriggers(), rpmpsm_s::scriptArg, rpmpsm_s::scriptTag, rpmpsm_s::sense, rpmpsm_s::stepName, stpcpy(), tag2sln(), rpmpsm_s::te, rpmpsm_s::total, TR_ADDED, TR_REMOVED, rpmpsm_s::ts, urlPath(), rpmpsm_s::what, writeLead(), and xmalloc().
Referenced by rpmpsmNext(), rpmpsmThread(), rpmtsRun(), and rpmVerifyScript().
Unreference a package state machine instance.
psm | package state machine | |
msg |
Definition at line 1266 of file psm.c.
References _psm_debug, and rpmpsm_s::nrefs.
Definition at line 1255 of file psm.c.
References _psm_debug, and rpmpsm_s::nrefs.
int _psm_debug |