The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

rpmlib.h (3)
  • >> rpmlib.h (3) ( Linux man: Библиотечные вызовы )
  •  

    NAME

    lib/rpmlib.h -  
     
    

    SYNOPSIS


    #include 'rpmio.h'
    #include 'rpmmessages.h'
    #include 'rpmerr.h'
    #include 'header.h'
    #include 'popt.h'
     

    Data Structures


    struct rpmDependencyConflict_s
    Dependency problems found by rpmdepCheck().
    struct rpmlead

    struct rpmProblem_s

    struct rpmProblemSet_s

    struct rpmRelocation_s
    We pass these around as an array with a sentinel.  

    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.
    enum fileTypes_e { PIPE = 1, CDEV = 2, XDIR = 4, BDEV = 6, REG = 8, LINK = 10, SOCK = 12 }
    File types.
    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 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.
    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.
    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().
    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.
    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.
    enum rpmfileState_e { RPMFILE_STATE_NORMAL = 0, RPMFILE_STATE_REPLACED = 1, RPMFILE_STATE_NOTINSTALLED = 2, RPMFILE_STATE_NETSHARED = 3 }
    File States (when installed).
    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.
    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.  

    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.  

    DETAILED DESCRIPTION

    Definition in file rpmlib.h.  

    DEFINE DOCUMENTATION

     

    #define _ALL_REQUIRES_MASK

    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().  

    #define _ERASE_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PREUN|RPMSENSE_SCRIPT_POSTUN)

    Definition at line 502 of file rpmlib.h.  

    #define _INSTALL_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PRE|RPMSENSE_SCRIPT_POST|RPMSENSE_RPMLIB|RPMSENSE_KEYRING)

    Definition at line 500 of file rpmlib.h.  

    #define _notpre(_x) ((_x) & ~RPMSENSE_PREREQ)

    Definition at line 499 of file rpmlib.h.

    Referenced by identifyDepend().  

    #define _noTransScripts

    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().  

    #define _noTransTriggers

    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().  

    #define isDependsMULTILIB(_dflags) ((_dflags) & RPMSENSE_MULTILIB)

    Definition at line 482 of file rpmlib.h.

    Referenced by addReqProv(), alMakeIndex(), checkPackageDeps(), mergeFiles(), and printDepMsg().  

    #define isErasePreReq(_x) ((_x) & _ERASE_ONLY_MASK)

    Definition at line 507 of file rpmlib.h.

    Referenced by rpmdepOrder().  

    #define isFileMULTILIB(_fflags) ((_fflags) & RPMFILE_MULTILIB_MASK)

    Definition at line 432 of file rpmlib.h.

    Referenced by alAllFileSatisfiesDepend(), and relocateFileList().  

    #define isInstallPreReq(_x) ((_x) & _INSTALL_ONLY_MASK)

    Definition at line 506 of file rpmlib.h.

    Referenced by rpmdbAdd(), and rpmdepOrder().  

    #define isLegacyPreReq(_x) (((_x) & _ALL_REQUIRES_MASK) == RPMSENSE_PREREQ)

    Definition at line 505 of file rpmlib.h.

    Referenced by identifyDepend(), and rpmdepOrder().  

    #define RPM_MACHTABLE_COUNT 4

    No. of arch/os tables.

    Definition at line 560 of file rpmlib.h.  

    #define RPMDBI_ADDED 3

    Added package headers.

    Definition at line 207 of file rpmlib.h.

    Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue().  

    #define RPMDBI_AVAILABLE 5

    Available package headers.

    Definition at line 209 of file rpmlib.h.

    Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue().  

    #define RPMDBI_DEPENDS 1

    Dependency resolution cache.

    Definition at line 205 of file rpmlib.h.

    Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), rpmdepCheck(), tagName(), tagValue(), and unsatisfiedDepend().  

    #define RPMDBI_LABEL 2

    Fingerprint search marker.

    Definition at line 206 of file rpmlib.h.

    Referenced by rpmdbInitIterator(), rpmErase(), rpmQueryVerify(), and rpmtransRemove().  

    #define RPMDBI_PACKAGES 0

    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().  

    #define RPMDBI_REMOVED 4

    Removed package headers.

    Definition at line 208 of file rpmlib.h.

    Referenced by openDatabase(), rpmdbAdd(), rpmdbMoveDatabase(), rpmdbRemove(), tagName(), and tagValue().  

    #define RPMFILE_ALL ~(RPMFILE_NONE)

    Definition at line 429 of file rpmlib.h.

    Referenced by main().  

    #define RPMFILE_MULTILIB(N) ((N) << RPMFILE_MULTILIB_SHIFT)

    Definition at line 426 of file rpmlib.h.

    Referenced by processPackageFiles().  

    #define RPMFILE_MULTILIB_MASK RPMFILE_MULTILIB(7)

    Definition at line 427 of file rpmlib.h.

    Referenced by addFile(), and genCpioListAndHeader().  

    #define RPMFILE_MULTILIB_SHIFT 9

    Definition at line 425 of file rpmlib.h.

    Referenced by genCpioListAndHeader().  

    #define RPMLEAD_BINARY 0

    Definition at line 1558 of file rpmlib.h.

    Referenced by packageBinaries(), psmStage(), and writeRPM().  

    #define RPMLEAD_MAGIC0 0xed

    Definition at line 1561 of file rpmlib.h.

    Referenced by readPackageHeaders(), and writeLead().  

    #define RPMLEAD_MAGIC1 0xab

    Definition at line 1562 of file rpmlib.h.

    Referenced by readPackageHeaders(), and writeLead().  

    #define RPMLEAD_MAGIC2 0xee

    Definition at line 1563 of file rpmlib.h.

    Referenced by readPackageHeaders(), and writeLead().  

    #define RPMLEAD_MAGIC3 0xdb

    Definition at line 1564 of file rpmlib.h.

    Referenced by readPackageHeaders(), and writeLead().  

    #define RPMLEAD_SIZE 96

    Don't rely on sizeof(struct)

    Definition at line 1566 of file rpmlib.h.  

    #define RPMLEAD_SOURCE 1

    Definition at line 1559 of file rpmlib.h.

    Referenced by packageSources(), readPackageHeaders(), rewriteRPM(), rpmReadPackageHeader(), and writeRPM().  

    #define RPMSENSE_SENSEMASK 15

    Definition at line 476 of file rpmlib.h.

    Referenced by addReqProv(), headerMatchesDepFlags(), mergeFiles(), parseRCPOT(), printDepend(), printDepMsg(), rangeMatchesDepFlags(), rpmRangesOverlap(), triggercondsTag(), and unsatisfiedDepend().  

    #define RPMSENSE_TRIGGER (RPMSENSE_TRIGGERIN | RPMSENSE_TRIGGERUN | RPMSENSE_TRIGGERPOSTUN)

    Definition at line 479 of file rpmlib.h.

    Referenced by addReqProv().  

    #define RPMTAG_COPYRIGHT RPMTAG_LICENSE

     

    #define RPMTAG_EXTERNAL_TAG 1000000

    Definition at line 393 of file rpmlib.h.

    Referenced by convertExistingAMD(), and main().  

    #define RPMTAG_OBSOLETES RPMTAG_OBSOLETENAME

     

    #define RPMTAG_PROVIDES RPMTAG_PROVIDENAME

     

    #define RPMTAG_SERIAL RPMTAG_EPOCH

     

    #define RPMVAR_INCLUDE 43

    Definition at line 516 of file rpmlib.h.

    Referenced by doReadRC().  

    #define RPMVAR_MACROFILES 49

    Definition at line 517 of file rpmlib.h.

    Referenced by doReadRC(), and rpmReadRC().  

    #define RPMVAR_NUM 55

    Definition at line 519 of file rpmlib.h.  

    #define RPMVAR_OPTFLAGS 3

    Definition at line 514 of file rpmlib.h.

    Referenced by rpmRebuildTargetVars(), and rpmSetDefaults().  

    #define RPMVAR_PROVIDES 38

    Definition at line 515 of file rpmlib.h.

    Referenced by doReadRC(), and unsatisfiedDepend().  

    #define RPMVERIFY_ALL ~(RPMVERIFY_NONE)

    Definition at line 1672 of file rpmlib.h.

    Referenced by processPackageFiles(), processSourceFiles(), and rpmVerifyFile().  

    #define XFA_SKIPPING(_a) ((_a) == FA_SKIP || (_a) == FA_SKIPNSTATE || (_a) == FA_SKIPNETSHARED || (_a) == FA_SKIPMULTILIB)

    Definition at line 1202 of file rpmlib.h.

    Referenced by dnlInitIterator(), fsmCommitLinks(), fsmMakeLinks(), fsmStage(), handleInstInstalledFiles(), handleOverlappedFiles(), rpmRunTransactions(), saveHardLink(), and skipFiles().  

    TYPEDEF DOCUMENTATION

     

    typedef enum fileAction_e fileAction

    File disposition(s) during package install/erase transaction.

    Referenced by decideFileFate(), fileActionString(), mergeFiles(), psmStage(), and relocateFileList().  

    typedef enum fileTypes_e fileTypes

    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().  

    typedef int(* HAE_t)(Header h, rpmTag tag, rpmTagType type, const void * p, int_32 c)

    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.

    Parameters:

    h
    header
    tag
    tag
    type
    tag value data type
    p
    pointer to tag value(s)
    c
    number of values

    Returns: 1 on success, 0 on failure

    Definition at line 1117 of file rpmlib.h.

    Referenced by compressFilelist(), expandFilelist(), headerMergeLegacySigs(), and relocateFileList().  

    typedef void*(* HFD_t)( const void * data, rpmTagType type)

    Prototype for headerFreeData() vector.

    Parameters:

    data
    address of data (or NULL)
    type
    type of data (or -1 to force free)

    Returns: NULL always

    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().  

    typedef int(* HGE_t)(Header h, rpmTag tag, rpmTagType * type, void ** p, int_32 * c)

    Prototype for headerGetEntry() vector.

    Will never return RPM_I18NSTRING_TYPE! RPM_STRING_TYPE elements with RPM_I18NSTRING_TYPE equivalent entries are translated (if HEADER_I18NTABLE entry is present).

    Parameters:

    h
    header
    tag
    tag

    Return values:

    type
    address of tag value data type (or NULL)
    p
    address of pointer to tag value(s) (or NULL)
    c
    address of number of values (or NULL)

    Returns: 1 on success, 0 on failure

    Definition at line 1097 of file rpmlib.h.

    Referenced by addFileToTag(), addReqProv(), alAddPackage(), checkPackageDeps(), compressFilelist(), doBuildFileList(), fpLookupHeader(), fssizesTag(), handleInstInstalledFiles(), handleOneTrigger(), handlePreambleTag(), handleRmvdInstalledFiles(), headerMatchesDepFlags(), i18nTag(), IDTXglob(), IDTXload(), instprefixTag(), isMemberInEntry(), loadFi(), markReplacedFiles(), mergeFiles(), mireSkip(), printDeps(), processPackageFiles(), providePackageNVR(), psmStage(), rangeMatchesDepFlags(), relocateFileList(), rpmdbAdd(), rpmdbFindByFile(), rpmdbFindFpList(), rpmdbRemove(), rpmdepCheck(), rpmInstallLoadMacros(), rpmInstallSourcePackage(), rpmtransAddPackage(), rpmVerifyDigest(), rpmVerifyFile(), runImmedTriggers(), runInstScript(), runScript(), showQueryPackage(), stashSt(), timeCheck(), triggercondsTag(), triggertypeTag(), verifyHeader(), and writeRPM().  

    typedef int(* HME_t)(Header h, rpmTag tag, rpmTagType type, const void * p, int_32 c)

    Prototype for headerModifyEntry() vector.

    If there are multiple entries with this tag, the first one gets replaced.

    Parameters:

    h
    header
    tag
    tag
    type
    tag value data type
    p
    pointer to tag value(s)
    c
    number of values

    Returns: 1 on success, 0 on failure

    Definition at line 1131 of file rpmlib.h.

    Referenced by mergeFiles(), psmStage(), and relocateFileList().  

    typedef int(* HRE_t)(Header h, int_32 tag)

    Prototype for headerRemoveEntry() vector.

    Delete tag in header. Removes all entries of type tag from the header, returns 1 if none were found.

    Parameters:

    h
    header
    tag
    tag

    Returns: 0 on success, 1 on failure (INCONSISTENT)

    Definition at line 1145 of file rpmlib.h.

    Referenced by compressFilelist(), and expandFilelist().  

    typedef struct rpmDependencyConflict_s * rpmDependencyConflict

    Dependency problems found by rpmdepCheck().

     

    typedef enum rpmfileAttrs_e rpmfileAttrs

    File Attributes.

    Referenced by rpmVerifyFile(), and verifyHeader().  

    typedef enum rpmfileState_e rpmfileState

    File States (when installed).

    Referenced by rpmVerifyFile(), and showQueryPackage().  

    typedef enum rpmprobFilterFlags_e rpmprobFilterFlags

    Todo:
     Generalize filter mechanism.  

    Referenced by rpmInstall(), and rpmRunTransactions().  

    typedef struct rpmProblem_s * rpmProblem

     

    typedef struct rpmProblemSet_s * rpmProblemSet

     

    typedef enum rpmProblemType_e rpmProblemType

    Enumerate transaction set problem types.

    Referenced by psAppend().  

    typedef enum rpmRC_e rpmRC

    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().  

    typedef struct rpmRelocation_s rpmRelocation

    We pass these around as an array with a sentinel.

     

    typedef enum rpmsenseFlags_e rpmsenseFlags

    Dependency Attributes.

    Referenced by addReqProv(), handlePreambleTag(), parseBits(), and parseRCPOT().  

    typedef enum rpmTag_e rpmTag

    Tags identify data in package headers.

    Note: tags should not have value 0!

    Referenced by addReqProv(), checkForRequired(), doBuildFileList(), IDTXglob(), IDTXload(), isMemberInEntry(), mergeFiles(), mireDup(), and rpmdbSetIteratorRE().  

    typedef enum rpmVerifySignatureReturn_e rpmVerifySignatureReturn

    Return codes from verifySignature().

    Referenced by rpmVerifySignature(), and verifyGPGSignature().  

    ENUMERATION TYPE DOCUMENTATION

     

    enum fileAction_e

    File disposition(s) during package install/erase transaction.

    Enumeration values:

    FA_UNKNOWN
    initial action for file ...
    FA_CREATE
    FA_COPYIN
    FA_COPYOUT
    FA_BACKUP
    FA_SAVE
    FA_SKIP
    FA_ALTNAME
    FA_ERASE
    FA_SKIPNSTATE
    FA_SKIPNETSHARED
    FA_SKIPMULTILIB

    Todo:
     state 'multilib' ???. 

    Definition at line 1187 of file rpmlib.h.  

    enum fileTypes_e

    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.

    Enumeration values:

    PIPE
    pipe/fifo
    CDEV
    character device
    XDIR
    directory
    BDEV
    block device
    REG
    regular file
    LINK
    hard link
    SOCK
    socket

    Definition at line 1212 of file rpmlib.h.  

    enum rpmfileAttrs_e

    File Attributes.

    Enumeration values:

    RPMFILE_NONE
    RPMFILE_CONFIG
    from %config
    RPMFILE_DOC
    from %doc
    RPMFILE_DONOTUSE
    Todo:
     (unimplemented) from donotuse. 
    RPMFILE_MISSINGOK
    from %config(missingok)
    RPMFILE_NOREPLACE
    from %config(noreplace)
    RPMFILE_SPECFILE
    Todo:
     (unnecessary) marks 1st file in srpm. 
    RPMFILE_GHOST
    from %ghost
    RPMFILE_LICENSE
    from %license
    RPMFILE_README
    from %readme
    RPMFILE_EXCLUDE
    from %exclude

    Definition at line 408 of file rpmlib.h.  

    enum rpmfileState_e

    File States (when installed).

    Enumeration values:

    RPMFILE_STATE_NORMAL
    RPMFILE_STATE_REPLACED
    RPMFILE_STATE_NOTINSTALLED
    RPMFILE_STATE_NETSHARED

    Definition at line 398 of file rpmlib.h.  

    enum rpmprobFilterFlags_e

    Todo:
     Generalize filter mechanism.  

    Enumeration values:

    RPMPROB_FILTER_NONE
    RPMPROB_FILTER_IGNOREOS
    from --ignoreos
    RPMPROB_FILTER_IGNOREARCH
    from --ignorearch
    RPMPROB_FILTER_REPLACEPKG
    from --replacepkgs
    RPMPROB_FILTER_FORCERELOCATE
    from --badreloc
    RPMPROB_FILTER_REPLACENEWFILES
    from --replacefiles
    RPMPROB_FILTER_REPLACEOLDFILES
    from --replacefiles
    RPMPROB_FILTER_OLDPACKAGE
    from --oldpackage
    RPMPROB_FILTER_DISKSPACE
    from --ignoresize
    RPMPROB_FILTER_DISKNODES
    from --ignoresize

    Definition at line 1502 of file rpmlib.h.  

    enum rpmProblemType_e

    Enumerate transaction set problem types.

    Enumeration values:

    RPMPROB_BADARCH
    package ... is for a different architecture
    RPMPROB_BADOS
    package ... is for a different operating system
    RPMPROB_PKG_INSTALLED
    package ... is already installed
    RPMPROB_BADRELOCATE
    path ... is not relocateable for package ...
    RPMPROB_REQUIRES
    package ... has unsatisfied Requires: ...
    RPMPROB_CONFLICT
    package ... has unsatisfied Conflicts: ...
    RPMPROB_NEW_FILE_CONFLICT
    file ... conflicts between attemped installs of ...
    RPMPROB_FILE_CONFLICT
    file ... from install of ... conflicts with file from package ...
    RPMPROB_OLDPACKAGE
    package ... (which is newer than ...) is already installed
    RPMPROB_DISKSPACE
    installing package ... needs ... on the ... filesystem
    RPMPROB_DISKNODES
    installing package ... needs ... on the ... filesystem
    RPMPROB_BADPRETRANS
    (unimplemented)

    Definition at line 958 of file rpmlib.h.  

    enum rpmRC_e

    Package read return codes.

    Enumeration values:

    RPMRC_OK
    RPMRC_BADMAGIC
    RPMRC_FAIL
    RPMRC_BADSIZE
    RPMRC_SHORTREAD

    Definition at line 17 of file rpmlib.h.  

    enum rpmsenseFlags_e

    Dependency Attributes.

    Enumeration values:

    RPMSENSE_ANY
    RPMSENSE_SERIAL
    Todo:
     Legacy. 
    RPMSENSE_LESS
    RPMSENSE_GREATER
    RPMSENSE_EQUAL
    RPMSENSE_PROVIDES
    RPMSENSE_CONFLICTS
    RPMSENSE_PREREQ
    Todo:
     Legacy. 
    RPMSENSE_OBSOLETES
    RPMSENSE_INTERP
    Interpreter used by scriptlet.
    RPMSENSE_SCRIPT_PRE
    pre dependency.
    RPMSENSE_SCRIPT_POST
    post dependency.
    RPMSENSE_SCRIPT_PREUN
    preun dependency.
    RPMSENSE_SCRIPT_POSTUN
    postun dependency.
    RPMSENSE_SCRIPT_VERIFY
    verify dependency.
    RPMSENSE_FIND_REQUIRES
    find-requires generated dependency.
    RPMSENSE_FIND_PROVIDES
    find-provides generated dependency.
    RPMSENSE_TRIGGERIN
    triggerin dependency.
    RPMSENSE_TRIGGERUN
    triggerun dependency.
    RPMSENSE_TRIGGERPOSTUN
    triggerpostun dependency.
    RPMSENSE_MULTILIB
    RPMSENSE_SCRIPT_PREP
    prep build dependency.
    RPMSENSE_SCRIPT_BUILD
    build build dependency.
    RPMSENSE_SCRIPT_INSTALL
    install build dependency.
    RPMSENSE_SCRIPT_CLEAN
    clean build dependency.
    RPMSENSE_RPMLIB
    rpmlib(feature) dependency.
    RPMSENSE_TRIGGERPREIN
    Todo:
     Implement triggerprein. 
    RPMSENSE_KEYRING

    Definition at line 437 of file rpmlib.h.  

    enum rpmTag_e

    Tags identify data in package headers.

    Note: tags should not have value 0!

    Enumeration values:

    RPMTAG_HEADERIMAGE
    Current image.
    RPMTAG_HEADERSIGNATURES
    Signatures.
    RPMTAG_HEADERIMMUTABLE
    Original image.
    RPMTAG_HEADERREGIONS
    Regions.
    RPMTAG_HEADERI18NTABLE
    I18N string locales.
    RPMTAG_SIG_BASE
    RPMTAG_SIGSIZE
    RPMTAG_SIGLEMD5_1
    internal - obsolate
    RPMTAG_SIGPGP
    RPMTAG_SIGLEMD5_2
    internal - obsolate
    RPMTAG_SIGMD5
    RPMTAG_SIGGPG
    RPMTAG_SIGPGP5
    internal - obsolate
    RPMTAG_BADSHA1_1
    internal - obsolate
    RPMTAG_BADSHA1_2
    internal - obsolate
    RPMTAG_PUBKEYS
    RPMTAG_DSAHEADER
    RPMTAG_RSAHEADER
    RPMTAG_SHA1HEADER
    RPMTAG_NAME
    RPMTAG_VERSION
    RPMTAG_RELEASE
    RPMTAG_EPOCH
    RPMTAG_SUMMARY
    RPMTAG_DESCRIPTION
    RPMTAG_BUILDTIME
    RPMTAG_BUILDHOST
    RPMTAG_INSTALLTIME
    RPMTAG_SIZE
    RPMTAG_DISTRIBUTION
    RPMTAG_VENDOR
    RPMTAG_GIF
    RPMTAG_XPM
    RPMTAG_LICENSE
    RPMTAG_PACKAGER
    RPMTAG_GROUP
    RPMTAG_CHANGELOG
    internal
    RPMTAG_SOURCE
    RPMTAG_PATCH
    RPMTAG_URL
    RPMTAG_OS
    RPMTAG_ARCH
    RPMTAG_PREIN
    RPMTAG_POSTIN
    RPMTAG_PREUN
    RPMTAG_POSTUN
    RPMTAG_OLDFILENAMES
    RPMTAG_FILESIZES
    RPMTAG_FILESTATES
    RPMTAG_FILEMODES
    RPMTAG_FILEUIDS
    internal
    RPMTAG_FILEGIDS
    internal
    RPMTAG_FILERDEVS
    RPMTAG_FILEMTIMES
    RPMTAG_FILEMD5S
    RPMTAG_FILELINKTOS
    RPMTAG_FILEFLAGS
    RPMTAG_ROOT
    internal - obsolete
    RPMTAG_FILEUSERNAME
    RPMTAG_FILEGROUPNAME
    RPMTAG_EXCLUDE
    internal - obsolete
    RPMTAG_EXCLUSIVE
    internal - obsolete
    RPMTAG_ICON
    RPMTAG_SOURCERPM
    RPMTAG_FILEVERIFYFLAGS
    RPMTAG_ARCHIVESIZE
    RPMTAG_PROVIDENAME
    RPMTAG_REQUIREFLAGS
    RPMTAG_REQUIRENAME
    RPMTAG_REQUIREVERSION
    RPMTAG_NOSOURCE
    internal
    RPMTAG_NOPATCH
    internal
    RPMTAG_CONFLICTFLAGS
    RPMTAG_CONFLICTNAME
    RPMTAG_CONFLICTVERSION
    RPMTAG_DEFAULTPREFIX
    internal - deprecated
    RPMTAG_BUILDROOT
    internal
    RPMTAG_INSTALLPREFIX
    internal - deprecated
    RPMTAG_EXCLUDEARCH
    RPMTAG_EXCLUDEOS
    RPMTAG_EXCLUSIVEARCH
    RPMTAG_EXCLUSIVEOS
    RPMTAG_AUTOREQPROV
    internal
    RPMTAG_RPMVERSION
    RPMTAG_TRIGGERSCRIPTS
    RPMTAG_TRIGGERNAME
    RPMTAG_TRIGGERVERSION
    RPMTAG_TRIGGERFLAGS
    RPMTAG_TRIGGERINDEX
    RPMTAG_VERIFYSCRIPT
    RPMTAG_CHANGELOGTIME
    RPMTAG_CHANGELOGNAME
    RPMTAG_CHANGELOGTEXT
    RPMTAG_BROKENMD5
    internal
    RPMTAG_PREREQ
    internal
    RPMTAG_PREINPROG
    RPMTAG_POSTINPROG
    RPMTAG_PREUNPROG
    RPMTAG_POSTUNPROG
    RPMTAG_BUILDARCHS
    RPMTAG_OBSOLETENAME
    RPMTAG_VERIFYSCRIPTPROG
    RPMTAG_TRIGGERSCRIPTPROG
    RPMTAG_DOCDIR
    internal
    RPMTAG_COOKIE
    RPMTAG_FILEDEVICES
    RPMTAG_FILEINODES
    RPMTAG_FILELANGS
    RPMTAG_PREFIXES
    RPMTAG_INSTPREFIXES
    RPMTAG_TRIGGERIN
    internal
    RPMTAG_TRIGGERUN
    internal
    RPMTAG_TRIGGERPOSTUN
    internal
    RPMTAG_AUTOREQ
    internal
    RPMTAG_AUTOPROV
    internal
    RPMTAG_CAPABILITY
    internal - obsolete
    RPMTAG_SOURCEPACKAGE
    internal
    RPMTAG_OLDORIGFILENAMES
    internal - obsolete
    RPMTAG_BUILDPREREQ
    internal
    RPMTAG_BUILDREQUIRES
    internal
    RPMTAG_BUILDCONFLICTS
    internal
    RPMTAG_BUILDMACROS
    internal
    RPMTAG_PROVIDEFLAGS
    RPMTAG_PROVIDEVERSION
    RPMTAG_OBSOLETEFLAGS
    RPMTAG_OBSOLETEVERSION
    RPMTAG_DIRINDEXES
    RPMTAG_BASENAMES
    RPMTAG_DIRNAMES
    RPMTAG_ORIGDIRINDEXES
    internal
    RPMTAG_ORIGBASENAMES
    internal
    RPMTAG_ORIGDIRNAMES
    internal
    RPMTAG_OPTFLAGS
    RPMTAG_DISTURL
    RPMTAG_PAYLOADFORMAT
    RPMTAG_PAYLOADCOMPRESSOR
    RPMTAG_PAYLOADFLAGS
    RPMTAG_MULTILIBS
    RPMTAG_INSTALLTID
    RPMTAG_REMOVETID
    RPMTAG_SHA1RHN
    internal
    RPMTAG_RHNPLATFORM
    RPMTAG_PLATFORM
    RPMTAG_FIRSTFREE_TAG
    internal

    Definition at line 215 of file rpmlib.h.  

    enum rpmVerifySignatureReturn_e

    Return codes from verifySignature().

    Enumeration values:

    RPMSIG_OK
    Signature is OK.
    RPMSIG_UNKNOWN
    Signature is unknown.
    RPMSIG_BAD
    Signature does not verify.
    RPMSIG_NOKEY
    Key is unavailable.
    RPMSIG_NOTTRUSTED
    Signature is OK, but key is not trusted.

    Definition at line 1763 of file rpmlib.h.  

    FUNCTION DOCUMENTATION

     

    void* _free (const void * p) [inline, static]

    Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.

    Parameters:

    p
    memory to free

    Returns: NULL always

    Definition at line 55 of file rpmlib.h.  

    void freeFilesystems (void)

    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().  

    void printDepFlags (FILE * fp, const char * version, int flags)

    Definition at line 19 of file problems.c.

    References RPMSENSE_EQUAL, RPMSENSE_GREATER, and RPMSENSE_LESS.

    Referenced by printDepProblems(), and rpmShowRpmlibProvides().  

    void printDepProblems (FILE * fp, const rpmDependencyConflict conflicts, int numConflicts)

    Print results of rpmdepCheck() dependency check.

    Parameters:

    fp
    output file
    conflicts
    dependency problems
    numConflicts
    no. of dependency problems

    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().  

    void rpmBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr)

    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.

    Parameters:

    h
    header

    Return values:

    fileListPtr
    address of array of file names
    fileCountPtr
    address of number of files

    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().  

    int rpmGetFilesystemList (const char *** listptr, int * num)

    Return (cached) file system mount points.

    Return values:

    listptr
    addess of file system names (or NULL)
    num
    address of number of file systems (or NULL)

    Returns: 0 on success, 1 on error

    Definition at line 241 of file fs.c.

    References fsnames, getFilesystemList(), and numFilesystems.

    Referenced by fsnamesTag(), fssizesTag(), and rpmRunTransactions().  

    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.

    Parameters:

    fileList
    array of absolute file names
    fssizes
    array of file sizes
    numFiles
    number of files in list

    Return values:

    usagesPtr
    address of per-file system usage array (or NULL)

    Parameters:

    flags
    (unused)

    Returns: 0 on success, 1 on error

    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().  

    int rpmHeaderGetEntry (Header h, int_32 tag, int_32 * type, void ** p, int_32 * c)

    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).

    Parameters:

    h
    header
    tag
    tag

    Return values:

    type
    address of tag value data type
    p
    address of pointer to tag value(s)
    c
    address of number of values

    Returns: 0 on success, 1 on bad magic, 2 on error

    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().  

    rpmRC rpmInstallSourcePackage (const char * rootDir, FD_t fd, const char ** specFilePtr, rpmCallbackFunction notify, rpmCallbackData notifyData, char ** cookie)

    Install source package.

    Parameters:

    rootDir
    path to top of install tree (or NULL)
    fd
    file handle

    Return values:

    specFilePtr
    address of spec file name (or NULL)

    Parameters:

    notify
    progress callback
    notifyData
    progress callback private data

    Return values:

    cooke
    address of cookie pointer (or NULL)

    Returns: rpmRC return code

    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().  

    int rpmPackageGetEntry (void * leadp, Header sigs, Header h, int_32 tag, int_32 * type, void ** p, int_32 * c)

    Retrieve tag info from header.

    Yet Another 'dressed' entry to headerGetEntry in order to unify signature/header tag retrieval.

    Deprecated: Signature tags are now duplicated into header when installed.

    Todo: Eliminate from API.

    Parameters:

    leadp
    rpm lead
    h
    header
    sigs
    signatures
    tag
    tag

    Return values:

    type
    address of tag value data type
    p
    address of pointer to tag value(s)
    c
    address of number of values

    Returns: 0 on success, 1 on bad magic, 2 on error

    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.  

    void rpmProblemPrint (FILE * fp, rpmProblem prob)

    Output formatted string representation of problem to file handle.

    Deprecated: API: prob used to be passed by value, now passed by reference.

    Parameters:

    fp
    file handle
    prob
    rpm problem

    Definition at line 202 of file problems.c.

    References _free(), and rpmProblemString().

    Referenced by rpmProblemSetPrint().  

    void rpmProblemSetFree (rpmProblemSet probs)

    Destroy problem set.

    Parameters:

    probs
    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().  

    void rpmProblemSetPrint (FILE * fp, rpmProblemSet probs)

    Print problems to file handle.

    Parameters:

    fp
    file handle
    probs
    problem set

    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().  

    const char* rpmProblemString (const rpmProblem prob)

    Return formatted string representation of problem.

    Deprecated: API: prob used to be passed by value, now passed by reference.

    Parameters:

    prob
    rpm problem

    Returns: formatted string (malloc'd)

    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().  

    rpmRC rpmReadPackageHeader (FD_t fd, Header * hdrp, int * isSource, int * major, int * minor)

    Return package header and lead info from file handle.

    Parameters:

    fd
    file handle

    Return values:

    hdrp
    address of header (or NULL)
    isSource
    address to return lead source flag (or NULL)
    major
    address to return lead major (or NULL)
    minor
    address to return lead minor (or NULL)

    Returns: rpmRC return code

    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().  

    rpmRC rpmReadPackageInfo (FD_t fd, Header * sigp, Header * hdrp)

    Return package signatures and header from file handle.

    Deprecated: Signature tags are appended to header in rpm-4.0.2.

    Todo: Eliminate.

    Parameters:

    fd
    file handle

    Return values:

    sigp
    address of signature header (or NULL)
    hdrp
    address of header (or NULL)

    Returns: rpmRC return code

    Definition at line 249 of file package.c.

    References headerMergeLegacySigs(), readPackageHeaders(), rpmRC, and RPMRC_OK.

    Referenced by readRPM().  

    int rpmVerifyScript (const char * rootDir, Header h, FD_t scriptFd)

    Return exit code from running verify script from header.

    Todo: gnorpm/kpackage prevents static, should be using VERIFY_SCRIPT flag.

    Parameters:

    rootDir
    path to top of install tree
    h
    header
    scriptFd
    file handle to use for stderr (or NULL)

    Returns: 0 on success

    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().  

    int rpmVersionCompare (Header first, Header second)

    Compare headers to determine which header is 'newer'.

    Parameters:

    first
    1st header
    second
    2nd header

    Returns: result of comparison

    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().  

    const char* const tagName (int tag)

    Return name of tag from value.

    Parameters:

    tag
    tag value

    Returns: name of tag

    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().  

    int tagValue (const char * tagstr)

    Return value of tag from name.

    Parameters:

    tagstr
    name of tag

    Returns: tag value

    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().  

    VARIABLE DOCUMENTATION

     

    struct MacroContext_s* rpmCLIMacroContext

    Definition at line 30 of file rpmlib.h.  

    const char* rpmEVR

    Definition at line 39 of file rpmlib.h.  

    int rpmFLAGS

    Definition at line 42 of file rpmlib.h.  

    struct MacroContext_s* rpmGlobalMacroContext

    Definition at line 27 of file rpmlib.h.  

    const struct headerSprintfExtension_s rpmHeaderFormats[]

    Table of query format extensions.

    Note: Chains to headerDefaultFormats[].

    Definition at line 198 of file rpmlib.h.  

    const char* rpmNAME

    Definition at line 36 of file rpmlib.h.  

    const struct headerTagTableEntry_s rpmTagTable[]

    Automatically generated table of tag name/value pairs.

    Definition at line 181 of file rpmlib.h.  

    const int rpmTagTableSize

    Number of entries in rpmTagTable.

    Definition at line 189 of file rpmlib.h.  

    const char* RPMVERSION

    Definition at line 33 of file rpmlib.h.  

    AUTHOR

    Generated automatically by Doxygen for rpm from the source code.


     

    Index

    NAME
    SYNOPSIS
    Data Structures
    RPMRC
    RPMTS
    RPMQV
    RPMDB
    RPMPROBS
    RPMEIU
    RPMK
    Defines
    Typedefs
    Enumerations
    Functions
    Variables
    DETAILED DESCRIPTION
    DEFINE DOCUMENTATION
    #define _ALL_REQUIRES_MASK
    #define _ERASE_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PREUN|RPMSENSE_SCRIPT_POSTUN)
    #define _INSTALL_ONLY_MASK _notpre(RPMSENSE_SCRIPT_PRE|RPMSENSE_SCRIPT_POST|RPMSENSE_RPMLIB|RPMSENSE_KEYRING)
    #define _notpre(_x) ((_x) & ~RPMSENSE_PREREQ)
    #define _noTransScripts
    #define _noTransTriggers
    #define isDependsMULTILIB(_dflags) ((_dflags) & RPMSENSE_MULTILIB)
    #define isErasePreReq(_x) ((_x) & _ERASE_ONLY_MASK)
    #define isFileMULTILIB(_fflags) ((_fflags) & RPMFILE_MULTILIB_MASK)
    #define isInstallPreReq(_x) ((_x) & _INSTALL_ONLY_MASK)
    #define isLegacyPreReq(_x) (((_x) & _ALL_REQUIRES_MASK) == RPMSENSE_PREREQ)
    #define RPM_MACHTABLE_COUNT 4
    #define RPMDBI_ADDED 3
    #define RPMDBI_AVAILABLE 5
    #define RPMDBI_DEPENDS 1
    #define RPMDBI_LABEL 2
    #define RPMDBI_PACKAGES 0
    #define RPMDBI_REMOVED 4
    #define RPMFILE_ALL ~(RPMFILE_NONE)
    #define RPMFILE_MULTILIB(N) ((N) << RPMFILE_MULTILIB_SHIFT)
    #define RPMFILE_MULTILIB_MASK RPMFILE_MULTILIB(7)
    #define RPMFILE_MULTILIB_SHIFT 9
    #define RPMLEAD_BINARY 0
    #define RPMLEAD_MAGIC0 0xed
    #define RPMLEAD_MAGIC1 0xab
    #define RPMLEAD_MAGIC2 0xee
    #define RPMLEAD_MAGIC3 0xdb
    #define RPMLEAD_SIZE 96
    #define RPMLEAD_SOURCE 1
    #define RPMSENSE_SENSEMASK 15
    #define RPMSENSE_TRIGGER (RPMSENSE_TRIGGERIN | RPMSENSE_TRIGGERUN | RPMSENSE_TRIGGERPOSTUN)
    #define RPMTAG_COPYRIGHT RPMTAG_LICENSE
    #define RPMTAG_EXTERNAL_TAG 1000000
    #define RPMTAG_OBSOLETES RPMTAG_OBSOLETENAME
    #define RPMTAG_PROVIDES RPMTAG_PROVIDENAME
    #define RPMTAG_SERIAL RPMTAG_EPOCH
    #define RPMVAR_INCLUDE 43
    #define RPMVAR_MACROFILES 49
    #define RPMVAR_NUM 55
    #define RPMVAR_OPTFLAGS 3
    #define RPMVAR_PROVIDES 38
    #define RPMVERIFY_ALL ~(RPMVERIFY_NONE)
    #define XFA_SKIPPING(_a) ((_a) == FA_SKIP || (_a) == FA_SKIPNSTATE || (_a) == FA_SKIPNETSHARED || (_a) == FA_SKIPMULTILIB)
    TYPEDEF DOCUMENTATION
    typedef enum fileAction_e fileAction
    typedef enum fileTypes_e fileTypes
    typedef int(* HAE_t)(Header h, rpmTag tag, rpmTagType type, const void * p, int_32 c)
    typedef void*(* HFD_t)( const void * data, rpmTagType type)
    typedef int(* HGE_t)(Header h, rpmTag tag, rpmTagType * type, void ** p, int_32 * c)
    typedef int(* HME_t)(Header h, rpmTag tag, rpmTagType type, const void * p, int_32 c)
    typedef int(* HRE_t)(Header h, int_32 tag)
    typedef struct rpmDependencyConflict_s * rpmDependencyConflict
    typedef enum rpmfileAttrs_e rpmfileAttrs
    typedef enum rpmfileState_e rpmfileState
    typedef enum rpmprobFilterFlags_e rpmprobFilterFlags
    typedef struct rpmProblem_s * rpmProblem
    typedef struct rpmProblemSet_s * rpmProblemSet
    typedef enum rpmProblemType_e rpmProblemType
    typedef enum rpmRC_e rpmRC
    typedef struct rpmRelocation_s rpmRelocation
    typedef enum rpmsenseFlags_e rpmsenseFlags
    typedef enum rpmTag_e rpmTag
    typedef enum rpmVerifySignatureReturn_e rpmVerifySignatureReturn
    ENUMERATION TYPE DOCUMENTATION
    enum fileAction_e
    enum fileTypes_e
    enum rpmfileAttrs_e
    enum rpmfileState_e
    enum rpmprobFilterFlags_e
    enum rpmProblemType_e
    enum rpmRC_e
    enum rpmsenseFlags_e
    enum rpmTag_e
    enum rpmVerifySignatureReturn_e
    FUNCTION DOCUMENTATION
    void* _free (const void * p) [inline, static]
    void freeFilesystems (void)
    void printDepFlags (FILE * fp, const char * version, int flags)
    void printDepProblems (FILE * fp, const rpmDependencyConflict conflicts, int numConflicts)
    void rpmBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr)
    int rpmGetFilesystemList (const char *** listptr, int * num)
    int rpmGetFilesystemUsage (const char ** fileList, int_32 * fssizes, int numFiles, uint_32 ** usagesPtr, int flags)
    int rpmHeaderGetEntry (Header h, int_32 tag, int_32 * type, void ** p, int_32 * c)
    rpmRC rpmInstallSourcePackage (const char * rootDir, FD_t fd, const char ** specFilePtr, rpmCallbackFunction notify, rpmCallbackData notifyData, char ** cookie)
    int rpmPackageGetEntry (void * leadp, Header sigs, Header h, int_32 tag, int_32 * type, void ** p, int_32 * c)
    void rpmProblemPrint (FILE * fp, rpmProblem prob)
    void rpmProblemSetFree (rpmProblemSet probs)
    void rpmProblemSetPrint (FILE * fp, rpmProblemSet probs)
    const char* rpmProblemString (const rpmProblem prob)
    rpmRC rpmReadPackageHeader (FD_t fd, Header * hdrp, int * isSource, int * major, int * minor)
    rpmRC rpmReadPackageInfo (FD_t fd, Header * sigp, Header * hdrp)
    int rpmVerifyScript (const char * rootDir, Header h, FD_t scriptFd)
    int rpmVersionCompare (Header first, Header second)
    const char* const tagName (int tag)
    int tagValue (const char * tagstr)
    VARIABLE DOCUMENTATION
    struct MacroContext_s* rpmCLIMacroContext
    const char* rpmEVR
    int rpmFLAGS
    struct MacroContext_s* rpmGlobalMacroContext
    const struct headerSprintfExtension_s rpmHeaderFormats[]
    const char* rpmNAME
    const struct headerTagTableEntry_s rpmTagTable[]
    const int rpmTagTableSize
    const char* RPMVERSION
    AUTHOR


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру