Main Page   Modules   Compound List   File List   Compound Members   File Members   Related Pages  

lib/rpmlib.h File Reference

More...

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

Go to the source code of this file.

Compounds

struct  rpmBuildArguments
struct  rpmDependencyConflict
struct  rpmlead
struct  rpmProblem_s
struct  rpmProblemSet_s
struct  rpmQVArguments
struct  rpmRelocation_s

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)
int rpmReadRC (const char * file)
void rpmGetArchInfo ( const char ** name, int * num)
void rpmGetOsInfo ( const char ** name, int * num)
int rpmMachineScore (int type, const char * name)
int rpmShowRC (FILE *f)
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 = MACROFILES

RPMDB

#define rpmdbNextIterator(_a)
typedef struct rpmdb_srpmdb
typedef struct _dbiIndexSetdbiIndexSet
typedef struct _rpmdbMatchIteratorrpmdbMatchIterator
Header rpmdbNextIterator (rpmdbMatchIterator mi)

RPMQV

#define RPMVERIFY_ALL   ~(RPMVERIFY_NONE)
typedef enum rpmVerifyAttrs_e  rpmVerifyAttrs
typedef enum rpmQVSources_e  rpmQVSources
typedef enum rpmQueryFlags_e  rpmQueryFlags
typedef enum rpmVerifyFlags_e  rpmVerifyFlags
typedef struct rpmQVArguments  QVA_t
typedef int (* QVF_t )(QVA_t *qva, rpmdb db, Header h)
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)
}
enum  rpmQVSources_e {
  RPMQV_PACKAGE = 0, RPMQV_PATH, RPMQV_ALL, RPMQV_RPM,
  RPMQV_GROUP, RPMQV_WHATPROVIDES, RPMQV_WHATREQUIRES, RPMQV_TRIGGEREDBY,
  RPMQV_DBOFFSET, RPMQV_SPECFILE
}
enum  rpmQueryFlags_e {
  QUERY_FOR_LIST = (1 << 1), QUERY_FOR_STATE = (1 << 2), QUERY_FOR_DOCS = (1 << 3), QUERY_FOR_CONFIG = (1 << 4),
  QUERY_FOR_DUMPFILES = (1 << 8)
}
enum  rpmVerifyFlags_e { VERIFY_FILES = (1 << 9), VERIFY_DEPS = (1 << 10), VERIFY_SCRIPT = (1 << 11), VERIFY_MD5 = (1 << 12) }
int rpmVerifyFile (const char * root, Header h, int filenum, int * result, int omitMask)
int rpmVerifyScript (const char * rootDir, Header h, FD_t scriptFd)
 Return exit code from running verify script in header. More...

int showVerifyPackage (QVA_t *qva, rpmdb db, Header h)
int rpmVerify (QVA_t *qva, rpmQVSources source, const char *arg)
struct poptOption rpmVerifyPoptTable []

RPMPROBS

typedef enum rpmProblemType_e  rpmProblemType
 Enumerate transaction set problem types.

typedef struct rpmProblem_s *  rpmProblem
typedef struct rpmProblemSet_s *  rpmProblemSet
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 rpmProblemSetFree ( rpmProblemSet probs)
 Destroy problem set. More...


RPMTS

typedef struct rpmRelocation_s  rpmRelocation
typedef struct rpmTransactionSet_srpmTransactionSet
typedef enum rpmtransFlags_e  rpmtransFlags
typedef enum rpmprobFilterFlags_e  rpmprobFilterFlags
enum  rpmtransFlags_e {
  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)
}
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)
}
void rpmtransSetScriptFd (rpmTransactionSet ts, FD_t fd)
int rpmtransGetKeys (const rpmTransactionSet ts, const void *** ep, int * nep)
int rpmGetRpmlibProvides ( const char *** provNames, int ** provFlags, const char *** provVersions)
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)

RPMBT

typedef struct rpmBuildArguments BTA_t

RPMEIU

typedef enum rpmInstallInterfaceFlags_e  rpmInstallInterfaceFlags
typedef enum rpmEraseInterfaceFlags_e  rpmEraseInterfaceFlags
enum  rpmInstallInterfaceFlags_e {
  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)
}
enum  rpmEraseInterfaceFlags_e { UNINSTALL_NODEPS = (1 << 0), UNINSTALL_ALLMATCHES = (1 << 1) }

