#include "rpmio.h"
#include "rpmmessages.h"
#include "rpmerr.h"
#include "header.h"
#include "popt.h"
Go to the source code of this file.
Data Structures | |
| struct | rpmDependencyConflict_s |
| Dependency problems found by rpmdepCheck(). More... | |
| struct | rpmlead |
| struct | rpmProblem_s |
| struct | rpmProblemSet_s |
| struct | rpmRelocation_s |
| We pass these around as an array with a sentinel. More... | |
RPMRC | |
| #define | RPMVAR_OPTFLAGS 3 |
| #define | RPMVAR_PROVIDES 38 |
| #define | RPMVAR_INCLUDE 43 |
| #define | RPMVAR_MACROFILES 49 |
| #define | RPMVAR_NUM 55 |
| #define | RPM_MACHTABLE_COUNT 4 |
| enum | rpm_machtable_e { RPM_MACHTABLE_INSTARCH = 0, RPM_MACHTABLE_INSTOS = 1, RPM_MACHTABLE_BUILDARCH = 2, RPM_MACHTABLE_BUILDOS = 3 } |
| const char * | rpmGetVar (int var) |
| void | rpmSetVar (int var, const char *val) |
| int | rpmReadConfigFiles (const char *file, const char *target) |
| void | rpmGetArchInfo (const char **name, int *num) |
| void | rpmGetOsInfo (const char **name, int *num) |
| int | rpmMachineScore (int type, const char *name) |
| int | rpmShowRC (FILE *fp) |
| void | rpmSetTables (int archTable, int osTable) |
| void | rpmSetMachine (const char *arch, const char *os) |
| void | rpmGetMachine (const char **arch, const char **os) |
| void | rpmFreeRpmrc (void) |
| const char * | macrofiles |
RPMTS | |
| #define | XFA_SKIPPING(_a) ((_a) == FA_SKIP || (_a) == FA_SKIPNSTATE || (_a) == FA_SKIPNETSHARED || (_a) == FA_SKIPMULTILIB) |
| #define | _noTransScripts |
| #define | _noTransTriggers |
| typedef void *(* | HFD_t )(const void *data, rpmTagType type) |
| Prototype for headerFreeData() vector. | |
| typedef int(* | HGE_t )(Header h, rpmTag tag, rpmTagType *type, void **p, int_32 *c) |
| Prototype for headerGetEntry() vector. | |
| typedef int(* | HAE_t )(Header h, rpmTag tag, rpmTagType type, const void *p, int_32 c) |
| Prototype for headerAddEntry() vector. | |
| typedef int(* | HME_t )(Header h, rpmTag tag, rpmTagType type, const void *p, int_32 c) |
| Prototype for headerModifyEntry() vector. | |
| typedef int(* | HRE_t )(Header h, int_32 tag) |
| Prototype for headerRemoveEntry() vector. | |
| typedef rpmRelocation_s | rpmRelocation |
| We pass these around as an array with a sentinel. | |
| typedef enum fileAction_e | fileAction |
| File disposition(s) during package install/erase transaction. | |
| typedef enum fileTypes_e | fileTypes |
| File types. | |
| typedef fsmIterator_s * | FSMI_t |
| typedef fsm_s * | FSM_t |
| typedef psm_s * | PSM_t |
| typedef transactionFileInfo_s * | TFI_t |
| typedef rpmTransactionSet_s * | rpmTransactionSet |
| typedef enum rpmtransFlags_e | rpmtransFlags |
| typedef enum rpmprobFilterFlags_e | rpmprobFilterFlags |
| enum | fileAction_e { FA_UNKNOWN = 0, FA_CREATE, FA_COPYIN, FA_COPYOUT, FA_BACKUP, FA_SAVE, FA_SKIP, FA_ALTNAME, FA_ERASE, FA_SKIPNSTATE, FA_SKIPNETSHARED, FA_SKIPMULTILIB } |
| File disposition(s) during package install/erase transaction. More... | |
| enum | fileTypes_e { PIPE = 1, CDEV = 2, XDIR = 4, BDEV = 6, REG = 8, LINK = 10, SOCK = 12 } |
| File types. 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_MULTILIB = (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_REVERSE = (1 << 15), 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_CHAINSAW = (1 << 26), RPMTRANS_FLAG_NOMD5 = (1 << 27) } |
| enum | rpmprobFilterFlags_e { RPMPROB_FILTER_NONE = 0, RPMPROB_FILTER_IGNOREOS = (1 << 0), RPMPROB_FILTER_IGNOREARCH = (1 << 1), RPMPROB_FILTER_REPLACEPKG = (1 << 2), RPMPROB_FILTER_FORCERELOCATE = (1 << 3), RPMPROB_FILTER_REPLACENEWFILES = (1 << 4), RPMPROB_FILTER_REPLACEOLDFILES = (1 << 5), RPMPROB_FILTER_OLDPACKAGE = (1 << 6), RPMPROB_FILTER_DISKSPACE = (1 << 7), RPMPROB_FILTER_DISKNODES = (1 << 8) } |
| rpmRC | rpmInstallSourcePackage (const char *rootDir, FD_t fd, const char **specFilePtr, rpmCallbackFunction notify, rpmCallbackData notifyData, char **cookie) |
| Install source package. | |
| int | rpmVersionCompare (Header first, Header second) |
| Compare headers to determine which header is "newer". | |
| rpmTransactionSet | rpmtransCreateSet (rpmdb rpmdb, const char *rootDir) |
| int | rpmtransAddPackage (rpmTransactionSet ts, Header h, FD_t fd, const void *key, int upgrade, rpmRelocation *relocs) |
| void | rpmtransAvailablePackage (rpmTransactionSet ts, Header h, const void *key) |
| int | rpmtransRemovePackage (rpmTransactionSet ts, int dboffset) |
| rpmTransactionSet | rpmtransFree (rpmTransactionSet ts) |
| void | rpmtransSetScriptFd (rpmTransactionSet ts, FD_t fd) |
| int | rpmtransGetKeys (const rpmTransactionSet ts, const void ***ep, int *nep) |
| int | rpmdepCheck (rpmTransactionSet ts, rpmDependencyConflict *conflicts, int *numConflicts) |
| int | rpmdepOrder (rpmTransactionSet ts) |
| rpmDependencyConflict | rpmdepFreeConflicts (rpmDependencyConflict conflicts, int numConflicts) |
| int | rpmGetRpmlibProvides (const char ***provNames, int **provFlags, const char ***provVersions) |
| int | rpmvercmp (const char *a, const char *b) |
| int | rpmEVRcmp (const char *const aE, const char *const aV, const char *const aR, const char *const aDepend, const char *const bE, const char *const bV, const char *const bR, const char *const bDepend) |
| void | parseEVR (char *evr, const char **ep, const char **vp, const char **rp) |
| Split EVR into epoch, version, and release components. | |
| int | isChangeNameMoreFresh (const char *const head, const char *const tail[3]) |
| int | rpmRangesOverlap (const char *AName, const char *AEVR, int AFlags, const char *BName, const char *BEVR, int BFlags) |
| int | rpmCheckRpmlibProvides (const char *keyName, const char *keyEVR, int keyFlags) |
| void | rpmShowRpmlibProvides (FILE *fp) |
| int | rpmRunTransactions (rpmTransactionSet ts, rpmCallbackFunction notify, rpmCallbackData notifyData, rpmProblemSet okProbs, rpmProblemSet *newProbs, rpmtransFlags transFlags, rpmprobFilterFlags ignoreSet) |
RPMQV | |
| #define | RPMVERIFY_ALL ~(RPMVERIFY_NONE) |
| typedef rpmQVArguments_s * | QVA_t |
| typedef enum rpmQVSources_e | rpmQVSources |
| typedef enum rpmVerifyAttrs_e | rpmVerifyAttrs |
| enum | rpmQVSources_e { RPMQV_PACKAGE = 0, RPMQV_PATH, RPMQV_ALL, RPMQV_RPM, RPMQV_GROUP, RPMQV_WHATPROVIDES, RPMQV_WHATREQUIRES, RPMQV_TRIGGEREDBY, RPMQV_DBOFFSET, RPMQV_SPECFILE, RPMQV_PKGID, RPMQV_HDRID, RPMQV_FILEID, RPMQV_TID } |
| enum | rpmVerifyAttrs_e { RPMVERIFY_NONE = 0, RPMVERIFY_MD5 = (1 << 0), RPMVERIFY_FILESIZE = (1 << 1), RPMVERIFY_LINKTO = (1 << 2), RPMVERIFY_USER = (1 << 3), RPMVERIFY_GROUP = (1 << 4), RPMVERIFY_MTIME = (1 << 5), RPMVERIFY_MODE = (1 << 6), RPMVERIFY_RDEV = (1 << 7), RPMVERIFY_READLINKFAIL = (1 << 28), RPMVERIFY_READFAIL = (1 << 29), RPMVERIFY_LSTATFAIL = (1 << 30) } |
| int | rpmVerifyFile (const char *root, Header h, int filenum, rpmVerifyAttrs *result, rpmVerifyAttrs omitMask) |
| int | rpmVerifyScript (const char *rootDir, Header h, FD_t scriptFd) |
| Return exit code from running verify script from header. | |
RPMDB | |
| typedef rpmdb_s * | rpmdb |
| typedef _dbiIndexSet * | dbiIndexSet |
| typedef _rpmdbMatchIterator * | rpmdbMatchIterator |
| typedef enum rpmMireMode_e | rpmMireMode |
| Tag value pattern match mode. | |
| enum | rpmMireMode_e { RPMMIRE_DEFAULT = 0, RPMMIRE_STRCMP = 1, RPMMIRE_REGEX = 2, RPMMIRE_GLOB = 3 } |
| Tag value pattern match mode. More... | |
| int | rpmdbOpen (const char *prefix, rpmdb *dbp, int mode, int perms) |
| int | rpmdbInit (const char *prefix, int perms) |
| int | rpmdbVerify (const char *prefix) |
| int | rpmdbClose (rpmdb db) |
| int | rpmdbSync (rpmdb db) |
| int | rpmdbOpenAll (rpmdb db) |
| int | rpmdbCountPackages (rpmdb db, const char *name) |
| rpmdbMatchIterator | rpmdbFreeIterator (rpmdbMatchIterator mi) |
| rpmdb | rpmdbGetIteratorRpmDB (rpmdbMatchIterator mi) |
| unsigned int | rpmdbGetIteratorOffset (rpmdbMatchIterator mi) |
| int | rpmdbGetIteratorCount (rpmdbMatchIterator mi) |
| int | rpmdbAppendIterator (rpmdbMatchIterator mi, const int *hdrNums, int nHdrNums) |
| int | rpmdbPruneIterator (rpmdbMatchIterator mi, int *hdrNums, int nHdrNums, int sorted) |
| int | rpmdbSetIteratorRE (rpmdbMatchIterator mi, rpmTag tag, rpmMireMode mode, const char *pattern) |
| int | rpmdbSetIteratorVersion (rpmdbMatchIterator mi, const char *version) |
| int | rpmdbSetIteratorRelease (rpmdbMatchIterator mi, const char *release) |
| int | rpmdbSetIteratorRewrite (rpmdbMatchIterator mi, int rewrite) |
| int | rpmdbSetIteratorModified (rpmdbMatchIterator mi, int modified) |
| Header | rpmdbNextIterator (rpmdbMatchIterator mi) |
| Header | XrpmdbNextIterator (rpmdbMatchIterator mi, const char *f, unsigned int l) |
| rpmdbMatchIterator | rpmdbInitIterator (rpmdb db, int rpmtag, const void *keyp, size_t keylen) |
| int | rpmdbAdd (rpmdb db, int iid, Header h) |
| int | rpmdbRemove (rpmdb db, int rid, unsigned int hdrNum) |
| int | rpmdbRebuild (const char *prefix) |
| int * | dbiTags |
| int | dbiTagsMax |
RPMPROBS | |
| typedef enum rpmProblemType_e | rpmProblemType |
| Enumerate transaction set problem types. | |
| typedef rpmProblem_s * | rpmProblem |
| typedef rpmProblemSet_s * | rpmProblemSet |
| typedef rpmDependencyConflict_s * | rpmDependencyConflict |
| Dependency problems found by rpmdepCheck(). | |
| enum | rpmProblemType_e { RPMPROB_BADARCH, RPMPROB_BADOS, RPMPROB_PKG_INSTALLED, RPMPROB_BADRELOCATE, RPMPROB_REQUIRES, RPMPROB_CONFLICT, RPMPROB_NEW_FILE_CONFLICT, RPMPROB_FILE_CONFLICT, RPMPROB_OLDPACKAGE, RPMPROB_DISKSPACE, RPMPROB_DISKNODES, RPMPROB_BADPRETRANS } |
| Enumerate transaction set problem types. More... | |
| void | printDepFlags (FILE *fp, const char *version, int flags) |
| void | printDepProblems (FILE *fp, const rpmDependencyConflict conflicts, int numConflicts) |
| Print results of rpmdepCheck() dependency check. | |
| const char * | rpmProblemString (const rpmProblem prob) |
| Return formatted string representation of problem. | |
| void | rpmProblemPrint (FILE *fp, rpmProblem prob) |
| Output formatted string representation of problem to file handle. | |
| void | rpmProblemSetPrint (FILE *fp, rpmProblemSet probs) |
| Print problems to file handle. | |
| void | rpmProblemSetFree (rpmProblemSet probs) |
| Destroy problem set. | |
RPMEIU | |
| typedef enum rpmInstallInterfaceFlags_e | rpmInstallInterfaceFlags |
| typedef enum rpmEraseInterfaceFlags_e | rpmEraseInterfaceFlags |
| enum | rpmInstallInterfaceFlags_e { INSTALL_NONE = 0, INSTALL_PERCENT = (1 << 0), INSTALL_HASH = (1 << 1), INSTALL_NODEPS = (1 << 2), INSTALL_NOORDER = (1 << 3), INSTALL_LABEL = (1 << 4), INSTALL_UPGRADE = (1 << 5), INSTALL_FRESHEN = (1 << 6), INSTALL_INSTALL = (1 << 7), INSTALL_ERASE = (1 << 8) } |
| enum | rpmEraseInterfaceFlags_e { UNINSTALL_NONE = 0, UNINSTALL_NODEPS = (1 << 0), UNINSTALL_ALLMATCHES = (1 << 1) } |
RPMK | |
| typedef enum rpmVerifySignatureReturn_e | rpmVerifySignatureReturn |
| Return codes from verifySignature(). | |
| enum | rpmtagSignature { RPMSIGTAG_SIZE = 1000, RPMSIGTAG_LEMD5_1 = 1001, RPMSIGTAG_PGP = 1002, RPMSIGTAG_LEMD5_2 = 1003, RPMSIGTAG_MD5 = 1004, RPMSIGTAG_GPG = 1005, RPMSIGTAG_PGP5 = 1006, RPMSIGTAG_PAYLOADSIZE = 1007, RPMSIGTAG_BADSHA1_1 = RPMTAG_BADSHA1_1, RPMSIGTAG_BADSHA1_2 = RPMTAG_BADSHA1_2, RPMSIGTAG_SHA1 = RPMTAG_SHA1HEADER, RPMSIGTAG_DSA = RPMTAG_DSAHEADER, RPMSIGTAG_RSA = RPMTAG_RSAHEADER } |
| enum | rpmVerifySignatureReturn_e { RPMSIG_OK = 0, RPMSIG_UNKNOWN = 1, RPMSIG_BAD = 2, RPMSIG_NOKEY = 3, RPMSIG_NOTTRUSTED = 4 } |
| Return codes from verifySignature(). More... | |
| rpmVerifySignatureReturn | rpmVerifySignature (const char *file, int_32 sigTag, const void *sig, int count, char *result) |
| Header | rpmFreeSignature (Header h) |
Defines | |
| #define | RPMDBI_PACKAGES 0 |
| Pseudo-tags used by the rpmdb iterator API. | |
| #define | RPMDBI_DEPENDS 1 |
| #define | RPMDBI_LABEL 2 |
| #define | RPMDBI_ADDED 3 |
| #define | RPMDBI_REMOVED 4 |
| #define | RPMDBI_AVAILABLE 5 |
| #define | RPMTAG_SERIAL RPMTAG_EPOCH |
| #define | RPMTAG_COPYRIGHT RPMTAG_LICENSE |
| #define | RPMTAG_PROVIDES RPMTAG_PROVIDENAME |
| #define | RPMTAG_OBSOLETES RPMTAG_OBSOLETENAME |
| #define | RPMTAG_EXTERNAL_TAG 1000000 |
| #define | RPMFILE_MULTILIB_SHIFT 9 |
| #define | RPMFILE_MULTILIB(N) ((N) << RPMFILE_MULTILIB_SHIFT) |
| #define | RPMFILE_MULTILIB_MASK RPMFILE_MULTILIB(7) |
| #define | RPMFILE_ALL ~(RPMFILE_NONE) |
| #define | isFileMULTILIB(_fflags) ((_fflags) & RPMFILE_MULTILIB_MASK) |
| #define | RPMSENSE_SENSEMASK 15 |
| #define | RPMSENSE_TRIGGER (RPMSENSE_TRIGGERIN | RPMSENSE_TRIGGERUN | RPMSENSE_TRIGGERPOSTUN) |
| #define | isDependsMULTILIB(_dflags) ((_dflags) & RPMSENSE_MULTILIB) |
| #define | _ALL_REQUIRES_MASK |
| #define | _notpre(_x) ((_x) & ~RPMSENSE_PREREQ) |
| #define | _INSTALL_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PRE|RPMSENSE_SCRIPT_POST|RPMSENSE_RPMLIB|RPMSENSE_KEYRING) |
| #define | _ERASE_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PREUN|RPMSENSE_SCRIPT_POSTUN) |
| #define | isLegacyPreReq(_x) (((_x) & _ALL_REQUIRES_MASK) == RPMSENSE_PREREQ) |
| #define | isInstallPreReq(_x) ((_x) & _INSTALL_ONLY_MASK) |
| #define | isErasePreReq(_x) ((_x) & _ERASE_ONLY_MASK) |
| #define | RPMLEAD_BINARY 0 |
| #define | RPMLEAD_SOURCE 1 |
| #define | RPMLEAD_MAGIC0 0xed |
| #define | RPMLEAD_MAGIC1 0xab |
| #define | RPMLEAD_MAGIC2 0xee |
| #define | RPMLEAD_MAGIC3 0xdb |
| #define | RPMLEAD_SIZE 96 |
Typedefs | |
| typedef enum rpmRC_e | rpmRC |
| Package read return codes. | |
| typedef enum rpmTag_e | rpmTag |
| Tags identify data in package headers. | |
| typedef enum rpmfileState_e | rpmfileState |
| File States (when installed). | |
| typedef enum rpmfileAttrs_e | rpmfileAttrs |
| File Attributes. | |
| typedef enum rpmsenseFlags_e | rpmsenseFlags |
| Dependency Attributes. | |
Enumerations | |
| enum | rpmRC_e { RPMRC_OK = 0, RPMRC_BADMAGIC = 1, RPMRC_FAIL = 2, RPMRC_BADSIZE = 3, RPMRC_SHORTREAD = 4 } |
| Package read return codes. More... | |
| enum | rpmTag_e { RPMTAG_HEADERIMAGE = 61, RPMTAG_HEADERSIGNATURES = 62, RPMTAG_HEADERIMMUTABLE = 63, RPMTAG_HEADERREGIONS = 64, RPMTAG_HEADERI18NTABLE = 100, RPMTAG_SIG_BASE = 256, RPMTAG_SIGSIZE = RPMTAG_SIG_BASE+1, RPMTAG_SIGLEMD5_1 = RPMTAG_SIG_BASE+2, RPMTAG_SIGPGP = RPMTAG_SIG_BASE+3, RPMTAG_SIGLEMD5_2 = RPMTAG_SIG_BASE+4, RPMTAG_SIGMD5 = RPMTAG_SIG_BASE+5, RPMTAG_SIGGPG = RPMTAG_SIG_BASE+6, RPMTAG_SIGPGP5 = RPMTAG_SIG_BASE+7, RPMTAG_BADSHA1_1 = RPMTAG_SIG_BASE+8, RPMTAG_BADSHA1_2 = RPMTAG_SIG_BASE+9, RPMTAG_PUBKEYS = RPMTAG_SIG_BASE+10, RPMTAG_DSAHEADER = RPMTAG_SIG_BASE+11, RPMTAG_RSAHEADER = RPMTAG_SIG_BASE+12, RPMTAG_SHA1HEADER = RPMTAG_SIG_BASE+13, RPMTAG_NAME = 1000, RPMTAG_VERSION = 1001, RPMTAG_RELEASE = 1002, RPMTAG_EPOCH = 1003, RPMTAG_SUMMARY = 1004, RPMTAG_DESCRIPTION = 1005, RPMTAG_BUILDTIME = 1006, RPMTAG_BUILDHOST = 1007, RPMTAG_INSTALLTIME = 1008, RPMTAG_SIZE = 1009, RPMTAG_DISTRIBUTION = 1010, RPMTAG_VENDOR = 1011, RPMTAG_GIF = 1012, RPMTAG_XPM = 1013, RPMTAG_LICENSE = 1014, RPMTAG_PACKAGER = 1015, RPMTAG_GROUP = 1016, RPMTAG_CHANGELOG = 1017, RPMTAG_SOURCE = 1018, RPMTAG_PATCH = 1019, RPMTAG_URL = 1020, RPMTAG_OS = 1021, RPMTAG_ARCH = 1022, RPMTAG_PREIN = 1023, RPMTAG_POSTIN = 1024, RPMTAG_PREUN = 1025, RPMTAG_POSTUN = 1026, RPMTAG_OLDFILENAMES = 1027, RPMTAG_FILESIZES = 1028, RPMTAG_FILESTATES = 1029, RPMTAG_FILEMODES = 1030, RPMTAG_FILEUIDS = 1031, RPMTAG_FILEGIDS = 1032, RPMTAG_FILERDEVS = 1033, RPMTAG_FILEMTIMES = 1034, RPMTAG_FILEMD5S = 1035, RPMTAG_FILELINKTOS = 1036, RPMTAG_FILEFLAGS = 1037, RPMTAG_ROOT = 1038, RPMTAG_FILEUSERNAME = 1039, RPMTAG_FILEGROUPNAME = 1040, RPMTAG_EXCLUDE = 1041, RPMTAG_EXCLUSIVE = 1042, RPMTAG_ICON = 1043, RPMTAG_SOURCERPM = 1044, RPMTAG_FILEVERIFYFLAGS = 1045, RPMTAG_ARCHIVESIZE = 1046, RPMTAG_PROVIDENAME = 1047, RPMTAG_REQUIREFLAGS = 1048, RPMTAG_REQUIRENAME = 1049, RPMTAG_REQUIREVERSION = 1050, RPMTAG_NOSOURCE = 1051, RPMTAG_NOPATCH = 1052, RPMTAG_CONFLICTFLAGS = 1053, RPMTAG_CONFLICTNAME = 1054, RPMTAG_CONFLICTVERSION = 1055, RPMTAG_DEFAULTPREFIX = 1056, RPMTAG_BUILDROOT = 1057, RPMTAG_INSTALLPREFIX = 1058, RPMTAG_EXCLUDEARCH = 1059, RPMTAG_EXCLUDEOS = 1060, RPMTAG_EXCLUSIVEARCH = 1061, RPMTAG_EXCLUSIVEOS = 1062, RPMTAG_AUTOREQPROV = 1063, RPMTAG_RPMVERSION = 1064, RPMTAG_TRIGGERSCRIPTS = 1065, RPMTAG_TRIGGERNAME = 1066, RPMTAG_TRIGGERVERSION = 1067, RPMTAG_TRIGGERFLAGS = 1068, RPMTAG_TRIGGERINDEX = 1069, RPMTAG_VERIFYSCRIPT = 1079, RPMTAG_CHANGELOGTIME = 1080, RPMTAG_CHANGELOGNAME = 1081, RPMTAG_CHANGELOGTEXT = 1082, RPMTAG_BROKENMD5 = 1083, RPMTAG_PREREQ = 1084, RPMTAG_PREINPROG = 1085, RPMTAG_POSTINPROG = 1086, RPMTAG_PREUNPROG = 1087, RPMTAG_POSTUNPROG = 1088, RPMTAG_BUILDARCHS = 1089, RPMTAG_OBSOLETENAME = 1090, RPMTAG_VERIFYSCRIPTPROG = 1091, RPMTAG_TRIGGERSCRIPTPROG = 1092, RPMTAG_DOCDIR = 1093, RPMTAG_COOKIE = 1094, RPMTAG_FILEDEVICES = 1095, RPMTAG_FILEINODES = 1096, RPMTAG_FILELANGS = 1097, RPMTAG_PREFIXES = 1098, RPMTAG_INSTPREFIXES = 1099, RPMTAG_TRIGGERIN = 1100, RPMTAG_TRIGGERUN = 1101, RPMTAG_TRIGGERPOSTUN = 1102, RPMTAG_AUTOREQ = 1103, RPMTAG_AUTOPROV = 1104, RPMTAG_CAPABILITY = 1105, RPMTAG_SOURCEPACKAGE = 1106, RPMTAG_OLDORIGFILENAMES = 1107, RPMTAG_BUILDPREREQ = 1108, RPMTAG_BUILDREQUIRES = 1109, RPMTAG_BUILDCONFLICTS = 1110, RPMTAG_BUILDMACROS = 1111, RPMTAG_PROVIDEFLAGS = 1112, RPMTAG_PROVIDEVERSION = 1113, RPMTAG_OBSOLETEFLAGS = 1114, RPMTAG_OBSOLETEVERSION = 1115, RPMTAG_DIRINDEXES = 1116, RPMTAG_BASENAMES = 1117, RPMTAG_DIRNAMES = 1118, RPMTAG_ORIGDIRINDEXES = 1119, RPMTAG_ORIGBASENAMES = 1120, RPMTAG_ORIGDIRNAMES = 1121, RPMTAG_OPTFLAGS = 1122, RPMTAG_DISTURL = 1123, RPMTAG_PAYLOADFORMAT = 1124, RPMTAG_PAYLOADCOMPRESSOR = 1125, RPMTAG_PAYLOADFLAGS = 1126, RPMTAG_MULTILIBS = 1127, RPMTAG_INSTALLTID = 1128, RPMTAG_REMOVETID = 1129, RPMTAG_SHA1RHN = 1130, RPMTAG_RHNPLATFORM = 1131, RPMTAG_PLATFORM = 1132, RPMTAG_FIRSTFREE_TAG } |
| Tags identify data in package headers. More... | |
| enum | rpmfileState_e { RPMFILE_STATE_NORMAL = 0, RPMFILE_STATE_REPLACED = 1, RPMFILE_STATE_NOTINSTALLED = 2, RPMFILE_STATE_NETSHARED = 3 } |
| File States (when installed). More... | |
| enum | rpmfileAttrs_e { RPMFILE_NONE = 0, RPMFILE_CONFIG = (1 << 0), RPMFILE_DOC = (1 << 1), RPMFILE_DONOTUSE = (1 << 2), RPMFILE_MISSINGOK = (1 << 3), RPMFILE_NOREPLACE = (1 << 4), RPMFILE_SPECFILE = (1 << 5), RPMFILE_GHOST = (1 << 6), RPMFILE_LICENSE = (1 << 7), RPMFILE_README = (1 << 8), RPMFILE_EXCLUDE = (1 << 9) } |
| File Attributes. More... | |
| enum | rpmsenseFlags_e { RPMSENSE_ANY = 0, RPMSENSE_SERIAL = (1 << 0), RPMSENSE_LESS = (1 << 1), RPMSENSE_GREATER = (1 << 2), RPMSENSE_EQUAL = (1 << 3), RPMSENSE_PROVIDES = (1 << 4), RPMSENSE_CONFLICTS = (1 << 5), RPMSENSE_PREREQ = (1 << 6), RPMSENSE_OBSOLETES = (1 << 7), RPMSENSE_INTERP = (1 << 8), RPMSENSE_SCRIPT_PRE = ((1 << 9)|RPMSENSE_PREREQ), RPMSENSE_SCRIPT_POST = ((1 << 10)|RPMSENSE_PREREQ), RPMSENSE_SCRIPT_PREUN = ((1 << 11)|RPMSENSE_PREREQ), RPMSENSE_SCRIPT_POSTUN = ((1 << 12)|RPMSENSE_PREREQ), RPMSENSE_SCRIPT_VERIFY = (1 << 13), RPMSENSE_FIND_REQUIRES = (1 << 14), RPMSENSE_FIND_PROVIDES = (1 << 15), RPMSENSE_TRIGGERIN = (1 << 16), RPMSENSE_TRIGGERUN = (1 << 17), RPMSENSE_TRIGGERPOSTUN = (1 << 18), RPMSENSE_MULTILIB = (1 << 19), RPMSENSE_SCRIPT_PREP = (1 << 20), RPMSENSE_SCRIPT_BUILD = (1 << 21), RPMSENSE_SCRIPT_INSTALL = (1 << 22), RPMSENSE_SCRIPT_CLEAN = (1 << 23), RPMSENSE_RPMLIB = ((1 << 24) | RPMSENSE_PREREQ), RPMSENSE_TRIGGERPREIN = (1 << 25), RPMSENSE_KEYRING = (1 << 26) } |
| Dependency Attributes. More... | |
Functions | |
| void * | _free (const void *p) |
| Wrapper to free(3), hides const compilation noise, permit NULL, return NULL. | |
| rpmRC | rpmReadPackageInfo (FD_t fd, Header *sigp, Header *hdrp) |
| Return package signatures and header from file handle. | |
| rpmRC | rpmReadPackageHeader (FD_t fd, Header *hdrp, int *isSource, int *major, int *minor) |
| Return package header and lead info from file handle. | |
| int | headerNVR (Header h, const char **np, const char **vp, const char **rp) |
| void | headerMergeLegacySigs (Header h, const Header sig) |
| Header | headerRegenSigHeader (const Header h) |
| void | rpmBuildFileList (Header h, const char ***fileListPtr, int *fileCountPtr) |
| Retrieve file names from header. | |
| int | rpmHeaderGetEntry (Header h, int_32 tag, int_32 *type, void **p, int_32 *c) |
| Retrieve tag info from header. | |
| int | rpmPackageGetEntry (void *leadp, Header sigs, Header h, int_32 tag, int_32 *type, void **p, int_32 *c) |
| Retrieve tag info from header. | |
| const char *const | tagName (int tag) |
| Return name of tag from value. | |
| int | tagValue (const char *tagstr) |
| Return value of tag from name. | |
| void | freeFilesystems (void) |
| Release storage used by file system usage cache. | |
| int | rpmGetFilesystemList (const char ***listptr, int *num) |
| Return (cached) file system mount points. | |
| int | rpmGetFilesystemUsage (const char **fileList, int_32 *fssizes, int numFiles, uint_32 **usagesPtr, int flags) |
| Determine per-file system usage for a list of files. | |
Variables | |
| MacroContext_s * | rpmGlobalMacroContext |
| MacroContext_s * | rpmCLIMacroContext |
| const char * | RPMVERSION |
| const char * | rpmNAME |
| const char * | rpmEVR |
| int | rpmFLAGS |
| const struct headerTagTableEntry_s | rpmTagTable [] |
| Automatically generated table of tag name/value pairs. | |
| const int | rpmTagTableSize |
| Number of entries in rpmTagTable. | |
| const struct headerSprintfExtension_s | rpmHeaderFormats [] |
| Table of query format extensions. | |
Definition in file rpmlib.h.
|
|
Value: (\
RPMSENSE_INTERP | \
RPMSENSE_SCRIPT_PRE | \
RPMSENSE_SCRIPT_POST | \
RPMSENSE_SCRIPT_PREUN | \
RPMSENSE_SCRIPT_POSTUN | \
RPMSENSE_SCRIPT_VERIFY | \
RPMSENSE_FIND_REQUIRES | \
RPMSENSE_SCRIPT_PREP | \
RPMSENSE_SCRIPT_BUILD | \
RPMSENSE_SCRIPT_INSTALL | \
RPMSENSE_SCRIPT_CLEAN | \
RPMSENSE_RPMLIB | \
RPMSENSE_KEYRING )Definition at line 484 of file rpmlib.h. Referenced by addReqProv(). |
|
|
|
|
|
|
|
|
Definition at line 499 of file rpmlib.h. Referenced by identifyDepend(). |
|
|
Value: ( RPMTRANS_FLAG_NOPRE | \ RPMTRANS_FLAG_NOPOST | \ RPMTRANS_FLAG_NOPREUN | \ RPMTRANS_FLAG_NOPOSTUN \ ) Definition at line 1429 of file rpmlib.h. Referenced by main(), and rpmRunTransactions(). |
|
|
Value: ( RPMTRANS_FLAG_NOTRIGGERPREIN | \ RPMTRANS_FLAG_NOTRIGGERIN | \ RPMTRANS_FLAG_NOTRIGGERUN | \ RPMTRANS_FLAG_NOTRIGGERPOSTUN \ ) Definition at line 1436 of file rpmlib.h. Referenced by main(), and rpmRunTransactions(). |
|
|
Definition at line 482 of file rpmlib.h. Referenced by addReqProv(), alMakeIndex(), checkPackageDeps(), mergeFiles(), and printDepMsg(). |
|
|
Definition at line 507 of file rpmlib.h. Referenced by rpmdepOrder(). |
|
|
Definition at line 432 of file rpmlib.h. Referenced by alAllFileSatisfiesDepend(), and relocateFileList(). |
|
|
Definition at line 506 of file rpmlib.h. Referenced by rpmdbAdd(), and rpmdepOrder(). |
|
|
Definition at line 505 of file rpmlib.h. Referenced by identifyDepend(), and rpmdepOrder(). |
|
|
No. of arch/os tables. |
|
|
Added package headers. Definition at line 207 of file rpmlib.h. Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue(). |
|
|
Available package headers. Definition at line 209 of file rpmlib.h. Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue(). |
|
|
Dependency resolution cache. Definition at line 205 of file rpmlib.h. Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), rpmdepCheck(), tagName(), tagValue(), and unsatisfiedDepend(). |
|
|
Fingerprint search marker. Definition at line 206 of file rpmlib.h. Referenced by rpmdbInitIterator(), rpmErase(), rpmQueryVerify(), and rpmtransRemove(). |
|
|
Pseudo-tags used by the rpmdb iterator API. Installed package headers. Definition at line 204 of file rpmlib.h. Referenced by addLostFiles(), db1basename(), db1cdel(), db1cget(), db1close(), db1cput(), db1open(), db1sync(), dbiDel(), dbiFindMatches(), dbiTagsInit(), handleInstInstalledFiles(), handleRmvdInstalledFiles(), main(), markReplacedFiles(), openDatabase(), psmStage(), rpmdbAdd(), rpmdbFindByFile(), rpmdbFreeIterator(), rpmdbInitIterator(), rpmdbNextIterator(), rpmdbRebuild(), rpmdbRemove(), rpmdepCheck(), rpmQueryVerify(), rpmRunTransactions(), tagName(), and tagValue(). |
|
|
Removed package headers. Definition at line 208 of file rpmlib.h. Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue(). |
|
|
Definition at line 429 of file rpmlib.h. Referenced by main(). |
|
|
Definition at line 426 of file rpmlib.h. Referenced by processPackageFiles(). |
|
|
Definition at line 427 of file rpmlib.h. Referenced by addFile(), and genCpioListAndHeader(). |
|
|
Definition at line 425 of file rpmlib.h. Referenced by genCpioListAndHeader(). |
|
|
Definition at line 1581 of file rpmlib.h. Referenced by packageBinaries(), psmStage(), and writeRPM(). |
|
|
Definition at line 1584 of file rpmlib.h. Referenced by readPackageHeaders(), and writeLead(). |
|
|
Definition at line 1585 of file rpmlib.h. Referenced by readPackageHeaders(), and writeLead(). |
|
|
Definition at line 1586 of file rpmlib.h. Referenced by readPackageHeaders(), and writeLead(). |
|
|
Definition at line 1587 of file rpmlib.h. Referenced by readPackageHeaders(), and writeLead(). |
|
|
Don't rely on sizeof(struct) |
|
|
Definition at line 1582 of file rpmlib.h. Referenced by packageSources(), readPackageHeaders(), rewriteRPM(), rpmReadPackageHeader(), and writeRPM(). |
|
|
Definition at line 476 of file rpmlib.h. Referenced by addReqProv(), headerMatchesDepFlags(), mergeFiles(), parseRCPOT(), printDepend(), printDepMsg(), rangeMatchesDepFlags(), rpmRangesOverlap(), triggercondsTag(), and unsatisfiedDepend(). |
|
|
Definition at line 479 of file rpmlib.h. Referenced by addReqProv(). |
|
|
|
|
|
Definition at line 393 of file rpmlib.h. Referenced by convertExistingAMD(), and main(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 516 of file rpmlib.h. Referenced by doReadRC(). |
|
|
Definition at line 517 of file rpmlib.h. Referenced by doReadRC(), and rpmReadRC(). |
|
|
|
|
|
Definition at line 514 of file rpmlib.h. Referenced by rpmRebuildTargetVars(), and rpmSetDefaults(). |
|
|
Definition at line 515 of file rpmlib.h. Referenced by doReadRC(), and unsatisfiedDepend(). |
|
|
Definition at line 1695 of file rpmlib.h. Referenced by processPackageFiles(), processSourceFiles(), and rpmVerifyFile(). |
|
|
Definition at line 1202 of file rpmlib.h. Referenced by dnlInitIterator(), fsmCommitLinks(), fsmMakeLinks(), fsmStage(), handleInstInstalledFiles(), handleOverlappedFiles(), rpmRunTransactions(), saveHardLink(), and skipFiles(). |
|
|
File disposition(s) during package install/erase transaction.
Referenced by decideFileFate(), fileActionString(), mergeFiles(), psmStage(), and relocateFileList(). |
|
|
File types. These are the file types used internally by rpm. The file type is determined by applying stat(2) macros like S_ISDIR to the file mode tag from a header. The values are arbitrary, but are identical to the linux stat(2) file types. Referenced by decideFileFate(), filecmp(), ftstring(), relocateFileList(), and whatis(). |
|
|
Prototype for headerAddEntry() vector. Duplicate tags are okay, but only defined for iteration (with the exceptions noted below). While you are allowed to add i18n string arrays through this function, you probably don't mean to. See headerAddI18NString() instead.
Definition at line 1117 of file rpmlib.h. Referenced by compressFilelist(), expandFilelist(), headerMergeLegacySigs(), and relocateFileList(). |
|
|
Prototype for headerFreeData() vector.
Definition at line 1081 of file rpmlib.h. Referenced by addReqProv(), alAddPackage(), alFree(), checkPackageDeps(), compressFilelist(), doBuildFileList(), fpLookupHeader(), freeFi(), handleInstInstalledFiles(), handleOneTrigger(), handlePreambleTag(), headerMergeLegacySigs(), headerRegenSigHeader(), instprefixTag(), isMemberInEntry(), loadFi(), mergeFiles(), mireSkip(), printDeps(), providePackageNVR(), psmStage(), rangeMatchesDepFlags(), relocateFileList(), rpmdbAdd(), rpmdbFindByFile(), rpmdbFindFpList(), rpmdbRemove(), rpmdepCheck(), rpmInstallSourcePackage(), rpmtransAddPackage(), rpmVerifyDigest(), rpmVerifyFile(), runImmedTriggers(), runInstScript(), runScript(), showQueryPackage(), timeCheck(), triggercondsTag(), and triggertypeTag(). |
|
|
|
Prototype for headerModifyEntry() vector. If there are multiple entries with this tag, the first one gets replaced.
Definition at line 1131 of file rpmlib.h. Referenced by mergeFiles(), psmStage(), and relocateFileList(). |
|
|
Prototype for headerRemoveEntry() vector. Delete tag in header. Removes all entries of type tag from the header, returns 1 if none were found.
Definition at line 1145 of file rpmlib.h. Referenced by compressFilelist(), and expandFilelist(). |
|
|
Dependency problems found by rpmdepCheck().
|
|
|
File Attributes.
Referenced by rpmVerifyFile(), and verifyHeader(). |
|
|
File States (when installed).
Referenced by rpmVerifyFile(), and showQueryPackage(). |
|
|
Referenced by rpmInstall(), and rpmRunTransactions(). |
|
|
|
|
|
|
|
|
Enumerate transaction set problem types.
Referenced by psAppend(). |
|
|
Package read return codes.
Referenced by checkSize(), chkdir(), handleOneTrigger(), IDTXglob(), psmStage(), readPackageHeaders(), readRPM(), rpmCheckSig(), rpmInstallSource(), rpmInstallSourcePackage(), rpmQueryVerify(), rpmReadPackageHeader(), rpmReadPackageInfo(), rpmReadSignature(), rpmReSign(), rpmRunTransactions(), runImmedTriggers(), runInstScript(), runScript(), and runTriggers(). |
|
|
We pass these around as an array with a sentinel.
|
|
|
Dependency Attributes.
Referenced by addReqProv(), handlePreambleTag(), parseBits(), and parseRCPOT(). |
|
|
Tags identify data in package headers.
Referenced by addReqProv(), checkForRequired(), doBuildFileList(), IDTXglob(), IDTXload(), isMemberInEntry(), mergeFiles(), mireDup(), and rpmdbSetIteratorRE(). |
|
|
Return codes from verifySignature().
Referenced by rpmVerifySignature(), and verifyGPGSignature(). |
|
|
File disposition(s) during package install/erase transaction.
|
|
|
File types. These are the file types used internally by rpm. The file type is determined by applying stat(2) macros like S_ISDIR to the file mode tag from a header. The values are arbitrary, but are identical to the linux stat(2) file types. |
|
|
File Attributes.
|
|
|
File States (when installed).
|
|
|
|
|
|
Enumerate transaction set problem types.
|
|
|
Package read return codes.
|
|
|
Dependency Attributes.
|
|
|
Tags identify data in package headers.
|
|
|
Return codes from verifySignature().
|
|
|
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
|
|
|
Release storage used by file system usage cache.
Definition at line 29 of file fs.c. References _free(), fsnames, fsinfo::mntPoint, and numFilesystems. Referenced by getFilesystemList(), and main(). |
|
||||||||||||
|
Translate and merge legacy signature tags into header.
Definition at line 20 of file package.c. References HAE_t, HEADER_SIGBASE, HEADER_TAGBASE, headerFreeIterator(), headerInitIterator(), headerIsEntry(), headerNextIterator(), HFD_t, int_32, RPMSIGTAG_DSA, RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PAYLOADSIZE, RPMSIGTAG_PGP, RPMSIGTAG_PGP5, RPMSIGTAG_RSA, RPMSIGTAG_SHA1, RPMSIGTAG_SIZE, RPMTAG_ARCHIVESIZE, RPMTAG_SIGGPG, RPMTAG_SIGLEMD5_1, RPMTAG_SIGLEMD5_2, RPMTAG_SIGMD5, RPMTAG_SIGPGP, RPMTAG_SIGPGP5, and RPMTAG_SIGSIZE. Referenced by rpmReadPackageHeader(), rpmReadPackageInfo(), and writeRPM(). |
|
||||||||||||||||||||
|
Return name, version, release strings from header.
Definition at line 31 of file depends.c. References headerGetEntry(), RPM_STRING_TYPE, RPMTAG_NAME, RPMTAG_RELEASE, and RPMTAG_VERSION. Referenced by alAddPackage(), checkPackageDeps(), doSetupMacro(), generateDepends(), genSourceRpmName(), handleOneTrigger(), headerMatchesDepFlags(), i18nTag(), IDTXglob(), IDTXload(), lookupPackage(), packageBinaries(), parseForSimple(), parsePreamble(), parseSpec(), printNewSpecfile(), processBinaryFiles(), providePackageNVR(), psAppend(), rpmdbAdd(), rpmdbNextIterator(), rpmdbRebuild(), rpmdbRemove(), rpmdepCheck(), rpmInstall(), rpmtransAddPackage(), runScript(), showQueryPackage(), showVerifyPackage(), verifyDependencies(), and writeRPM(). |
|
|
Regenerate signature header.
Definition at line 75 of file package.c. References HEADER_SIGBASE, HEADER_TAGBASE, headerAddEntry(), headerFreeIterator(), headerInitIterator(), headerIsEntry(), headerNextIterator(), HFD_t, int_32, rpmNewSignature, RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PAYLOADSIZE, RPMSIGTAG_PGP, RPMSIGTAG_PGP5, RPMSIGTAG_SIZE, RPMTAG_ARCHIVESIZE, RPMTAG_DSAHEADER, RPMTAG_RSAHEADER, RPMTAG_SHA1HEADER, RPMTAG_SIGGPG, RPMTAG_SIGLEMD5_1, RPMTAG_SIGLEMD5_2, RPMTAG_SIGMD5, RPMTAG_SIGPGP, RPMTAG_SIGPGP5, and RPMTAG_SIGSIZE. Referenced by psmStage(). |
|
||||||||||||
|
Definition at line 188 of file rpmvercmp.c. References _free(), parseEVR(), rpmEVRcmp(), RPMMESS_DEBUG, rpmMessage, xisspace(), and xstrdup(). |
|
||||||||||||||||||||
|
Split EVR into epoch, version, and release components.
Definition at line 119 of file rpmvercmp.c. References xisdigit(). Referenced by isChangeNameMoreFresh(), parseExpression(), and rpmRangesOverlap(). |
|
||||||||||||||||
|
Definition at line 19 of file problems.c. References RPMSENSE_EQUAL, RPMSENSE_GREATER, and RPMSENSE_LESS. Referenced by printDepProblems(), and rpmShowRpmlibProvides(). |
|
||||||||||||||||
|
Print results of rpmdepCheck() dependency check.
Definition at line 61 of file problems.c. References _, rpmDependencyConflict_s::needsFlags, printDepFlags(), sameProblem(), and rpmDependencyConflict_s::sense. Referenced by checkSpec(), rpmErase(), rpmInstall(), and rpmRollback(). |
|
||||||||||||||||
|
Retrieve file names from header. The representation of file names in package headers changed in rpm-4.0. Originally, file names were stored as an array of paths. In rpm-4.0, file names are stored as separate arrays of dirname's and basename's, with a dirname index to associate the correct dirname with each basname. This function is used to retrieve file names independent of how the file names are represented in the package header.
Definition at line 459 of file misc.c. References doBuildFileList(), RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, and RPMTAG_DIRNAMES. Referenced by filenamesTag(), fssizesTag(), psmStage(), rpmHeaderGetEntry(), rpmInstallSourcePackage(), and verifyHeader(). |
|
||||||||||||||||
|
Check that all dependencies can be resolved.
Definition at line 2198 of file depends.c. References _free(), rpmTransactionSet_s::addedPackages, alMakeIndex(), rpmTransactionSet_s::availablePackages, checkDependentConflicts(), checkDependentPackages(), checkPackageDeps(), availablePackage::h, headerNVR(), HFD_t, HGE_t, int_32, availableList_s::list, availablePackage::multiLib, availablePackage::name, rpmTransactionSet_s::numRemovedPackages, availablePackage::provides, availablePackage::providesCount, availablePackage::release, rpmTransactionSet_s::removedPackages, rpmTransactionSet_s::rpmdb, rpmdbAppendIterator(), rpmdbCloseDBI(), rpmdbFreeIterator(), RPMDBI_DEPENDS, RPMDBI_PACKAGES, rpmdbInitIterator(), rpmdbNextIterator(), RPMMESS_DEBUG, rpmMessage, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_PROVIDENAME, rpmTagType, availableList_s::size, stpcpy(), availablePackage::version, xcalloc(), and xrealloc(). Referenced by checkSpec(), rpmErase(), rpmInstall(), rpmRollback(), rpmtransDepCheck(), and verifyDependencies(). |
|
||||||||||||
|
Destroy dependency conflicts storage.
Definition at line 878 of file depends.c. References _free(), rpmDependencyConflict_s::byHeader, rpmDependencyConflict_s::byName, rpmDependencyConflict_s::byRelease, rpmDependencyConflict_s::byVersion, headerFree(), rpmDependencyConflict_s::needsName, rpmDependencyConflict_s::needsVersion, and rpmDependencyConflict_s::suggestedPackages. Referenced by checkSpec(), rpmErase(), rpmInstall(), rpmRollback(), rpmtransDepCheck(), and verifyDependencies(). |
|
|
Determine package order in a transaction set according to dependencies. Order packages, returning error if circular dependencies cannot be eliminated by removing PreReq'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 rpmdepCheck() 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. The operation would be easier if we could sort the addedPackages array in the transaction set, but we store indexes into the array in various places.
Definition at line 1856 of file depends.c. References _, _free(), rpmTransactionSet_s::addedPackages, addQ(), addRelation(), orderListIndex::alIndex, alloca(), alMakeIndex(), rpmTransactionSet_s::availablePackages, availablePackage::degree, availablePackage::depth, isErasePreReq, isInstallPreReq, isLegacyPreReq, availableList_s::list, markLoop(), availablePackage::name, availablePackage::npreds, rpmTransactionSet_s::order, rpmTransactionSet_s::orderAlloced, rpmTransactionSet_s::orderCount, orderListIndexCmp(), orderListIndex::orIndex, availablePackage::parent, availablePackage::release, availablePackage::requireFlags, availablePackage::requiresCount, RPMMESS_DEBUG, rpmMessage, RPMTRANS_FLAG_CHAINSAW, availableList_s::size, rpmTransactionSet_s::transFlags, availablePackage::tree, availablePackage::tsi, tsortInfo_s::tsi_next, tsortInfo_s::tsi_pkg, tsortInfo_s::tsi_qcnt, tsortInfo_s::tsi_reqx, transactionElement_s::type, transactionElement_s::u, availablePackage::version, xmalloc(), and zapRelation(). Referenced by rpmInstall(), rpmRollback(), and rpmtransOrder(). |
|
||||||||||||||||||||||||||||||||||||
|
Definition at line 157 of file rpmvercmp.c. References _, RPMMESS_DEBUG, rpmMessage, and rpmvercmp(). Referenced by isChangeNameMoreFresh(), and rpmRangesOverlap(). |
|
||||||||||||
|
Return (cached) file system mount points.
Definition at line 241 of file fs.c. References fsnames, getFilesystemList(), and numFilesystems. Referenced by fsnamesTag(), fssizesTag(), and rpmRunTransactions(). |
|
||||||||||||||||||||||||
|
Determine per-file system usage for a list of files.
Definition at line 253 of file fs.c. References _, _free(), alloca(), fsinfo::dev, errno, fsnames, getFilesystemList(), int_32, numFilesystems, RPMERR_BADDEV, RPMERR_STAT, rpmError, rpmGetPath(), uint_32, and xcalloc(). Referenced by fssizesTag(). |
|
||||||||||||||||||||||||
|
Retrieve tag info from header. This is a "dressed" entry to headerGetEntry to do: 1) DIRNAME/BASENAME/DIRINDICES -> FILENAMES tag conversions. 2) i18n lookaside (if enabled).
Definition at line 627 of file misc.c. References headerGetEntry(), headerSprintf(), int_32, RPM_STRING_ARRAY_TYPE, RPM_STRING_TYPE, rpmBuildFileList(), RPMTAG_DESCRIPTION, RPMTAG_GROUP, RPMTAG_OLDFILENAMES, RPMTAG_SUMMARY, stpcpy(), and tagName(). Referenced by rpmPackageGetEntry(). |
|
||||||||||||||||||||||||||||
|
Install source package.
Definition at line 612 of file psm.c. References _, _free(), transactionFileInfo_s::actions, rpmTransactionSet_s::addedPackages, transactionFileInfo_s::ap, transactionFileInfo_s::apath, transactionFileInfo_s::astriplen, transactionFileInfo_s::bnl, chkdir(), CPIO_MAP_GID, CPIO_MAP_MODE, CPIO_MAP_PATH, CPIO_MAP_UID, transactionFileInfo_s::dc, transactionFileInfo_s::dil, transactionFileInfo_s::dnl, FA_CREATE, transactionFileInfo_s::fc, transactionFileInfo_s::fflags, transactionFileInfo_s::fgids, transactionFileInfo_s::fmapflags, transactionFileInfo_s::fmd5s, freeFi(), transactionFileInfo_s::fuids, transactionFileInfo_s::gid, transactionFileInfo_s::h, headerFree(), headerIsEntry(), transactionFileInfo_s::hfd, HFD_t, transactionFileInfo_s::hge, HGE_t, availableList_s::list, loadFi(), transactionFileInfo_s::mapflags, rpmTransactionSet_s::notify, rpmTransactionSet_s::notifyData, PSM_FINI, PSM_PKGINSTALL, PSM_PROCESS, psmStage(), rpmTransactionSet_s::rootDir, rpmBuildFileList(), rpmCallbackData, rpmCallbackFunction, RPMERR_NOSPEC, RPMERR_NOTSRPM, rpmError, RPMFILE_SPECFILE, rpmGenPath(), rpmInstallLoadMacros(), rpmRC, RPMRC_FAIL, RPMRC_OK, rpmReadPackageHeader(), RPMTAG_COOKIE, rpmtransAddPackage(), rpmtransCreateSet(), rpmtransFree(), stpcpy(), transactionFileInfo_s::striplen, transactionFileInfo_s::type, transactionFileInfo_s::uid, xcalloc(), xmalloc(), and xstrdup(). Referenced by rpmInstall(), and rpmInstallSource(). |
|
||||||||||||||||||||||||||||||||
|
Retrieve tag info from header. Yet Another "dressed" entry to headerGetEntry in order to unify signature/header tag retrieval.
Definition at line 678 of file misc.c. References headerGetEntry(), headerIsEntry(), int_32, rpmHeaderGetEntry(), RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PGP, RPMSIGTAG_SIZE, RPMTAG_SIGGPG, RPMTAG_SIGLEMD5_1, RPMTAG_SIGLEMD5_2, RPMTAG_SIGMD5, RPMTAG_SIGPGP, RPMTAG_SIGPGP5, and RPMTAG_SIGSIZE. |
|
||||||||||||
|
Output formatted string representation of problem to file handle.
Definition at line 202 of file problems.c. References _free(), and rpmProblemString(). Referenced by rpmProblemSetPrint(). |
|
|
Destroy problem set.
Definition at line 259 of file transaction.c. References _free(), rpmProblem_s::altNEVR, rpmProblem_s::h, headerFree(), rpmProblemSet_s::numProblems, rpmProblem_s::pkgNEVR, rpmProblemSet_s::probs, and rpmProblem_s::str1. Referenced by rpmInstall(), rpmRollback(), and rpmtransRun(). |
|
||||||||||||
|
Print problems to file handle.
Definition at line 209 of file problems.c. References rpmProblem_s::ignoreProblem, rpmProblemSet_s::numProblems, rpmProblemSet_s::probs, and rpmProblemPrint(). Referenced by rpmInstall(), and rpmRollback(). |
|
|
Return formatted string representation of problem.
Definition at line 114 of file problems.c. References _, rpmProblem_s::altNEVR, rpmProblem_s::pkgNEVR, RPMPROB_BADARCH, RPMPROB_BADOS, RPMPROB_BADPRETRANS, RPMPROB_BADRELOCATE, RPMPROB_CONFLICT, RPMPROB_DISKNODES, RPMPROB_DISKSPACE, RPMPROB_FILE_CONFLICT, RPMPROB_NEW_FILE_CONFLICT, RPMPROB_OLDPACKAGE, RPMPROB_PKG_INSTALLED, RPMPROB_REQUIRES, snprintf(), rpmProblem_s::str1, rpmProblem_s::type, rpmProblem_s::ulong1, and xmalloc(). Referenced by rpmProblemPrint(), and rpmtransRun(). |
|
||||||||||||||||||||||||||||
|
Compare two versioned dependency ranges, looking for overlap.
Definition at line 488 of file depends.c. References _, _free(), parseEVR(), printDepend(), rpmEVRcmp(), RPMMESS_DEBUG, rpmMessage, RPMSENSE_EQUAL, RPMSENSE_GREATER, RPMSENSE_LESS, RPMSENSE_SENSEMASK, and xstrdup(). Referenced by alAllSatisfiesDepend(), headerMatchesDepFlags(), rangeMatchesDepFlags(), and rpmCheckRpmlibProvides(). |
|
||||||||||||||||||||||||
|
Return package header and lead info from file handle.
Definition at line 261 of file package.c. References headerMergeLegacySigs(), rpmlead::major, major, rpmlead::minor, minor, readPackageHeaders(), rpmFreeSignature(), RPMLEAD_SOURCE, rpmRC, RPMRC_OK, and rpmlead::type. Referenced by IDTXglob(), main(), rpmInstall(), rpmInstallSourcePackage(), rpmQueryVerify(), and rpmRunTransactions(). |
|
||||||||||||||||
|
Return package signatures and header from file handle.
Definition at line 249 of file package.c. References headerMergeLegacySigs(), readPackageHeaders(), rpmRC, and RPMRC_OK. Referenced by readRPM(). |
|
||||||||||||||||||||||||||||
|
Add package to be installed to unordered transaction set. If fd is NULL, the callback specified in rpmtransCreateSet() is used to open and close the file descriptor. If Header is NULL, the fd is always used, otherwise fd is only needed (and only opened) for actual package installation.
Definition at line 739 of file depends.c. References rpmTransactionSet_s::addedPackages, alAddPackage(), rpmTransactionSet_s::delta, headerIsEntry(), headerMatchesDepFlags(), headerNVR(), HFD_t, HGE_t, int_32, availableList_s::list, availablePackage::multiLib, rpmTransactionSet_s::numRemovedPackages, rpmTransactionSet_s::order, rpmTransactionSet_s::orderAlloced, rpmTransactionSet_s::orderCount, rpmTransactionSet_s::removedPackages, removePackage(), rpmTransactionSet_s::rpmdb, rpmdbFreeIterator(), rpmdbGetIteratorOffset(), rpmdbInitIterator(), rpmdbNextIterator(), rpmdbPruneIterator(), RPMTAG_MULTILIBS, RPMTAG_NAME, RPMTAG_OBSOLETEFLAGS, RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION, RPMTAG_SOURCEPACKAGE, rpmTagType, rpmVersionCompare(), uint_32, and xrealloc(). Referenced by checkSpec(), rpmInstall(), rpmInstallSourcePackage(), rpmRollback(), rpmtransAdd(), and verifyDependencies(). |
|
||||||||||||||||
|
Add package to universe of possible packages to install in transaction set.
Definition at line 848 of file depends.c. References alAddPackage(), and rpmTransactionSet_s::availablePackages. Referenced by rpmtransAdd(). |
|
||||||||||||
|
Create an empty transaction set.
Definition at line 634 of file depends.c. References rpmTransactionSet_s::addedPackages, alCreate(), alloca(), rpmTransactionSet_s::allocedRemovedPackages, rpmTransactionSet_s::availablePackages, rpmTransactionSet_s::chrootDone, rpmTransactionSet_s::currDir, availableList_s::delta, rpmTransactionSet_s::delta, rpmTransactionSet_s::di, rpmTransactionSet_s::filesystemCount, rpmTransactionSet_s::filesystems, rpmTransactionSet_s::id, rpmTransactionSet_s::numRemovedPackages, rpmTransactionSet_s::order, rpmTransactionSet_s::orderAlloced, rpmTransactionSet_s::orderCount, rpmTransactionSet_s::removedPackages, rpmTransactionSet_s::rootDir, rpmTransactionSet_s::rpmdb, rpmTransactionSet_s::scriptFd, stpcpy(), xcalloc(), and xstrdup(). Referenced by checkSpec(), cpio_doio(), rpmErase(), rpmInstall(), rpmInstallSourcePackage(), rpmRollback(), rpmtransCreate(), rpmVerifyScript(), and verifyDependencies(). |
|
|
Destroy transaction set.
Definition at line 859 of file depends.c. References _free(), rpmTransactionSet_s::addedPackages, alFree(), rpmTransactionSet_s::availablePackages, rpmTransactionSet_s::currDir, rpmTransactionSet_s::di, fdFree, rpmTransactionSet_s::order, rpmTransactionSet_s::removedPackages, rpmTransactionSet_s::rootDir, and rpmTransactionSet_s::scriptFd. Referenced by checkSpec(), cpio_doio(), rpmErase(), rpmInstall(), rpmInstallSourcePackage(), rpmRollback(), rpmtransDealloc(), rpmVerifyScript(), and verifyDependencies(). |
|
||||||||||||
|
Add package to be removed to unordered transaction set.
Definition at line 854 of file depends.c. References removePackage(). Referenced by rpmErase(), rpmRollback(), and rpmtransRemove(). |
|
||||||||||||||||
|
Return exit code from running verify script from header.
Definition at line 279 of file verify.c. References _free(), fdLink, freeFi(), loadFi(), transactionFileInfo_s::magic, PSM_SCRIPT, psmStage(), RPMTAG_VERIFYSCRIPT, RPMTAG_VERIFYSCRIPTPROG, rpmtransCreateSet(), rpmtransFree(), rpmTransactionSet_s::scriptFd, TFIMAGIC, and xcalloc(). Referenced by showVerifyPackage(). |
|
||||||||||||
|
Compare headers to determine which header is "newer".
Definition at line 36 of file psm.c. References headerGetEntry(), int_32, RPMTAG_EPOCH, RPMTAG_RELEASE, RPMTAG_VERSION, and rpmvercmp(). Referenced by alAddPackage(), ensureOlder(), findUpgradePackages(), pkgCompareVer(), rpmInstall(), rpmtransAddPackage(), and unmarkPackagesAlreadyInstalled(). |
|
|
Return name of tag from value.
Definition at line 10 of file tagName.c. References RPMDBI_ADDED, RPMDBI_AVAILABLE, RPMDBI_DEPENDS, RPMDBI_PACKAGES, RPMDBI_REMOVED, and xtolower(). Referenced by checkForDuplicates(), checkForRequired(), db1basename(), db3close(), db3open(), dbiCclose(), dbiClose(), dbiCopen(), dbiCount(), dbiDel(), dbiGet(), dbiOpen(), dbiPut(), dbiSearch(), dbiSync(), dbiUpdateIndex(), dbiVerify(), i18nTag(), printNewSpecfile(), rpmdbAdd(), rpmdbInitIterator(), rpmdbMoveDatabase(), rpmdbRemove(), rpmdbRemoveDatabase(), rpmHeaderGetEntry(), and stashSt(). |
|
|
Return value of tag from name.
Definition at line 53 of file tagName.c. References headerTagTableEntry_s::name, RPMDBI_ADDED, RPMDBI_AVAILABLE, RPMDBI_DEPENDS, RPMDBI_PACKAGES, RPMDBI_REMOVED, headerTagTableEntry_s::val, and xstrcasecmp(). Referenced by dbiTagsInit(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Table of query format extensions.
|
|
|
|
|
|
Automatically generated table of tag name/value pairs.
|
|
|
Number of entries in rpmTagTable.
|
|
|
|
1.2.18