# rpmio/rpmpgp.h File Reference

OpenPGP constants and structures from RFC-2440. More...

`#include <string.h>`
`#include <popt.h>`

Include dependency graph for rpmpgp.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | pgpValTbl_s
struct | pgpPktPubkey_s
| 5.1. More...
struct | pgpPktSigV3_s
| 5.2.2. More...
struct | pgpPktSigV4_s
| 5.2.3. More...
union | pgpPktSig_u
| 5.2. More...
struct | pgpPktSymkey_s
| 5.3. More...
struct | pgpPktOnepass_s
| 5.4. More...
struct | pgpPktKeyV3_s
| 5.5.1. More...
struct | pgpPktKeyV4_s
| The version 4 format is similar to the version 3 format except for the absence of a validity period. More...
union | pgpPktKey_u
| 5.5.3. More...
struct | pgpPktCdata_s
| 5.6. More...
struct | pgpPktEdata_s
| 5.7. More...
struct | pgpPktLdata_s
| 5.8. More...
struct | pgpPktTrust_s
| 5.10. More...
struct | pgpPktUid_s
| 5.11. More...
union | pgpPktPre_u
struct | pgpImplVecs_s

## Defines

#define | _RPMVSF_NODIGESTS
#define | _RPMVSF_NOSIGNATURES
#define | _RPMVSF_NOHEADER
#define | _RPMVSF_NOPAYLOAD
#define | PGPARMOR_ERROR PGPARMOR_ERR_NO_BEGIN_PGP
#define | pgpDigUnlink(_dig, _msg) XpgpDigUnlink(_dig, _msg, __FILE__, __LINE__)
#define | pgpDigLink(_dig, _msg) XpgpDigLink(_dig, _msg, __FILE__, __LINE__)
#define | CRC24_INIT 0xb704ce
#define | CRC24_POLY 0x1864cfb

## Typedefs

typedef struct DIGEST_CTX_s * | DIGEST_CTX
typedef struct pgpPkt_s * | pgpPkt
typedef struct pgpDig_s * | pgpDig
typedef struct pgpDigParams_s * | pgpDigParams
typedef enum pgpVSFlags_e | pgpVSFlags
| Bit(s) to control digest and signature verification.
typedef struct pgpValTbl_s * | pgpValTbl
typedef enum pgpTag_e | pgpTag
| 4.3.
typedef struct pgpPktPubkey_s | pgpPktPubkey
| 5.1.
typedef enum pgpSigType_e | pgpSigType
| 5.2.1.
typedef enum pgpPubkeyAlgo_e | pgpPubkeyAlgo
| 9.1.
typedef enum pgpSymkeyAlgo_e | pgpSymkeyAlgo
| 9.2.
typedef enum pgpCompressAlgo_e | pgpCompressAlgo
| 9.3.
typedef enum pgpHashAlgo_e | pgpHashAlgo
| 9.4.
typedef struct pgpPktSigV3_s * | pgpPktSigV3
| 5.2.2.
typedef struct pgpPktSigV4_s * | pgpPktSigV4
| 5.2.3.
typedef enum pgpSubType_e | pgpSubType
| 5.2.3.1.
typedef union pgpPktSig_u * | pgpPktSig
| 5.2.
typedef struct pgpPktSymkey_s | pgpPktSymkey
| 5.3.
typedef struct pgpPktOnepass_s * | pgpPktOnepass
| 5.4.
typedef struct pgpPktKeyV3_s * | pgpPktKeyV3
| 5.5.1.
typedef struct pgpPktKeyV4_s * | pgpPktKeyV4
| The version 4 format is similar to the version 3 format except for the absence of a validity period.
typedef union pgpPktKey_u | pgpPktKey
| 5.5.3.
typedef struct pgpPktCdata_s | pgpPktCdata
| 5.6.
typedef struct pgpPktEdata_s | pgpPktEdata
| 5.7.
typedef struct pgpPktLdata_s | pgpPktLdata
| 5.8.
typedef struct pgpPktTrust_s | pgpPktTrust
| 5.10.
typedef struct pgpPktUid_s | pgpPktUid
| 5.11.
typedef enum pgpArmor_e | pgpArmor
typedef enum pgpArmorKey_e | pgpArmorKey
typedef enum rpmDigestFlags_e | rpmDigestFlags
| Bit(s) to control digest operation.
typedef int(* | pgpImplSet_t )(DIGEST_CTX ctx, pgpDig dig, pgpDigParams sigp)
typedef int(* | pgpImplVerify_t )(pgpDig dig)
typedef int(* | pgpImplMpiItem_t )(const char *pre, pgpDig dig, int itemno, const uint8_t *p, const uint8_t *pend)
typedef void(* | pgpImplClean_t )(void *impl)
typedef void *(* | pgpImplFree_t )(void *impl)
typedef void *(* | pgpImplInit_t )(void)
typedef struct pgpImplVecs_s | pgpImplVecs_t