RPMK

typedef enum rpmVerifySignatureReturn_e  rpmVerifySignatureReturn
 Return codes from verifySignature().

typedef enum rpmCheckSigFlags_e  rpmCheckSigFlags
typedef enum rpmResignFlags_e  rpmResignFlags
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, RPMTAG_PK_BASE = 512,
  RPMTAG_PK_RSA_ES = RPMTAG_PK_BASE+1, RPMTAG_PK_RSA_E = RPMTAG_PK_BASE+2, RPMTAG_PK_RSA_S = RPMTAG_PK_BASE+3, RPMTAG_PK_ELGAMAL_E = RPMTAG_PK_BASE+16,
  RPMTAG_PK_DSA = RPMTAG_PK_BASE+17, RPMTAG_PK_ELLIPTIC = RPMTAG_PK_BASE+18, RPMTAG_PK_ECDSA = RPMTAG_PK_BASE+19, RPMTAG_PK_ELGAMAL_ES = RPMTAG_PK_BASE+20,
  RPMTAG_PK_DH = RPMTAG_PK_BASE+21, RPMTAG_HASH_BASE = 512+64, RPMTAG_HASH_MD5 = RPMTAG_HASH_BASE+1, RPMTAG_HASH_SHA1 = RPMTAG_HASH_BASE+2,
  RPMTAG_HASH_RIPEMD160 = RPMTAG_HASH_BASE+3, RPMTAG_HASH_MD2 = RPMTAG_HASH_BASE+5, RPMTAG_HASH_TIGER192 = RPMTAG_HASH_BASE+6, RPMTAG_HASH_HAVAL_5_160 = RPMTAG_HASH_BASE+7
}
enum  rpmVerifySignatureReturn_e { RPMSIG_OK = 0, RPMSIG_UNKNOWN = 1, RPMSIG_NOKEY = 3, RPMSIG_NOTTRUSTED = 4 }
 Return codes from verifySignature(). More...

enum  rpmCheckSigFlags_e { CHECKSIG_NONE = 0, CHECKSIG_PGP = (1 << 0), CHECKSIG_MD5 = (1 << 1), CHECKSIG_GPG = (1 << 2) }
enum  rpmResignFlags_e { RESIGN_NEW_SIGNATURE = 0, RESIGN_ADD_SIGNATURE }
rpmVerifySignatureReturn rpmVerifySignature (const char *file, int_32 sigTag, const void * sig, int count, char *result)
void rpmFreeSignature (Header h)

Defines

#define RPMDBI_PACKAGES   0
 Pseudo-tags used by the rpmdb iterator API. More...

#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 isFileMULTILIB(_fflags)    ((_fflags) & RPMFILE_MULTILIB_MASK)
#define RPMSENSE_SENSEMASK   15
#define RPMSENSE_TRIGGER
#define isDependsMULTILIB(_dflags)    ((_dflags) & RPMSENSE_MULTILIB)
#define _ALL_REQUIRES_MASK
#define _notpre(_x)    ((_x) & ~RPMSENSE_PREREQ)
#define _INSTALL_ONLY_MASK
#define _ERASE_ONLY_MASK
#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 rpmTag_e  rpmTag
 Tags identify data in package headers. More...

typedef enum rpmfileStates_e  rpmfileStates
 File States (when installed).

typedef enum rpmfileAttrs_e  rpmfileAttrs
 File Attributes.

typedef enum rpmsenseFlags_e  rpmsenseFlags
 Dependency Attributes.


Enumerations

enum  rpmTag_e {
  RPMTAG_HEADERIMAGE = HEADER_IMAGE, RPMTAG_HEADERSIGNATURES = HEADER_SIGNATURES, RPMTAG_HEADERIMMUTABLE = HEADER_IMMUTABLE, RPMTAG_HEADERREGIONS = HEADER_REGIONS,
  RPMTAG_HEADERI18NTABLE = HEADER_I18NTABLE, RPMTAG_SIG_BASE = HEADER_SIGBASE, 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_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_FIRSTFREE_TAG
}
 Tags identify data in package headers. More...

