rpm  4.8.1
Defines | Typedefs | Enumerations | Functions
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 /* Installed package headers. */
 Pseudo-tags used by the rpmdb and rpmgi iterator API's.
#define RPMDBI_DEPENDS   1 /* Dependency resolution cache. */
#define RPMDBI_LABEL   2 /* Fingerprint search marker. */
#define RPMDBI_ADDED   3 /* Added package headers. */
#define RPMDBI_REMOVED   4 /* Removed package headers. */
#define RPMDBI_AVAILABLE   5 /* Available package headers. */
#define RPMDBI_HDLIST   6 /* (rpmgi) Header list. */
#define RPMDBI_ARGLIST   7 /* (rpmgi) Argument list. */
#define RPMDBI_FTSWALK   8 /* (rpmgi) File tree walk. */
#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 /* x */
#define RPMTAG_HDRID   RPMTAG_SHA1HEADER /* s */
#define RPMTAG_N   RPMTAG_NAME /* s */
#define RPMTAG_V   RPMTAG_VERSION /* s */
#define RPMTAG_R   RPMTAG_RELEASE /* s */
#define RPMTAG_E   RPMTAG_EPOCH /* i */
#define RPMTAG_FILEMD5S   RPMTAG_FILEDIGESTS /* s[] */
#define RPMTAG_PROVIDES   RPMTAG_PROVIDENAME /* s[] */
#define RPMTAG_P   RPMTAG_PROVIDENAME /* s[] */
#define RPMTAG_REQUIRES   RPMTAG_REQUIRENAME /* s[] */
#define RPMTAG_CONFLICTS   RPMTAG_CONFLICTNAME /* s[] */
#define RPMTAG_C   RPMTAG_CONFLICTNAME /* s[] */
#define RPMTAG_OBSOLETES   RPMTAG_OBSOLETENAME /* s[] */
#define RPMTAG_O   RPMTAG_OBSOLETENAME /* s[] */
#define RPMTAG_SUGGESTS   RPMTAG_SUGGESTSNAME /* s[] (unimplemented) */
#define RPMTAG_ENHANCES   RPMTAG_ENHANCESNAME /* s[] (unimplemented) */
#define RPMTAG_SVNID   RPMTAG_CVSID /* s (unimplemented) */
#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 rpmTagClass_e rpmTagClass
 The classes 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
}
 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
 The basic types of data in tags from headers. More...
enum  rpmTagClass_e { RPM_NULL_CLASS = 0, RPM_NUMERIC_CLASS = 1, RPM_STRING_CLASS = 2, RPM_BINARY_CLASS = 3 }
 The classes 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.
rpmTagClass rpmTagGetClass (rpmTag tag)
 Return tag data class from value.
rpmTag rpmTagGetValue (const char *tagstr)
 Return tag value from name.
rpmTagClass rpmTagTypeGetClass (rpmTagType type)
 Return data class of type.
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

Definition at line 340 of file rpmtag.h.

#define RPM_MASK_TYPE   0x0000ffff

Definition at line 341 of file rpmtag.h.

#define RPM_MAX_TYPE   9

Definition at line 339 of file rpmtag.h.

#define RPM_MIN_TYPE   0

Definition at line 328 of file rpmtag.h.

#define RPMDBI_ADDED   3 /* Added package headers. */

Definition at line 16 of file rpmtag.h.

#define RPMDBI_ARGLIST   7 /* (rpmgi) Argument list. */

Definition at line 20 of file rpmtag.h.

#define RPMDBI_AVAILABLE   5 /* Available package headers. */

Definition at line 18 of file rpmtag.h.

#define RPMDBI_DEPENDS   1 /* Dependency resolution cache. */

Definition at line 14 of file rpmtag.h.

#define RPMDBI_FTSWALK   8 /* (rpmgi) File tree walk. */

Definition at line 21 of file rpmtag.h.

#define RPMDBI_HDLIST   6 /* (rpmgi) Header list. */

Definition at line 19 of file rpmtag.h.

#define RPMDBI_LABEL   2 /* Fingerprint search marker. */

Definition at line 15 of file rpmtag.h.

#define RPMDBI_PACKAGES   0 /* Installed package headers. */

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

Definition at line 13 of file rpmtag.h.

#define RPMDBI_REMOVED   4 /* Removed package headers. */

Definition at line 17 of file rpmtag.h.

#define RPMTAG_C   RPMTAG_CONFLICTNAME /* s[] */

Definition at line 136 of file rpmtag.h.

#define RPMTAG_CONFLICTS   RPMTAG_CONFLICTNAME /* s[] */

Definition at line 135 of file rpmtag.h.

#define RPMTAG_E   RPMTAG_EPOCH /* i */

Definition at line 79 of file rpmtag.h.

#define RPMTAG_ENHANCES   RPMTAG_ENHANCESNAME /* s[] (unimplemented) */

Definition at line 236 of file rpmtag.h.

#define RPMTAG_EXTERNAL_TAG   1000000

Definition at line 299 of file rpmtag.h.

#define RPMTAG_FILEMD5S   RPMTAG_FILEDIGESTS /* s[] */

Definition at line 112 of file rpmtag.h.

#define RPMTAG_HDRID   RPMTAG_SHA1HEADER /* s */

Definition at line 68 of file rpmtag.h.

#define RPMTAG_N   RPMTAG_NAME /* s */

Definition at line 73 of file rpmtag.h.

#define RPMTAG_NOT_FOUND   -1

Definition at line 300 of file rpmtag.h.

#define RPMTAG_O   RPMTAG_OBSOLETENAME /* s[] */

Definition at line 165 of file rpmtag.h.

#define RPMTAG_OBSOLETES   RPMTAG_OBSOLETENAME /* s[] */

Definition at line 164 of file rpmtag.h.

#define RPMTAG_P   RPMTAG_PROVIDENAME /* s[] */

Definition at line 126 of file rpmtag.h.

#define RPMTAG_PKGID   RPMTAG_SIGMD5 /* x */

Definition at line 58 of file rpmtag.h.

#define RPMTAG_PROVIDES   RPMTAG_PROVIDENAME /* s[] */

Definition at line 125 of file rpmtag.h.

#define RPMTAG_R   RPMTAG_RELEASE /* s */

Definition at line 77 of file rpmtag.h.

#define RPMTAG_REQUIRES   RPMTAG_REQUIRENAME /* s[] */

Definition at line 129 of file rpmtag.h.

#define RPMTAG_SUGGESTS   RPMTAG_SUGGESTSNAME /* s[] (unimplemented) */

Definition at line 232 of file rpmtag.h.

#define RPMTAG_SVNID   RPMTAG_CVSID /* s (unimplemented) */

Definition at line 241 of file rpmtag.h.

#define RPMTAG_V   RPMTAG_VERSION /* s */

Definition at line 75 of file rpmtag.h.