rpm  6.0.91
The RPM Package Manager
Files | Typedefs | Enumerations | Functions

Manipulating RPM tags (accessing values, types, ...) More...

Collaboration diagram for RPM Tag API.:

Files

file  rpmtag.h
 

Typedefs

typedef enum rpmTag_e rpmTag
 
typedef enum rpmDbiTag_e rpmDbiTag
 
typedef enum rpmTagClass_e rpmTagClass
 

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_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_SHA256HEADER = RPMTAG_SIG_BASE+17, RPMTAG_VERITYSIGNATURES = RPMTAG_SIG_BASE+20, RPMTAG_VERITYSIGNATUREALGO = RPMTAG_SIG_BASE+21,
  RPMTAG_OPENPGP = RPMTAG_SIG_BASE+22, RPMTAG_SHA3_256HEADER = RPMTAG_SIG_BASE+23, RPMTAG_SIG_TOP = HEADER_SIGTOP, 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_SOURCESIGMD5 = 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_OLDSUGGESTSNAME = 1156, RPMTAG_OLDSUGGESTSVERSION = 1157,
  RPMTAG_OLDSUGGESTSFLAGS = 1158, RPMTAG_OLDENHANCESNAME = 1159, RPMTAG_OLDENHANCESVERSION = 1160, RPMTAG_OLDENHANCESFLAGS = 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_FILEDIGESTALGOS = 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_DBINSTANCE = 1195, RPMTAG_NVRA = 1196, 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_FILECAPS = 5010, RPMTAG_FILEDIGESTALGO = 5011, RPMTAG_BUGURL = 5012,
  RPMTAG_EVR = 5013, RPMTAG_NVR = 5014, RPMTAG_NEVR = 5015, RPMTAG_NEVRA = 5016,
  RPMTAG_HEADERCOLOR = 5017, RPMTAG_VERBOSE = 5018, RPMTAG_EPOCHNUM = 5019, RPMTAG_PREINFLAGS = 5020,
  RPMTAG_POSTINFLAGS = 5021, RPMTAG_PREUNFLAGS = 5022, RPMTAG_POSTUNFLAGS = 5023, RPMTAG_PRETRANSFLAGS = 5024,
  RPMTAG_POSTTRANSFLAGS = 5025, RPMTAG_VERIFYSCRIPTFLAGS = 5026, RPMTAG_TRIGGERSCRIPTFLAGS = 5027, RPMTAG_COLLECTIONS = 5029,
  RPMTAG_POLICYNAMES = 5030, RPMTAG_POLICYTYPES = 5031, RPMTAG_POLICYTYPESINDEXES = 5032, RPMTAG_POLICYFLAGS = 5033,
  RPMTAG_VCS = 5034, RPMTAG_ORDERNAME = 5035, RPMTAG_ORDERVERSION = 5036, RPMTAG_ORDERFLAGS = 5037,
  RPMTAG_MSSFMANIFEST = 5038, RPMTAG_MSSFDOMAIN = 5039, RPMTAG_INSTFILENAMES = 5040, RPMTAG_REQUIRENEVRS = 5041,
  RPMTAG_PROVIDENEVRS = 5042, RPMTAG_OBSOLETENEVRS = 5043, RPMTAG_CONFLICTNEVRS = 5044, RPMTAG_FILENLINKS = 5045,
  RPMTAG_RECOMMENDNAME = 5046, RPMTAG_RECOMMENDVERSION = 5047, RPMTAG_RECOMMENDFLAGS = 5048, RPMTAG_SUGGESTNAME = 5049,
  RPMTAG_SUGGESTVERSION = 5050, RPMTAG_SUGGESTFLAGS = 5051, RPMTAG_SUPPLEMENTNAME = 5052, RPMTAG_SUPPLEMENTVERSION = 5053,
  RPMTAG_SUPPLEMENTFLAGS = 5054, RPMTAG_ENHANCENAME = 5055, RPMTAG_ENHANCEVERSION = 5056, RPMTAG_ENHANCEFLAGS = 5057,
  RPMTAG_RECOMMENDNEVRS = 5058, RPMTAG_SUGGESTNEVRS = 5059, RPMTAG_SUPPLEMENTNEVRS = 5060, RPMTAG_ENHANCENEVRS = 5061,
  RPMTAG_ENCODING = 5062, RPMTAG_FILETRIGGERIN = 5063, RPMTAG_FILETRIGGERUN = 5064, RPMTAG_FILETRIGGERPOSTUN = 5065,
  RPMTAG_FILETRIGGERSCRIPTS = 5066, RPMTAG_FILETRIGGERSCRIPTPROG = 5067, RPMTAG_FILETRIGGERSCRIPTFLAGS = 5068, RPMTAG_FILETRIGGERNAME = 5069,
  RPMTAG_FILETRIGGERINDEX = 5070, RPMTAG_FILETRIGGERVERSION = 5071, RPMTAG_FILETRIGGERFLAGS = 5072, RPMTAG_TRANSFILETRIGGERIN = 5073,
  RPMTAG_TRANSFILETRIGGERUN = 5074, RPMTAG_TRANSFILETRIGGERPOSTUN = 5075, RPMTAG_TRANSFILETRIGGERSCRIPTS = 5076, RPMTAG_TRANSFILETRIGGERSCRIPTPROG = 5077,
  RPMTAG_TRANSFILETRIGGERSCRIPTFLAGS = 5078, RPMTAG_TRANSFILETRIGGERNAME = 5079, RPMTAG_TRANSFILETRIGGERINDEX = 5080, RPMTAG_TRANSFILETRIGGERVERSION = 5081,
  RPMTAG_TRANSFILETRIGGERFLAGS = 5082, RPMTAG_REMOVEPATHPOSTFIXES = 5083, RPMTAG_FILETRIGGERPRIORITIES = 5084, RPMTAG_TRANSFILETRIGGERPRIORITIES = 5085,
  RPMTAG_FILETRIGGERCONDS = 5086, RPMTAG_FILETRIGGERTYPE = 5087, RPMTAG_TRANSFILETRIGGERCONDS = 5088, RPMTAG_TRANSFILETRIGGERTYPE = 5089,
  RPMTAG_FILESIGNATURES = 5090, RPMTAG_FILESIGNATURELENGTH = 5091, RPMTAG_PAYLOADSHA256 = 5092, RPMTAG_PAYLOADSHA256ALGO = 5093,
  RPMTAG_AUTOINSTALLED = 5094, RPMTAG_IDENTITY = 5095, RPMTAG_MODULARITYLABEL = 5096, RPMTAG_PAYLOADSHA256ALT = 5097,
  RPMTAG_ARCHSUFFIX = 5098, RPMTAG_SPEC = 5099, RPMTAG_TRANSLATIONURL = 5100, RPMTAG_UPSTREAMRELEASES = 5101,
  RPMTAG_SOURCELICENSE = 5102, RPMTAG_PREUNTRANS = 5103, RPMTAG_POSTUNTRANS = 5104, RPMTAG_PREUNTRANSPROG = 5105,
  RPMTAG_POSTUNTRANSPROG = 5106, RPMTAG_PREUNTRANSFLAGS = 5107, RPMTAG_POSTUNTRANSFLAGS = 5108, RPMTAG_SYSUSERS = 5109,
  RPMTAG_BUILDSYSTEM = 5110, RPMTAG_BUILDOPTION = 5111, RPMTAG_PAYLOADSIZE = 5112, RPMTAG_PAYLOADSIZEALT = 5113,
  RPMTAG_RPMFORMAT = 5114, RPMTAG_FILEMIMEINDEX = 5115, RPMTAG_MIMEDICT = 5116, RPMTAG_FILEMIMES = 5117,
  RPMTAG_PACKAGEDIGESTS = 5118, RPMTAG_PACKAGEDIGESTALGOS = 5119, RPMTAG_SOURCENEVR = 5120, RPMTAG_PAYLOADSHA512 = 5121,
  RPMTAG_PAYLOADSHA512ALT = 5122, RPMTAG_PAYLOADSHA3_256 = 5123, RPMTAG_PAYLOADSHA3_256ALT = 5124, RPMTAG_FIRSTFREE_TAG
}
 
