# rpmtag.h File Reference

`#include <rpm/rpmtypes.h>`

Include dependency graph for rpmtag.h:

Go to the source code of this file.

## Defines

#define | RPMDBI_PACKAGES 0
| Pseudo-tags used by the rpmdb and rpmgi iterator API's.
#define | RPMDBI_DEPENDS 1
#define | RPMDBI_LABEL 2
#define | RPMDBI_ADDED 3
#define | RPMDBI_REMOVED 4
#define | RPMDBI_AVAILABLE 5
#define | RPMDBI_HDLIST 6
#define | RPMDBI_ARGLIST 7
#define | RPMDBI_FTSWALK 8
#define | HEADER_IMAGE 61
| Header private tags.
#define | HEADER_SIGNATURES 62
#define | HEADER_IMMUTABLE 63
#define | HEADER_REGIONS 64
#define | HEADER_I18NTABLE 100
#define | HEADER_SIGBASE 256
#define | HEADER_TAGBASE 1000
#define | RPMTAG_PKGID RPMTAG_SIGMD5
#define | RPMTAG_HDRID RPMTAG_SHA1HEADER
#define | RPMTAG_N RPMTAG_NAME
#define | RPMTAG_V RPMTAG_VERSION
#define | RPMTAG_R RPMTAG_RELEASE
#define | RPMTAG_E RPMTAG_EPOCH
#define | RPMTAG_FILEMD5S RPMTAG_FILEDIGESTS
#define | RPMTAG_PROVIDES RPMTAG_PROVIDENAME
#define | RPMTAG_P RPMTAG_PROVIDENAME
#define | RPMTAG_REQUIRES RPMTAG_REQUIRENAME
#define | RPMTAG_CONFLICTS RPMTAG_CONFLICTNAME
#define | RPMTAG_C RPMTAG_CONFLICTNAME
#define | RPMTAG_OBSOLETES RPMTAG_OBSOLETENAME
#define | RPMTAG_O RPMTAG_OBSOLETENAME
#define | RPMTAG_SUGGESTS RPMTAG_SUGGESTSNAME
#define | RPMTAG_ENHANCES RPMTAG_ENHANCESNAME
#define | RPMTAG_SVNID RPMTAG_CVSID
#define | RPMTAG_EXTERNAL_TAG 1000000
#define | RPMTAG_NOT_FOUND -1
#define | RPM_MIN_TYPE 0
#define | RPM_MAX_TYPE 9
#define | RPM_FORCEFREE_TYPE 0xff
#define | RPM_MASK_TYPE 0x0000ffff

## Typedefs

typedef enum rpmTag_e | rpmTag
| Tags identify data in package headers.
typedef enum rpmSigTag_e | rpmSigTag
| Tags found in signature header from package.
typedef enum rpmTagType_e | rpmTagType
| The basic types of data in tags from headers.
typedef enum rpmSubTagType_e | rpmSubTagType
| New rpm data types under consideration/development.
typedef enum rpmTagReturnType_e | rpmTagReturnType
| * Identify how to return the header data type.