## Enumerations

enum | pgpVSFlags_e { RPMVSF_DEFAULT = 0, RPMVSF_NOHDRCHK = (1 << 0), RPMVSF_NEEDPAYLOAD = (1 << 1), RPMVSF_NOSHA1HEADER = (1 << 8), RPMVSF_NOMD5HEADER = (1 << 9), RPMVSF_NODSAHEADER = (1 << 10), RPMVSF_NORSAHEADER = (1 << 11), RPMVSF_NOSHA1 = (1 << 16), RPMVSF_NOMD5 = (1 << 17), RPMVSF_NODSA = (1 << 18), RPMVSF_NORSA = (1 << 19) }
| Bit(s) to control digest and signature verification. More...

enum

pgpTag_e {
PGPTAG_RESERVED = 0, PGPTAG_PUBLIC_SESSION_KEY = 1, PGPTAG_SIGNATURE = 2, PGPTAG_SYMMETRIC_SESSION_KEY = 3,
PGPTAG_ONEPASS_SIGNATURE = 4, PGPTAG_SECRET_KEY = 5, PGPTAG_PUBLIC_KEY = 6, PGPTAG_SECRET_SUBKEY = 7,
PGPTAG_COMPRESSED_DATA = 8, PGPTAG_SYMMETRIC_DATA = 9, PGPTAG_MARKER = 10, PGPTAG_LITERAL_DATA = 11,
PGPTAG_TRUST = 12, PGPTAG_USER_ID = 13, PGPTAG_PUBLIC_SUBKEY = 14, PGPTAG_COMMENT_OLD = 16,
PGPTAG_PHOTOID = 17, PGPTAG_ENCRYPTED_MDC = 18, PGPTAG_MDC = 19, PGPTAG_PRIVATE_60 = 60,
PGPTAG_COMMENT = 61, PGPTAG_PRIVATE_62 = 62, PGPTAG_CONTROL = 63
}

| 4.3. More...

enum

pgpSigType_e {
PGPSIGTYPE_BINARY = 0x00, PGPSIGTYPE_TEXT = 0x01, PGPSIGTYPE_STANDALONE = 0x02, PGPSIGTYPE_GENERIC_CERT = 0x10,
PGPSIGTYPE_PERSONA_CERT = 0x11, PGPSIGTYPE_CASUAL_CERT = 0x12, PGPSIGTYPE_POSITIVE_CERT = 0x13, PGPSIGTYPE_SUBKEY_BINDING = 0x18,
PGPSIGTYPE_SIGNED_KEY = 0x1F, PGPSIGTYPE_KEY_REVOKE = 0x20, PGPSIGTYPE_SUBKEY_REVOKE = 0x28, PGPSIGTYPE_CERT_REVOKE = 0x30,
PGPSIGTYPE_TIMESTAMP = 0x40
}

| 5.2.1. More...
enum | pgpPubkeyAlgo_e { PGPPUBKEYALGO_RSA = 1, PGPPUBKEYALGO_RSA_ENCRYPT = 2, PGPPUBKEYALGO_RSA_SIGN = 3, PGPPUBKEYALGO_ELGAMAL_ENCRYPT = 16, PGPPUBKEYALGO_DSA = 17, PGPPUBKEYALGO_EC = 18, PGPPUBKEYALGO_ECDSA = 19, PGPPUBKEYALGO_ELGAMAL = 20, PGPPUBKEYALGO_DH = 21 }
| 9.1. More...
enum | pgpSymkeyAlgo_e { PGPSYMKEYALGO_PLAINTEXT = 0, PGPSYMKEYALGO_IDEA = 1, PGPSYMKEYALGO_TRIPLE_DES = 2, PGPSYMKEYALGO_CAST5 = 3, PGPSYMKEYALGO_BLOWFISH = 4, PGPSYMKEYALGO_SAFER = 5, PGPSYMKEYALGO_DES_SK = 6, PGPSYMKEYALGO_AES_128 = 7, PGPSYMKEYALGO_AES_192 = 8, PGPSYMKEYALGO_AES_256 = 9, PGPSYMKEYALGO_TWOFISH = 10, PGPSYMKEYALGO_NOENCRYPT = 110 }
| 9.2. More...
enum | pgpCompressAlgo_e { PGPCOMPRESSALGO_NONE = 0, PGPCOMPRESSALGO_ZIP = 1, PGPCOMPRESSALGO_ZLIB = 2, PGPCOMPRESSALGO_BZIP2 = 3 }
| 9.3. More...

enum

pgpHashAlgo_e {
PGPHASHALGO_MD5 = 1, PGPHASHALGO_SHA1 = 2, PGPHASHALGO_RIPEMD160 = 3, PGPHASHALGO_MD2 = 5,
PGPHASHALGO_TIGER192 = 6, PGPHASHALGO_HAVAL_5_160 = 7, PGPHASHALGO_SHA256 = 8, PGPHASHALGO_SHA384 = 9,
PGPHASHALGO_SHA512 = 10, PGPHASHALGO_MD4 = 104, PGPHASHALGO_RIPEMD128 = 105, PGPHASHALGO_CRC32 = 106,
PGPHASHALGO_ADLER32 = 107, PGPHASHALGO_CRC64 = 108, PGPHASHALGO_JLU32 = 109, PGPHASHALGO_SHA224 = 110,
PGPHASHALGO_RIPEMD256 = 111, PGPHASHALGO_RIPEMD320 = 112, PGPHASHALGO_SALSA10 = 113, PGPHASHALGO_SALSA20 = 114
}

| 9.4. More...

enum

pgpSubType_e {
PGPSUBTYPE_NONE = 0, PGPSUBTYPE_SIG_CREATE_TIME = 2, PGPSUBTYPE_SIG_EXPIRE_TIME = 3, PGPSUBTYPE_EXPORTABLE_CERT = 4,
PGPSUBTYPE_TRUST_SIG = 5, PGPSUBTYPE_REGEX = 6, PGPSUBTYPE_REVOCABLE = 7, PGPSUBTYPE_KEY_EXPIRE_TIME = 9,
PGPSUBTYPE_ARR = 10, PGPSUBTYPE_PREFER_SYMKEY = 11, PGPSUBTYPE_REVOKE_KEY = 12, PGPSUBTYPE_ISSUER_KEYID = 16,
PGPSUBTYPE_NOTATION = 20, PGPSUBTYPE_PREFER_HASH = 21, PGPSUBTYPE_PREFER_COMPRESS = 22, PGPSUBTYPE_KEYSERVER_PREFERS = 23,
PGPSUBTYPE_PREFER_KEYSERVER = 24, PGPSUBTYPE_PRIMARY_USERID = 25, PGPSUBTYPE_POLICY_URL = 26, PGPSUBTYPE_KEY_FLAGS = 27,
PGPSUBTYPE_SIGNER_USERID = 28, PGPSUBTYPE_REVOKE_REASON = 29, PGPSUBTYPE_FEATURES = 30, PGPSUBTYPE_EMBEDDED_SIG = 32,
PGPSUBTYPE_INTERNAL_100 = 100, PGPSUBTYPE_INTERNAL_101 = 101, PGPSUBTYPE_INTERNAL_102 = 102, PGPSUBTYPE_INTERNAL_103 = 103,
PGPSUBTYPE_INTERNAL_104 = 104, PGPSUBTYPE_INTERNAL_105 = 105, PGPSUBTYPE_INTERNAL_106 = 106, PGPSUBTYPE_INTERNAL_107 = 107,
PGPSUBTYPE_INTERNAL_108 = 108, PGPSUBTYPE_INTERNAL_109 = 109, PGPSUBTYPE_INTERNAL_110 = 110, PGPSUBTYPE_CRITICAL = 128
}