enum  rpmfileStates_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_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)
}
 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)
}
 Dependency Attributes. More...


Functions

int tagValue (const char *tagstr)
 Return value of tag from name. More...


Variables

const struct headerTagTableEntry rpmTagTable []
 Automatically generated table of tag name/value pairs. More...

const int rpmTagTableSize = sizeof(rpmTagTable) / sizeof(struct headerTagTableEntry) - 1
 Number of entries in rpmTagTable. More...


Detailed Description

Definition in file rpmlib.h.


Define Documentation

#define RPMDBI_ADDED   3
 

Added package headers.

Definition at line 141 of file rpmlib.h.

#define RPMDBI_AVAILABLE   5
 

Available package headers.

Definition at line 143 of file rpmlib.h.

#define RPMDBI_DEPENDS   1
 

Dependency resolution cache.

Definition at line 139 of file rpmlib.h.

#define RPMDBI_LABEL   2
 

Fingerprint search marker.

Definition at line 140 of file rpmlib.h.

#define RPMDBI_PACKAGES   0
 

Pseudo-tags used by the rpmdb iterator API.

Installed package headers.

Definition at line 138 of file rpmlib.h.

#define RPMDBI_REMOVED   4
 

Removed package headers.

Definition at line 142 of file rpmlib.h.

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

Definition at line 325 of file rpmlib.h.

Referenced by processPackageFiles().

#define RPMFILE_MULTILIB_MASK   RPMFILE_MULTILIB(7)
 

Definition at line 326 of file rpmlib.h.

#define RPMFILE_MULTILIB_SHIFT   9
 

Definition at line 324 of file rpmlib.h.

#define RPMLEAD_BINARY   0
 

Definition at line 1073 of file rpmlib.h.

#define RPMLEAD_MAGIC0   0xed
 

Definition at line 1076 of file rpmlib.h.

#define RPMLEAD_MAGIC1   0xab
 

Definition at line 1077 of file rpmlib.h.

#define RPMLEAD_MAGIC2   0xee
 

Definition at line 1078 of file rpmlib.h.

#define RPMLEAD_MAGIC3   0xdb
 

Definition at line 1079 of file rpmlib.h.

#define RPMLEAD_SIZE   96
 

Don't rely on sizeof(struct)

Definition at line 1081 of file rpmlib.h.

#define RPMLEAD_SOURCE   1
 

Definition at line 1074 of file rpmlib.h.

#define RPMSENSE_SENSEMASK   15
 

Definition at line 366 of file rpmlib.h.

#define RPMSENSE_TRIGGER
 

Initializer:

\
        (RPMSENSE_TRIGGERIN | RPMSENSE_TRIGGERUN | RPMSENSE_TRIGGERPOSTUN)

Definition at line 369 of file rpmlib.h.

#define RPMTAG_COPYRIGHT   RPMTAG_LICENSE
 

#define RPMTAG_EXTERNAL_TAG   1000000
 

Definition at line 298 of file rpmlib.h.

#define RPMTAG_OBSOLETES   RPMTAG_OBSOLETENAME
 

#define RPMTAG_PROVIDES   RPMTAG_PROVIDENAME
 

#define RPMTAG_SERIAL   RPMTAG_EPOCH
 

#define RPMVAR_INCLUDE   43
 

Definition at line 405 of file rpmlib.h.

#define RPMVAR_MACROFILES   49
 

Definition at line 406 of file rpmlib.h.

#define RPMVAR_NUM   55
 

Definition at line 408 of file rpmlib.h.

#define RPMVAR_OPTFLAGS   3
 

Definition at line 403 of file rpmlib.h.

#define RPMVAR_PROVIDES   38
 

Definition at line 404 of file rpmlib.h.

#define RPMVERIFY_ALL   ~(RPMVERIFY_NONE)
 

Definition at line 1182 of file rpmlib.h.

#define RPM_MACHTABLE_COUNT   4
 

No. of arch/os tables.

Definition at line 441 of file rpmlib.h.

#define _ALL_REQUIRES_MASK
 

Initializer:

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

Definition at line 374 of file rpmlib.h.

#define _ERASE_ONLY_MASK
 

