rpm: RPM Tag API.

rpm 4.20.1 The RPM Package Manager

Loading...
Searching...
No Matches
Files | Typedefs | Enumerations | Functions
RPM Tag API.
Querying package headers:

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_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_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_PAYLOADDIGEST = 5092 , RPMTAG_PAYLOADDIGESTALGO = 5093 , RPMTAG_AUTOINSTALLED = 5094 , RPMTAG_IDENTITY = 5095 , RPMTAG_MODULARITYLABEL = 5096 , RPMTAG_PAYLOADDIGESTALT = 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_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

## ◆ rpmDbiTag

typedef enum rpmDbiTag_e rpmDbiTag

Rpm database index tags.

## ◆ rpmTag

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

## ◆ rpmTagClass

typedef enum rpmTagClass_e rpmTagClass

The classes of data in tags from headers.

## Enumeration Type Documentation

## ◆ rpmDbiTag_e

enum rpmDbiTag_e

Rpm database index tags.

## ◆ rpmTag_e

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_HEADERIMMUTABLE | Original image.
RPMTAG_HEADERREGIONS | Regions.
RPMTAG_FIRSTFREE_TAG | internal

## ◆ rpmTagClass_e

enum rpmTagClass_e

The classes of data in tags from headers.

## Function Documentation

## ◆ rpmTagGetClass()

rpmTagClass rpmTagGetClass | ( | rpmTagVal | tag | ) |

Return tag data class from value.

Parameters

  tag | tag value

Returns
  tag data class, RPM_NULL_CLASS on not found.

## ◆ rpmTagGetName()

const char * rpmTagGetName | ( | rpmTagVal | tag | ) |

Return tag name from value.

Parameters

  tag | tag value

Returns
  tag name, "(unknown)" on not found

## ◆ rpmTagGetNames()

int rpmTagGetNames | ( | rpmtd | tagnames,
|  | int | fullname )

Return known rpm tag names, sorted by name.

Parameters

  [out] | tagnames | tag container of string array type
  | fullname | return short or full name

Returns
  number of tag names, 0 on error

## ◆ rpmTagGetReturnType()

rpmTagReturnType rpmTagGetReturnType | ( | rpmTagVal | tag | ) |

Return tag data type from value.

Parameters

  tag | tag value

Returns
  tag data return type, RPM_NULL_TYPE on not found.

## ◆ rpmTagGetTagType()

rpmTagType rpmTagGetTagType | ( | rpmTagVal | tag | ) |

Return tag data type from value.

Parameters

  tag | tag value

Returns
  tag data type, RPM_NULL_TYPE on not found.

## ◆ rpmTagGetType()

rpmTagType rpmTagGetType | ( | rpmTagVal | tag | ) |

Return tag data type from value.

Parameters

  tag | tag value

Returns
  tag data type + return type, RPM_NULL_TYPE on not found.

## ◆ rpmTagGetValue()

rpmTagVal rpmTagGetValue | ( | const char * | tagstr | ) |

Return tag value from name.

Parameters

  tagstr | name of tag

Returns
  tag value, RPMTAG_NOT_FOUND on not found

## ◆ rpmTagTypeGetClass()

rpmTagClass rpmTagTypeGetClass | ( | rpmTagType | type | ) |

Return data class of type

Parameters

  type | tag type

Returns
  data class, RPM_NULL_CLASS on unknown.