| 5.2.3.1. More...

enum

pgpArmor_e {
PGPARMOR_ERR_CRC_CHECK = -7, PGPARMOR_ERR_BODY_DECODE = -6, PGPARMOR_ERR_CRC_DECODE = -5, PGPARMOR_ERR_NO_END_PGP = -4,
PGPARMOR_ERR_UNKNOWN_PREAMBLE_TAG = -3, PGPARMOR_ERR_UNKNOWN_ARMOR_TYPE = -2, PGPARMOR_ERR_NO_BEGIN_PGP = -1, PGPARMOR_NONE = 0,
PGPARMOR_MESSAGE = 1, PGPARMOR_PUBKEY = 2, PGPARMOR_SIGNATURE = 3, PGPARMOR_SIGNED_MESSAGE = 4,
PGPARMOR_FILE = 5, PGPARMOR_PRIVKEY = 6, PGPARMOR_SECKEY = 7
}

enum | pgpArmorKey_e { PGPARMORKEY_VERSION = 1, PGPARMORKEY_COMMENT = 2, PGPARMORKEY_MESSAGEID = 3, PGPARMORKEY_HASH = 4, PGPARMORKEY_CHARSET = 5 }
enum | rpmDigestFlags_e { RPMDIGEST_NONE = 0 }
| Bit(s) to control digest operation. More...

## Functions