Initializer:

\
    _notpre(RPMSENSE_SCRIPT_PREUN|RPMSENSE_SCRIPT_POSTUN)

Definition at line 391 of file rpmlib.h.

#define _INSTALL_ONLY_MASK
 

Initializer:

\
    _notpre(RPMSENSE_SCRIPT_PRE|RPMSENSE_SCRIPT_POST|RPMSENSE_RPMLIB)

Definition at line 389 of file rpmlib.h.

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

Definition at line 388 of file rpmlib.h.

Referenced by depMsgs().

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

Definition at line 372 of file rpmlib.h.

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

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

Definition at line 396 of file rpmlib.h.

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

Definition at line 329 of file rpmlib.h.

Referenced by relocateFileList().

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

Definition at line 395 of file rpmlib.h.

Referenced by rpmdbAdd().

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

Definition at line 394 of file rpmlib.h.

#define rpmdbNextIterator( _a )
 

Initializer:

\
        XrpmdbNextIterator(_a, __FILE__, __LINE__)

Definition at line 672 of file rpmlib.h.

Referenced by dbiFindMatches(), handleDbResult(), handleInstInstalledFiles(), handleRmvdInstalledFiles(), installBinaryPackage(), markReplacedFiles(), rpmErase(), rpmInstall(), rpmRunTransactions(), rpmdbFindByFile(), rpmdbFindFpList(), rpmdbFirst(), rpmdbLength(), rpmdbMINext(), rpmdbRebuild(), rpmdbRemove(), rpmdbSubscript(), rpmtransAddPackage(), rpmtransRemove(), runImmedTriggers(), runTriggers(), and showMatches().


Typedef Documentation

typedef struct rpmBuildArguments BTA_t
 

Definition at line 1150 of file rpmlib.h.

typedef struct rpmQVArguments QVA_t
 

Describe query/verify command line request.

typedef int (* QVF_t)(QVA_t *qva, rpmdb db, Header h)
 

Parameters:
qva   parsed query/verify options
db   rpm database
h   header to use for query/verify

Definition at line 1272 of file rpmlib.h.

typedef struct _dbiIndexSet* dbiIndexSet
 

Definition at line 542 of file rpmlib.h.

typedef enum rpmCheckSigFlags_e rpmCheckSigFlags
 

Bit(s) to control rpmCheckSig() operation.

typedef enum rpmEraseInterfaceFlags_e rpmEraseInterfaceFlags
 

Bit(s) to control rpmErase() operation.

typedef enum rpmInstallInterfaceFlags_e rpmInstallInterfaceFlags
 

Bit(s) to control rpmInstall() operation.

typedef struct rpmProblem_s * rpmProblem
 

typedef struct rpmProblemSet_s * rpmProblemSet
 

typedef enum rpmProblemType_e rpmProblemType
 

Enumerate transaction set problem types.

typedef enum rpmQVSources_e rpmQVSources
 

The command line argument will be used to retrieve header(s) ...

typedef enum rpmQueryFlags_e rpmQueryFlags
 

Bit(s) to control rpmQuery() operation, stored in qva_flags.

typedef struct rpmRelocation_s rpmRelocation
 

typedef enum rpmResignFlags_e rpmResignFlags
 

Bit(s) to control rpmReSign() operation.

typedef enum rpmTag_e rpmTag
 

Tags identify data in package headers.

Note:
tags should not have value 0!

typedef struct rpmTransactionSet_s* rpmTransactionSet
 

The RPM Transaction Set. Transaction sets are inherently unordered! RPM may reorder transaction sets to reduce errors. In general, installs/upgrades are done before strict removals, and prerequisite ordering is done on installs/upgrades.

Definition at line 854 of file rpmlib.h.

typedef enum rpmVerifyAttrs_e rpmVerifyAttrs
 

Bit(s) for rpmVerifyFile() attributes and result.

typedef enum rpmVerifyFlags_e rpmVerifyFlags
 

Bit(s) to control rpmVerify() operation, stored in qva_flags.

typedef enum rpmVerifySignatureReturn_e rpmVerifySignatureReturn
 

Return codes from verifySignature().

typedef struct rpmdb_s* rpmdb
 