enum  rpmDbiTag_e {
  RPMDBI_PACKAGES = 0, RPMDBI_LABEL = 2, RPMDBI_NAME = RPMTAG_NAME, RPMDBI_BASENAMES = RPMTAG_BASENAMES,
  RPMDBI_GROUP = RPMTAG_GROUP, RPMDBI_REQUIRENAME = RPMTAG_REQUIRENAME, RPMDBI_PROVIDENAME = RPMTAG_PROVIDENAME, RPMDBI_CONFLICTNAME = RPMTAG_CONFLICTNAME,
  RPMDBI_OBSOLETENAME = RPMTAG_OBSOLETENAME, RPMDBI_TRIGGERNAME = RPMTAG_TRIGGERNAME, RPMDBI_DIRNAMES = RPMTAG_DIRNAMES, RPMDBI_INSTALLTID = RPMTAG_INSTALLTID,
  RPMDBI_SIGMD5 = RPMTAG_SIGMD5, RPMDBI_SHA1HEADER = RPMTAG_SHA1HEADER, RPMDBI_INSTFILENAMES = RPMTAG_INSTFILENAMES, RPMDBI_FILETRIGGERNAME = RPMTAG_FILETRIGGERNAME,
  RPMDBI_TRANSFILETRIGGERNAME = RPMTAG_TRANSFILETRIGGERNAME, RPMDBI_RECOMMENDNAME = RPMTAG_RECOMMENDNAME, RPMDBI_SUGGESTNAME = RPMTAG_SUGGESTNAME, RPMDBI_SUPPLEMENTNAME = RPMTAG_SUPPLEMENTNAME,
  RPMDBI_ENHANCENAME = RPMTAG_ENHANCENAME
}
 