## Enumerations

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_LONGSIGSIZE = RPMTAG_SIG_BASE+14,
RPMTAG_LONGARCHIVESIZE = RPMTAG_SIG_BASE+15, 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_FILEDIGESTS = 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_INSTALLCOLOR = 1127,
RPMTAG_INSTALLTID = 1128, RPMTAG_REMOVETID = 1129, RPMTAG_SHA1RHN = 1130, RPMTAG_RHNPLATFORM = 1131,
RPMTAG_PLATFORM = 1132, RPMTAG_PATCHESNAME = 1133, RPMTAG_PATCHESFLAGS = 1134, RPMTAG_PATCHESVERSION = 1135,
RPMTAG_CACHECTIME = 1136, RPMTAG_CACHEPKGPATH = 1137, RPMTAG_CACHEPKGSIZE = 1138, RPMTAG_CACHEPKGMTIME = 1139,
RPMTAG_FILECOLORS = 1140, RPMTAG_FILECLASS = 1141, RPMTAG_CLASSDICT = 1142, RPMTAG_FILEDEPENDSX = 1143,
RPMTAG_FILEDEPENDSN = 1144, RPMTAG_DEPENDSDICT = 1145, RPMTAG_SOURCEPKGID = 1146, RPMTAG_FILECONTEXTS = 1147,
RPMTAG_FSCONTEXTS = 1148, RPMTAG_RECONTEXTS = 1149, RPMTAG_POLICIES = 1150, RPMTAG_PRETRANS = 1151,
RPMTAG_POSTTRANS = 1152, RPMTAG_PRETRANSPROG = 1153, RPMTAG_POSTTRANSPROG = 1154, RPMTAG_DISTTAG = 1155,
RPMTAG_SUGGESTSNAME = 1156, RPMTAG_SUGGESTSVERSION = 1157, RPMTAG_SUGGESTSFLAGS = 1158, RPMTAG_ENHANCESNAME = 1159,
RPMTAG_ENHANCESVERSION = 1160, RPMTAG_ENHANCESFLAGS = 1161, RPMTAG_PRIORITY = 1162, RPMTAG_CVSID = 1163,
RPMTAG_BLINKPKGID = 1164, RPMTAG_BLINKHDRID = 1165, RPMTAG_BLINKNEVRA = 1166, RPMTAG_FLINKPKGID = 1167,
RPMTAG_FLINKHDRID = 1168, RPMTAG_FLINKNEVRA = 1169, RPMTAG_PACKAGEORIGIN = 1170, RPMTAG_TRIGGERPREIN = 1171,
RPMTAG_BUILDSUGGESTS = 1172, RPMTAG_BUILDENHANCES = 1173, RPMTAG_SCRIPTSTATES = 1174, RPMTAG_SCRIPTMETRICS = 1175,
RPMTAG_BUILDCPUCLOCK = 1176, RPMTAG_FILEDIGESTALGO = 1177, RPMTAG_VARIANTS = 1178, RPMTAG_XMAJOR = 1179,
RPMTAG_XMINOR = 1180, RPMTAG_REPOTAG = 1181, RPMTAG_KEYWORDS = 1182, RPMTAG_BUILDPLATFORMS = 1183,
RPMTAG_PACKAGECOLOR = 1184, RPMTAG_PACKAGEPREFCOLOR = 1185, RPMTAG_XATTRSDICT = 1186, RPMTAG_FILEXATTRSX = 1187,
RPMTAG_DEPATTRSDICT = 1188, RPMTAG_CONFLICTATTRSX = 1189, RPMTAG_OBSOLETEATTRSX = 1190, RPMTAG_PROVIDEATTRSX = 1191,
RPMTAG_REQUIREATTRSX = 1192, RPMTAG_BUILDPROVIDES = 1193, RPMTAG_BUILDOBSOLETES = 1194, RPMTAG_FILENAMES = 5000,
RPMTAG_FILEPROVIDE = 5001, RPMTAG_FILEREQUIRE = 5002, RPMTAG_FSNAMES = 5003, RPMTAG_FSSIZES = 5004,
RPMTAG_TRIGGERCONDS = 5005, RPMTAG_TRIGGERTYPE = 5006, RPMTAG_ORIGFILENAMES = 5007, RPMTAG_LONGFILESIZES = 5008,
RPMTAG_LONGSIZE = 5009, RPMTAG_FIRSTFREE_TAG
}

| Tags identify data in package headers. More...

enum

rpmSigTag_e {
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, RPMSIGTAG_LONGSIZE = RPMTAG_LONGSIGSIZE, RPMSIGTAG_LONGARCHIVESIZE = RPMTAG_LONGARCHIVESIZE
}

| Tags found in signature header from package. More...
enum | rpmTagType_e { RPM_NULL_TYPE = 0, RPM_CHAR_TYPE = 1, RPM_INT8_TYPE = 2, RPM_INT16_TYPE = 3, RPM_INT32_TYPE = 4, RPM_INT64_TYPE = 5, RPM_STRING_TYPE = 6, RPM_BIN_TYPE = 7, RPM_STRING_ARRAY_TYPE = 8, RPM_I18NSTRING_TYPE = 9, RPM_MASK_TYPE }
| The basic types of data in tags from headers. More...
enum | rpmSubTagType_e { RPM_REGION_TYPE = -10, RPM_BIN_ARRAY_TYPE = -11, RPM_XREF_TYPE = -12 }
| New rpm data types under consideration/development. More...
enum | rpmTagReturnType_e { RPM_ANY_RETURN_TYPE = 0, RPM_SCALAR_RETURN_TYPE = 0x00010000, RPM_ARRAY_RETURN_TYPE = 0x00020000, RPM_MAPPING_RETURN_TYPE = 0x00040000, RPM_MASK_RETURN_TYPE = 0xffff0000 }
| * Identify how to return the header data type. More...