static unsigned int | pgpGrab (const uint8_t *s, size_t nbytes)
| Return (native-endian) integer from big-endian representation.
static int | pgpLen (const uint8_t *s, unsigned int *lenp)
| Return length of an OpenPGP packet.
static unsigned int | pgpMpiBits (const uint8_t *p)
| Return no.
static unsigned int | pgpMpiLen (const uint8_t *p)
| Return no.
static char * | pgpHexCvt (char *t, const uint8_t *s, size_t nbytes)
| Convert to hex.
static char * | pgpHexStr (const uint8_t *p, size_t plen)
| Return hex formatted representation of bytes.
static const char * | pgpMpiStr (const uint8_t *p)
| Return hex formatted representation of a multiprecision integer.
static const char * | pgpValStr (pgpValTbl vs, uint8_t val)
| Return string representation of am OpenPGP value.
static int | pgpValTok (pgpValTbl vs, const char *s, const char *se)
| Return value of an OpenPGP string.
void | pgpPrtVal (const char *pre, pgpValTbl vs, uint8_t val)
| Print an OpenPGP value.
int | pgpPrtSubType (const uint8_t *h, size_t hlen, pgpSigType sigtype)
| Print/parse an OpenPGP subtype packet.
int | pgpPrtSig (const pgpPkt pp)
| Print/parse an OpenPGP signature packet.
int | pgpPrtKey (const pgpPkt pp)
| Print/parse an OpenPGP key packet.
int | pgpPrtUserID (const pgpPkt pp)
| Print/parse an OpenPGP userid packet.
int | pgpPrtComment (const pgpPkt pp)
| Print/parse an OpenPGP comment packet.
int | pgpPubkeyFingerprint (const uint8_t *pkt, size_t pktlen, uint8_t *keyid)
| Calculate OpenPGP public key fingerprint.
int | pgpExtractPubkeyFingerprint (const char *b64pkt, uint8_t *keyid)
| Extract OpenPGP public key fingerprint from base64 encoded packet.
int | pgpPktLen (const uint8_t *pkt, size_t pleft, pgpPkt pp)
| Return lenth of a OpenPGP packet.
int | pgpPrtPkt (const uint8_t *pkt, size_t pleft)
| Print/parse next OpenPGP packet.
int | pgpPrtPkts (const uint8_t *pkts, size_t pktlen, pgpDig dig, int printing)
| Print/parse a OpenPGP packet(s).
pgpArmor | pgpReadPkts (const char *fn, const uint8_t **pkt, size_t *pktlen)
| Parse armored OpenPGP packets from a file.
char * | pgpArmorWrap (int atype, const unsigned char *s, size_t ns)
| Wrap a OpenPGP packets in ascii armor for transport.
int | pgpHashAlgoStringToNumber (const char *name, size_t name_len)
| Convert a hash algorithm <name> to the internal PGPHASHALGO_<name> number.
pgpDig | pgpDigUnlink (pgpDig dig, const char *msg)
| Unreference a signature parameters instance.
pgpDig | XpgpDigUnlink (pgpDig dig, const char *msg, const char *fn, unsigned ln)
pgpDig | pgpDigLink (pgpDig dig, const char *msg)
| Reference a signature parameters instance.
pgpDig | XpgpDigLink (pgpDig dig, const char *msg, const char *fn, unsigned ln)
pgpDig | pgpDigFree (pgpDig dig)
| Destroy a container for parsed OpenPGP packates.
pgpDig | pgpDigNew (pgpVSFlags vsflags)
| Create a container for parsed OpenPGP packates.
void | pgpDigClean (pgpDig dig)
| Release (malloc'd) data from container.
pgpDigParams | pgpGetPubkey (const pgpDig dig)
| Return OpenPGP pubkey parameters.
pgpDigParams | pgpGetSignature (const pgpDig dig)
| Return OpenPGP signature parameters.
uint32_t | pgpGetSigtag (const pgpDig dig)
| Get signature tag.
uint32_t | pgpGetSigtype (const pgpDig dig)
| Get signature tag type.
const void * | pgpGetSig (const pgpDig dig)
| Get signature tag data, i.e.
uint32_t | pgpGetSiglen (const pgpDig dig)
| Get signature tag data length, i.e.
int | pgpSetSig (pgpDig dig, uint32_t sigtag, uint32_t sigtype, const void *sig, uint32_t siglen)
| Set signature tag info, i.e.
void * | pgpStatsAccumulator (pgpDig dig, int opx)
| Return pgpDig container accumulator structure.
int | pgpSetFindPubkey (pgpDig dig, int(*findPubkey)(void *ts, void *dig), void *_ts)
| Set find pubkey vector.
int | pgpFindPubkey (pgpDig dig)
| Call find pubkey vector.
static int | pgpIsPkt (const uint8_t *p, pgpTag *tagp)
| Is buffer at beginning of an OpenPGP packet?
static unsigned int | pgpCRC (const uint8_t *octets, size_t len)
| Return CRC of a buffer.
DIGEST_CTX | rpmDigestDup (DIGEST_CTX octx)
| Duplicate a digest context.
DIGEST_CTX | rpmDigestInit (pgpHashAlgo hashalgo, rpmDigestFlags flags)
| Initialize digest.
int | rpmDigestUpdate (DIGEST_CTX ctx, const void *data, size_t len)
| Update context with next plain text buffer.
int | rpmDigestFinal (DIGEST_CTX ctx, void *datap, size_t *lenp, int asAscii)
| Return digest and destroy context.
static int | pgpImplSetRSA (DIGEST_CTX ctx, pgpDig dig, pgpDigParams sigp)
static int | pgpImplVerifyRSA (pgpDig dig)
static int | pgpImplSetDSA (DIGEST_CTX ctx, pgpDig dig, pgpDigParams sigp)
static int | pgpImplVerifyDSA (pgpDig dig)
static int | pgpImplMpiItem (const char *pre, pgpDig dig, int itemno, const uint8_t *p, const uint8_t *pend)
static void | pgpImplClean (void *impl)
static void * | pgpImplFree (void *impl)
static void * | pgpImplInit (void)

## Variables

struct pgpValTbl_s | pgpTagTbl []
struct pgpValTbl_s | pgpSigTypeTbl []
struct pgpValTbl_s | pgpPubkeyTbl []
struct pgpValTbl_s | pgpSymkeyTbl []
| Symmetric key (string, value) pairs.
struct pgpValTbl_s | pgpCompressionTbl []
| Compression (string, value) pairs.
struct pgpValTbl_s | pgpHashTbl []
| Hash (string, value) pairs.
struct pgpValTbl_s | pgpSubTypeTbl []
| Subtype (string, value) pairs.
struct pgpValTbl_s | pgpArmorTbl []
| Armor (string, value) pairs.
struct pgpValTbl_s | pgpArmorKeyTbl []
| Armor key (string, value) pairs.
pgpHashAlgo | rpmDigestHashAlgo
struct poptOption | rpmDigestPoptTable []
| Digest options using popt.
pgpVSFlags | pgpDigVSFlags
| Disabler bits(s) for signature/digest checking.
pgpImplVecs_t * | pgpImplVecs

## Detailed Description

OpenPGP constants and structures from RFC-2440.

Text from RFC-2440 in comments is Copyright (C) The Internet Society (1998). All Rights Reserved.

Definition in file rpmpgp.h.

## Define Documentation

#define _RPMVSF_NODIGESTS

Value:

    ( RPMVSF_NOSHA1HEADER | \
        RPMVSF_NOMD5HEADER |        \
        RPMVSF_NOSHA1 |             \
        RPMVSF_NOMD5 )

Definition at line 52 of file rpmpgp.h.

Referenced by init_rpm(), rpmcliAllArgCallback(), rpmcliInstall(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmRollback(), and rpmtsRollback().

#define _RPMVSF_NOHEADER

Value:

    ( RPMVSF_NOSHA1HEADER | \
        RPMVSF_NOMD5HEADER |        \
        RPMVSF_NODSAHEADER |        \
        RPMVSF_NORSAHEADER )

Definition at line 64 of file rpmpgp.h.

Referenced by init_rpm().

#define _RPMVSF_NOPAYLOAD

Value:

    ( RPMVSF_NOSHA1 |               \
        RPMVSF_NOMD5 |              \
        RPMVSF_NODSA |              \
        RPMVSF_NORSA )

Definition at line 70 of file rpmpgp.h.

Referenced by init_rpm().

#define _RPMVSF_NOSIGNATURES

Value:

    ( RPMVSF_NODSAHEADER |  \
        RPMVSF_NORSAHEADER |        \
        RPMVSF_NODSA |              \
        RPMVSF_NORSA )

Definition at line 58 of file rpmpgp.h.

Referenced by init_rpm(), rpmcliAllArgCallback(), rpmcliInstall(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmRollback(), and rpmtsRollback().

#define CRC24_INIT 0xb704ce

Definition at line 1671 of file rpmpgp.h.

Referenced by pgpCRC().

#define CRC24_POLY 0x1864cfb

Definition at line 1672 of file rpmpgp.h.

Referenced by pgpCRC().

#define PGPARMOR_ERROR PGPARMOR_ERR_NO_BEGIN_PGP

#define pgpDigLink | ( | _dig,
|  | _msg |  | ) | XpgpDigLink(_dig, _msg, __FILE__, __LINE__)

Definition at line 1493 of file rpmpgp.h.

Referenced by fdSetDig(), pgpDigNew(), pgpPrtPkts(), and rpmReadHeader().

#define pgpDigUnlink | ( | _dig,
|  | _msg |  | ) | XpgpDigUnlink(_dig, _msg, __FILE__, __LINE__)

Definition at line 1476 of file rpmpgp.h.

Referenced by pgpDigFree().

## Typedef Documentation

typedef struct pgpDig_s* pgpDig

Definition at line 26 of file rpmpgp.h.

typedef struct pgpDigParams_s* pgpDigParams

Definition at line 30 of file rpmpgp.h.

typedef void(* pgpImplClean_t)(void *impl)

Definition at line 1763 of file rpmpgp.h.

typedef void*(* pgpImplFree_t)(void *impl)

Definition at line 1768 of file rpmpgp.h.

typedef void*(* pgpImplInit_t)(void)

Definition at line 1773 of file rpmpgp.h.

typedef int(* pgpImplMpiItem_t)(const char *pre, pgpDig dig, int itemno, const uint8_t *p,const uint8_t *pend)

Definition at line 1756 of file rpmpgp.h.

typedef int(* pgpImplSet_t)(DIGEST_CTX ctx, pgpDig dig, pgpDigParams sigp)

Definition at line 1746 of file rpmpgp.h.

typedef struct pgpImplVecs_s pgpImplVecs_t

typedef int(* pgpImplVerify_t)(pgpDig dig)

Definition at line 1751 of file rpmpgp.h.

typedef struct pgpValTbl_s * pgpValTbl

## Function Documentation

static void pgpImplClean | ( | void * | impl | ) | `[inline, static]`

Definition at line 1845 of file rpmpgp.h.

References pgpImplVecs_s::_pgpClean.

Referenced by pgpDigClean().

static void* pgpImplFree | ( | void * | impl | ) | `[inline, static]`

Definition at line 1857 of file rpmpgp.h.

References pgpImplVecs_s::_pgpFree.

Referenced by pgpDigFree().

static void* pgpImplInit | ( | void |  | ) | `[inline, static]`

Definition at line 1866 of file rpmpgp.h.

References pgpImplVecs_s::_pgpInit.

Referenced by pgpDigNew().

static int pgpImplMpiItem | ( | const char * | pre,
|  | pgpDig | dig,
|  | int | itemno,
|  | const uint8_t * | p,
|  | const uint8_t * | pend |
| ) |  |  | `[inline, static]`

Definition at line 1835 of file rpmpgp.h.

References pgpImplVecs_s::_pgpMpiItem.

Referenced by pgpPrtPubkeyParams(), and pgpPrtSigParams().

static int pgpImplSetDSA | ( | DIGEST_CTX | ctx,
|  | pgpDig | dig,
|  | pgpDigParams | sigp |
| ) |  |  | `[inline, static]`

Definition at line 1817 of file rpmpgp.h.

References pgpImplVecs_s::_pgpSetDSA.

Referenced by rpmnsProbeSignature(), and verifyDSASignature().

static int pgpImplSetRSA | ( | DIGEST_CTX | ctx,
|  | pgpDig | dig,
|  | pgpDigParams | sigp |
| ) |  |  | `[inline, static]`

Definition at line 1799 of file rpmpgp.h.

References pgpImplVecs_s::_pgpSetRSA.

Referenced by rpmnsProbeSignature(), and verifyRSASignature().

static int pgpImplVerifyDSA | ( | pgpDig | dig | ) | `[inline, static]`

Definition at line 1826 of file rpmpgp.h.

References pgpImplVecs_s::_pgpVerifyDSA.

Referenced by rpmnsProbeSignature(), and verifyDSASignature().

static int pgpImplVerifyRSA | ( | pgpDig | dig | ) | `[inline, static]`

Definition at line 1808 of file rpmpgp.h.

References pgpImplVecs_s::_pgpVerifyRSA.

Referenced by rpmnsProbeSignature(), and verifyRSASignature().

pgpDig XpgpDigLink | ( | pgpDig | dig,
|  | const char * | msg,
|  | const char * | fn,
|  | unsigned | ln |
| ) |  |  |

Todo:
  Remove debugging entry from the ABI.

Definition at line 999 of file rpmpgp.c.

References _pgp_debug.

pgpDig XpgpDigUnlink | ( | pgpDig | dig,
|  | const char * | msg,
|  | const char * | fn,
|  | unsigned | ln |
| ) |  |  |

Todo:
  Remove debugging entry from the ABI.

Definition at line 988 of file rpmpgp.c.

References _pgp_debug.

## Variable Documentation

pgpVSFlags pgpDigVSFlags

Disabler bits(s) for signature/digest checking.

Definition at line 986 of file rpmpgp.c.

Referenced by headerCheck(), pgpDigNew(), rpmcliAllArgCallback(), rpmReadPackageFile(), rpmtsSetVSFlags(), and rpmtsVSFlags().

pgpImplVecs_t* pgpImplVecs

Definition at line 26 of file rpmpgp.c.

Referenced by rpmcliAllArgCallback().