enum  rpmTagClass_e { RPM_NULL_CLASS = 0, RPM_NUMERIC_CLASS = 1, RPM_STRING_CLASS = 2, RPM_BINARY_CLASS = 3 }
 

Functions

const char * rpmTagGetName (rpmTagVal tag)
 
rpmTagType rpmTagGetType (rpmTagVal tag)
 
rpmTagType rpmTagGetTagType (rpmTagVal tag)
 
rpmTagReturnType rpmTagGetReturnType (rpmTagVal tag)
 
rpmTagClass rpmTagGetClass (rpmTagVal tag)
 
rpmTagVal rpmTagGetValue (const char *tagstr)
 
rpmTagClass rpmTagTypeGetClass (rpmTagType type)
 
int rpmTagGetNames (rpmtd tagnames, int fullname)
 

Detailed Description

Manipulating RPM tags (accessing values, types, ...)

Typedef Documentation

typedef enum rpmDbiTag_e rpmDbiTag

Rpm database index tags.

typedef enum rpmTag_e rpmTag

Tags identify data in package headers.

Note
tags should not have value 0!
all new tags should be added above 5000
Todo:
: Somehow supply type
typedef enum rpmTagClass_e rpmTagClass

The classes of data in tags from headers.

Enumeration Type Documentation

Rpm database index tags.

enum rpmTag_e

Tags identify data in package headers.

Note
tags should not have value 0!
all new tags should be added above 5000
Todo:
: Somehow supply type
Enumerator
RPMTAG_HEADERIMAGE 

Current image.

RPMTAG_HEADERSIGNATURES 

Signatures.

RPMTAG_HEADERREGIONS 

Regions.

RPMTAG_FIRSTFREE_TAG 

internal

The classes of data in tags from headers.

Function Documentation

rpmTagClass rpmTagGetClass ( rpmTagVal  tag)

Return tag data class from value.

Parameters
tagtag value
Returns
tag data class, RPM_NULL_CLASS on not found.
const char* rpmTagGetName ( rpmTagVal  tag)

Return tag name from value.

Parameters
tagtag value
Returns
tag name, "(unknown)" on not found
int rpmTagGetNames ( rpmtd  tagnames,
int  fullname 
)

Return known rpm tag names, sorted by name.

Parameters
[out]tagnamestag container of string array type
fullnamereturn short or full name
Returns
number of tag names, 0 on error
rpmTagReturnType rpmTagGetReturnType ( rpmTagVal  tag)

Return tag data type from value.

Parameters
tagtag value
Returns
tag data return type, RPM_NULL_TYPE on not found.
rpmTagType rpmTagGetTagType ( rpmTagVal  tag)

Return tag data type from value.

Parameters
tagtag value
Returns
tag data type, RPM_NULL_TYPE on not found.
rpmTagType rpmTagGetType ( rpmTagVal  tag)

Return tag data type from value.

Parameters
tagtag value
Returns
tag data type + return type, RPM_NULL_TYPE on not found.
rpmTagVal rpmTagGetValue ( const char *  tagstr)

Return tag value from name.

Parameters
tagstrname of tag
Returns
tag value, RPMTAG_NOT_FOUND on not found
rpmTagClass rpmTagTypeGetClass ( rpmTagType  type)

Return data class of type

Parameters
typetag type
Returns
data class, RPM_NULL_CLASS on unknown.