## Functions

const char * | rpmTagGetName (rpmTag tag)
| Return tag name from value.
rpmTagType | rpmTagGetType (rpmTag tag)
| Return tag data type from value.
rpmTag | rpmTagGetValue (const char *tagstr)
| Return tag value from name.
int | rpmTagGetNames (rpmtd tagnames, int fullname)
| Return known rpm tag names, sorted by name.

## Define Documentation

#define HEADER_I18NTABLE 100

Definition at line 31 of file rpmtag.h.

#define HEADER_IMAGE 61

Header private tags.

Note:
  General use tags should start at 1000 (RPM's tag space starts there).

Definition at line 27 of file rpmtag.h.

#define HEADER_IMMUTABLE 63

Definition at line 29 of file rpmtag.h.

#define HEADER_REGIONS 64

Definition at line 30 of file rpmtag.h.

#define HEADER_SIGBASE 256

Definition at line 32 of file rpmtag.h.

#define HEADER_SIGNATURES 62

Definition at line 28 of file rpmtag.h.

#define HEADER_TAGBASE 1000

Definition at line 33 of file rpmtag.h.

#define RPM_FORCEFREE_TYPE 0xff

#define RPM_MASK_TYPE 0x0000ffff

#define RPM_MAX_TYPE 9

#define RPM_MIN_TYPE 0

#define RPMDBI_ADDED 3

Definition at line 16 of file rpmtag.h.

#define RPMDBI_ARGLIST 7

Definition at line 20 of file rpmtag.h.

#define RPMDBI_AVAILABLE 5

Definition at line 18 of file rpmtag.h.

#define RPMDBI_DEPENDS 1

Definition at line 14 of file rpmtag.h.

#define RPMDBI_FTSWALK 8

Definition at line 21 of file rpmtag.h.

#define RPMDBI_HDLIST 6

Definition at line 19 of file rpmtag.h.

#define RPMDBI_LABEL 2

Definition at line 15 of file rpmtag.h.

#define RPMDBI_PACKAGES 0

Pseudo-tags used by the rpmdb and rpmgi iterator API's.

Definition at line 13 of file rpmtag.h.

#define RPMDBI_REMOVED 4

Definition at line 17 of file rpmtag.h.

#define RPMTAG_C RPMTAG_CONFLICTNAME

#define RPMTAG_CONFLICTS RPMTAG_CONFLICTNAME

#define RPMTAG_E RPMTAG_EPOCH

#define RPMTAG_ENHANCES RPMTAG_ENHANCESNAME

#define RPMTAG_EXTERNAL_TAG 1000000

Definition at line 287 of file rpmtag.h.

#define RPMTAG_FILEMD5S RPMTAG_FILEDIGESTS

#define RPMTAG_HDRID RPMTAG_SHA1HEADER

#define RPMTAG_N RPMTAG_NAME

#define RPMTAG_NOT_FOUND -1

Definition at line 288 of file rpmtag.h.

#define RPMTAG_O RPMTAG_OBSOLETENAME

#define RPMTAG_OBSOLETES RPMTAG_OBSOLETENAME

#define RPMTAG_P RPMTAG_PROVIDENAME

#define RPMTAG_PKGID RPMTAG_SIGMD5

#define RPMTAG_PROVIDES RPMTAG_PROVIDENAME

#define RPMTAG_R RPMTAG_RELEASE

#define RPMTAG_REQUIRES RPMTAG_REQUIRENAME

#define RPMTAG_SUGGESTS RPMTAG_SUGGESTSNAME

#define RPMTAG_SVNID RPMTAG_CVSID

#define RPMTAG_V RPMTAG_VERSION