Definition at line 538 of file rpmlib.h.

typedef struct _rpmdbMatchIterator* rpmdbMatchIterator
 

Definition at line 593 of file rpmlib.h.

typedef enum rpmfileAttrs_e rpmfileAttrs
 

File Attributes.

typedef enum rpmfileStates_e rpmfileStates
 

File States (when installed).

typedef enum rpmprobFilterFlags_e rpmprobFilterFlags
 

Todo:
Generalize filter mechanism.

typedef enum rpmsenseFlags_e rpmsenseFlags
 

Dependency Attributes.

typedef enum rpmtransFlags_e rpmtransFlags
 

Bit(s) to control rpmRunTransaction() operation.


Enumeration Type Documentation

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  
Todo:
Use for dependency errors.
RPMPROB_CONFLICT  
Todo:
Use for dependency errors.
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 720 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  
RPMTAG_SIGPGP  
RPMTAG_SIGLEMD5_2  
RPMTAG_SIGMD5  
RPMTAG_SIGGPG  
RPMTAG_SIGPGP5   internal
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   obsolete
RPMTAG_FILEUSERNAME  
RPMTAG_FILEGROUPNAME  
RPMTAG_EXCLUDE   internal - deprecated
RPMTAG_EXCLUSIVE   internal - deprecated
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  
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   obsolete
RPMTAG_BUILDPREREQ   internal
RPMTAG_BUILDREQUIRES   internal
RPMTAG_BUILDCONFLICTS   internal
RPMTAG_BUILDMACROS  
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_FIRSTFREE_TAG   internal

Definition at line 149 of file rpmlib.h.

enum rpmVerifySignatureReturn_e
 

Return codes from verifySignature().

Enumeration values:
RPMSIG_OK   Signature is OK.
RPMSIG_UNKNOWN   Signature is unknown.
RPMSIG_NOKEY   Key is unavailable.
RPMSIG_NOTTRUSTED   Signature is OK, but key is not trusted.

Definition at line 1460 of file rpmlib.h.

enum rpmfileAttrs_e
 

File Attributes.

Enumeration values:
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

Definition at line 313 of file rpmlib.h.

enum rpmfileStates_e
 

File States (when installed).

Enumeration values:
RPMFILE_STATE_NORMAL  
RPMFILE_STATE_REPLACED  
RPMFILE_STATE_NOTINSTALLED  
RPMFILE_STATE_NETSHARED  

Definition at line 303 of file rpmlib.h.

enum rpmprobFilterFlags_e
 

Todo:
Generalize filter mechanism.
Enumeration values:
RPMPROB_FILTER_NONE  
RPMPROB_FILTER_IGNOREOS  
RPMPROB_FILTER_IGNOREARCH  
RPMPROB_FILTER_REPLACEPKG  
RPMPROB_FILTER_FORCERELOCATE  
RPMPROB_FILTER_REPLACENEWFILES  
RPMPROB_FILTER_REPLACEOLDFILES  
RPMPROB_FILTER_OLDPACKAGE  
RPMPROB_FILTER_DISKSPACE  
RPMPROB_FILTER_DISKNODES  

Definition at line 1025 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.

Definition at line 334 of file rpmlib.h.


Function Documentation

void rpmProblemSetFree ( rpmProblemSet probs )
 

Destroy problem set.

Parameters:
probs   problem set

Definition at line 306 of file transaction.c.

Referenced by rpmInstall(), and rpmtransRun().

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

Return exit code from running verify script in 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 276 of file verify.c.

Referenced by showVerifyPackage().

int tagValue ( const char * tagstr )
 

Return value of tag from name.

Parameters:
targstr   name of tag
Returns:
tag value

Definition at line 51 of file tagName.c.

Referenced by dbiTagsInit().


Variable Documentation

const struct headerTagTableEntry rpmTagTable[]
 

Automatically generated table of tag name/value pairs.

Definition at line 4 of file tagtable.c.

const int rpmTagTableSize = sizeof(rpmTagTable) / sizeof(struct headerTagTableEntry) - 1
 

Number of entries in rpmTagTable.

Definition at line 116 of file tagtable.c.


Generated at Sun Apr 8 18:43:04 2001 for rpm by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000