Main Page Modules Data Structures File List Data Fields Globals Related Pages

# rpmio/rpmpgp.c File Reference

Routines to handle RFC-2440 detached signatures. More...

`#include "system.h"`
`#include "rpmio_internal.h"`
`#include "debug.h"`

Go to the source code of this file.

## Defines

#define | TOKEQ(_s, _tok) (!strncmp((_s), (_tok), sizeof(_tok)-1))

## Functions

void * | _free (const void *p)
| Wrapper to free(3), hides const compilation noise, permit NULL, return NULL. More...
void | pgpPrtNL (void)
void | pgpPrtInt (const char *pre, int i)
void | pgpPrtStr (const char *pre, const char *s)
void | pgpPrtHex (const char *pre, const byte *p, unsigned int plen)
void | pgpPrtVal (const char *pre, pgpValTbl vs, byte val)
| Print an OpenPGP value. More...
const char * | pgpMpiHex (const byte *p)
int | pgpHexSet (const char *pre, int lbits, mp32number *mpn, const byte *p, const byte *pend)
int | pgpPrtSubType (const byte *h, unsigned int hlen, pgpSigType sigtype)
| Print/parse an OpenPGP subtype packet. More...
int | pgpPrtSigParams (pgpTag tag, byte pubkey_algo, byte sigtype, const byte *p, const byte *h, unsigned int hlen)
int | pgpPrtSig (pgpTag tag, const byte *h, unsigned int hlen)
| Print/parse an OpenPGP signature packet. More...
const byte * | pgpPrtPubkeyParams (byte pubkey_algo, const byte *p, const byte *h, unsigned int hlen)
const byte * | pgpPrtSeckeyParams (byte pubkey_algo, const byte *p, const byte *h, unsigned int hlen)
int | pgpPrtKey (pgpTag tag, const byte *h, unsigned int hlen)
| Print/parse an OpenPGP key packet. More...
int | pgpPrtUserID (pgpTag tag, const byte *h, unsigned int hlen)
| Print/parse an OpenPGP userid packet. More...
int | pgpPrtComment (pgpTag tag, const byte *h, unsigned int hlen)
| Print/parse an OpenPGP comment packet. More...
int | pgpPrtPkt (const byte *pkt, unsigned int pleft)
| Print/parse next OpenPGP packet. More...
pgpDig | pgpNewDig (void)
| Create a container for parsed OpenPGP packates. More...
void | pgpCleanDig (pgpDig dig)
| Release (malloc'd) data from container. More...
pgpDig | pgpFreeDig (pgpDig dig)
| Destroy a container for parsed OpenPGP packates. More...
int | pgpPrtPkts (const byte *pkts, unsigned int pktlen, pgpDig dig, int printing)
| Print/parse a OpenPGP packet(s). More...
pgpArmor | pgpReadPkts (const char *fn, const byte **pkt, size_t *pktlen)
| Parse armored OpenPGP packets from a file. More...

## Variables

int | _debug = 0
int | _print = 0
pgpDig | _dig = NULL
pgpDigParams | _digp = NULL
pgpValTbl_s | pgpSigTypeTbl []
pgpValTbl_s | pgpPubkeyTbl []
pgpValTbl_s | pgpSymkeyTbl []
| Symmetric key (string, value) pairs. More...
pgpValTbl_s | pgpCompressionTbl []
| Compression (string, value) pairs. More...
pgpValTbl_s | pgpHashTbl []
| Hash (string, value) pairs. More...
pgpValTbl_s | pgpKeyServerPrefsTbl []
pgpValTbl_s | pgpSubTypeTbl []
| Subtype (string, value) pairs. More...
pgpValTbl_s | pgpTagTbl []
pgpValTbl_s | pgpArmorTbl []
| Armor (string, value) pairs. More...
pgpValTbl_s | pgpArmorKeyTbl []
| Armor key (string, value) pairs. More...
const char * | pgpSigRSA []
const char * | pgpSigDSA []
const char * | pgpPublicRSA []
const char * | pgpSecretRSA []
const char * | pgpPublicDSA []
const char * | pgpSecretDSA []
const char * | pgpPublicELGAMAL []
const char * | pgpSecretELGAMAL []

## Detailed Description

Routines to handle RFC-2440 detached signatures.

Definition in file rpmpgp.c.

## Define Documentation

#define TOKEQ | ( | _s,
|  | _tok |  | ) | (!strncmp((_s), (_tok), sizeof(_tok)-1))

## Function Documentation

void* _free | ( | const void * | p | ) | `[inline, static]`

Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.

Parameters:

  p | memory to free

Returns:
  NULL always

Definition at line 255 of file rpmpgp.c.

void pgpCleanDig | ( | pgpDig | dig | ) |

Release (malloc'd) data from container.

Parameters:

  dig | container

Definition at line 1034 of file rpmpgp.c.

References _free, pgpDig_s::c, pgpDigParams_s::hash, pgpDig_s::hm, pgpDig_s::m, pgpDig_s::md5, mp32nfree, pgpDigParams_s::params, pgpDig_s::pubkey, pgpDig_s::r, pgpDig_s::rsa_pk, pgpDig_s::rsahm, rsapkFree, pgpDig_s::s, pgpDig_s::sha1, pgpDig_s::signature, and pgpDigParams_s::userid.

pgpDig pgpFreeDig | ( | pgpDig | dig | ) |

Destroy a container for parsed OpenPGP packates.

Parameters:

  dig | container

Returns:
  NULL always

Definition at line 1069 of file rpmpgp.c.

References _free, mp32bfree, mp32nfree, pgpCleanDig, and rpmDigestFinal.

int pgpHexSet | ( | const char * | pre,
|  | int | lbits,
|  | mp32number * | mpn,
|  | const byte * | p,
|  | const byte * | pend
| ) | `[static]`

Returns:
  0 on success

Definition at line 326 of file rpmpgp.c.

References _debug, _free, _print, mp32nsethex, mp32println, pgpMpiBits, pgpMpiHex, and xmalloc.

Referenced by pgpPrtSigParams.

const char* pgpMpiHex | ( | const byte * | p | ) | `[static]`

| Definition at line 313 of file rpmpgp.c. References pgpHexCvt, and pgpMpiLen. Referenced by pgpHexSet, pgpPrtPubkeyParams, and pgpPrtSigParams.

pgpDig pgpNewDig | ( | void |  | ) |

Create a container for parsed OpenPGP packates.

Returns:
  container

Definition at line 1027 of file rpmpgp.c.

References xcalloc.

Referenced by getSignid, pgpsigFormat, rpmcliImportPubkey, rpmdbAdd, rpmdbRemove, and rpmtsDig.

int pgpPrtComment | ( | pgpTag | tag,
|  | const byte * | h,
|  | unsigned int | hlen
| ) |

Print/parse an OpenPGP comment packet.

Parameters:

  tag | packet tag
  h | packet contents
  hlen | packet length (no. of bytes)

Returns:
  0 on success

Definition at line 929 of file rpmpgp.c.

References pgpPrtHex, pgpPrtNL, pgpPrtVal, and pgpTag.

void pgpPrtHex | ( | const char * | pre,
|  | const byte * | p,
|  | unsigned int | plen
| ) | `[static]`

| Definition at line 290 of file rpmpgp.c. References _print, and pgpHexStr. Referenced by pgpPrtComment, pgpPrtPkt, pgpPrtSeckeyParams, pgpPrtSig, and pgpPrtSubType.

void pgpPrtInt | ( | const char * | pre,
|  | int | i
| ) | `[static]`

| Definition at line 270 of file rpmpgp.c. References _print. Referenced by pgpPrtSeckeyParams.

int pgpPrtKey | ( | pgpTag | tag,
|  | const byte * | h,
|  | unsigned int | hlen
| ) |

Print/parse an OpenPGP key packet.

Parameters:

  tag | packet tag
  h | packet contents
  hlen | packet length (no. of bytes)

Returns:
  0 on success

Definition at line 848 of file rpmpgp.c.

References pgpGrab, pgpPrtNL, pgpPrtPubkeyParams, pgpPrtSeckeyParams, pgpPrtVal, pgpTag, PGPTAG_PUBLIC_KEY, PGPTAG_PUBLIC_SUBKEY, pgpPktKeyV4_s::pubkey_algo, pgpDigParams_s::pubkey_algo, pgpPktKeyV3_s::pubkey_algo, pgpDigParams_s::tag, pgpPktKeyV4_s::time, pgpDigParams_s::time, pgpPktKeyV3_s::time, pgpPktKeyV3_s::valid, pgpPktKeyV4_s::version, pgpPktKeyV3_s::version, and pgpDigParams_s::version.

void pgpPrtNL | ( | void |  | ) | `[static]`

| Definition at line 262 of file rpmpgp.c. References _print. Referenced by pgpPrtComment, pgpPrtKey, pgpPrtPkt, pgpPrtPubkeyParams, pgpPrtSeckeyParams, pgpPrtSig, pgpPrtSigParams, pgpPrtSubType, and pgpPrtUserID.

int pgpPrtPkt | ( | const byte * | pkt,
|  | unsigned int | pleft
| ) |

Print/parse next OpenPGP packet.

Parameters:

  pkt | OpenPGP packet
  pleft | no. bytes remaining

Returns:
  -1 on error, otherwise this packet length

Definition at line 955 of file rpmpgp.c.

References pgpGrab, pgpLen, pgpPrtComment, pgpPrtHex, pgpPrtKey, pgpPrtNL, pgpPrtSig, pgpPrtUserID, pgpPrtVal, pgpTag, PGPTAG_COMMENT, PGPTAG_COMMENT_OLD, PGPTAG_COMPRESSED_DATA, PGPTAG_CONTROL, PGPTAG_ENCRYPTED_MDC, PGPTAG_LITERAL_DATA, PGPTAG_MARKER, PGPTAG_MDC, PGPTAG_PHOTOID, PGPTAG_PRIVATE_60, PGPTAG_PRIVATE_62, PGPTAG_PUBLIC_KEY, PGPTAG_PUBLIC_SESSION_KEY, PGPTAG_PUBLIC_SUBKEY, PGPTAG_RESERVED, PGPTAG_SECRET_KEY, PGPTAG_SECRET_SUBKEY, PGPTAG_SIGNATURE, PGPTAG_SYMMETRIC_DATA, PGPTAG_SYMMETRIC_SESSION_KEY, PGPTAG_TRUST, and PGPTAG_USER_ID.

int pgpPrtPkts | ( | const byte * | pkts,
|  | unsigned int | pktlen,
|  | pgpDig | dig,
|  | int | printing
| ) |

Print/parse a OpenPGP packet(s).

Parameters:

  pkts | OpenPGP packet(s)
  pktlen | OpenPGP packet(s) length (no. of bytes)

Return values:

  dig | parsed output of signature/pubkey packet parameters

Parameters:

  printing | should packets be printed?

Returns:
  -1 on error, 0 on success

Definition at line 1122 of file rpmpgp.c.

References _print, pgpPrtPkt, pgpTag, PGPTAG_SIGNATURE, pgpDig_s::pubkey, pgpDig_s::signature, and pgpDigParams_s::tag.

const byte* pgpPrtPubkeyParams | ( | byte | pubkey_algo,
|  | const byte * | p,
|  | const byte * | h,
|  | unsigned int | hlen
| ) | `[static]`

Definition at line 685 of file rpmpgp.c.

References _debug, _print, mp32number::data, rsapk::e, pgpDig_s::g, mp32barrett::modl, mp32bsethex, mp32nsethex, mp32println, rsapk::n, pgpDig_s::p, pgpMpiHex, pgpMpiLen, pgpMpiStr, pgpPrtNL, pgpPrtStr, PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_ELGAMAL_ENCRYPT, PGPPUBKEYALGO_RSA, pgpPublicDSA, pgpPublicELGAMAL, pgpPublicRSA, pgpDig_s::q, pgpDig_s::rsa_pk, pgpDigParams_s::signid, mp32number::size, mp32barrett::size, swapu32, uint32, and pgpDig_s::y.

Referenced by pgpPrtKey.

const byte* pgpPrtSeckeyParams | ( | byte | pubkey_algo,
|  | const byte * | p,
|  | const byte * | h,
|  | unsigned int | hlen
| ) | `[static]`

| Definition at line 774 of file rpmpgp.c. References pgpMpiLen, pgpMpiStr, pgpPrtHex, pgpPrtInt, pgpPrtNL, pgpPrtStr, pgpPrtVal, PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_ELGAMAL_ENCRYPT, PGPPUBKEYALGO_RSA, pgpSecretDSA, pgpSecretELGAMAL, and pgpSecretRSA. Referenced by pgpPrtKey.

int pgpPrtSig | ( | pgpTag | tag,
|  | const byte * | h,
|  | unsigned int | hlen
| ) |

Print/parse an OpenPGP signature packet.

Parameters:

  tag | packet tag
  h | packet contents
  hlen | packet length (no. of bytes)

Returns:
  0 on success

Definition at line 529 of file rpmpgp.c.

References _debug, _print, pgpDigParams_s::hash, pgpPktSigV4_s::hash_algo, pgpDigParams_s::hash_algo, pgpPktSigV3_s::hash_algo, pgpPktSigV4_s::hashlen, pgpDigParams_s::hashlen, pgpPktSigV3_s::hashlen, pgpGrab, pgpHexStr, pgpPrtHex, pgpPrtNL, pgpPrtSigParams, pgpPrtSubType, pgpPrtVal, pgpTag, pgpPktSigV4_s::pubkey_algo, pgpDigParams_s::pubkey_algo, pgpPktSigV3_s::pubkey_algo, pgpDigParams_s::signhash16, pgpPktSigV3_s::signhash16, pgpDigParams_s::signid, pgpPktSigV3_s::signid, pgpPktSigV4_s::sigtype, pgpDigParams_s::sigtype, pgpPktSigV3_s::sigtype, pgpDigParams_s::time, pgpPktSigV3_s::time, pgpPktSigV4_s::version, pgpPktSigV3_s::version, pgpDigParams_s::version, and xmalloc.

int pgpPrtSigParams | ( | pgpTag | tag,
|  | byte | pubkey_algo,
|  | byte | sigtype,
|  | const byte * | p,
|  | const byte * | h,
|  | unsigned int | hlen
| ) | `[static]`

| Definition at line 468 of file rpmpgp.c. References _debug, _print, pgpDig_s::c, mp32number::data, mp32nsethex, mp32println, pgpHexSet, pgpMpiHex, pgpMpiLen, pgpMpiStr, pgpPrtNL, pgpPrtStr, PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_RSA, pgpSigDSA, pgpSigRSA, PGPSIGTYPE_BINARY, PGPSIGTYPE_TEXT, pgpTag, pgpDig_s::r, pgpDig_s::s, and mp32number::size. Referenced by pgpPrtSig.

void pgpPrtStr | ( | const char * | pre,
|  | const char * | s
| ) | `[static]`

| Definition at line 280 of file rpmpgp.c. References _print. Referenced by pgpPrtPubkeyParams, pgpPrtSeckeyParams, and pgpPrtSigParams.

int pgpPrtSubType | ( | const byte * | h,
|  | unsigned int | hlen,
|  | pgpSigType | sigtype
| ) |

Print/parse an OpenPGP subtype packet.

Parameters:

  h | packet
  hlen | packet length (no. of bytes)
  sigtype | signature type

Returns:
  0 on success

Definition at line 359 of file rpmpgp.c.

References PGPDIG_SAVED_ID, PGPDIG_SAVED_TIME, pgpGrab, pgpLen, pgpPrtHex, pgpPrtNL, pgpPrtVal, pgpSigType, PGPSIGTYPE_POSITIVE_CERT, PGPSUBTYPE_BACKWARD_COMPAT, PGPSUBTYPE_EXPORTABLE_CERT, PGPSUBTYPE_INTERNAL_100, PGPSUBTYPE_INTERNAL_101, PGPSUBTYPE_INTERNAL_102, PGPSUBTYPE_INTERNAL_103, PGPSUBTYPE_INTERNAL_104, PGPSUBTYPE_INTERNAL_105, PGPSUBTYPE_INTERNAL_106, PGPSUBTYPE_INTERNAL_107, PGPSUBTYPE_INTERNAL_108, PGPSUBTYPE_INTERNAL_109, PGPSUBTYPE_INTERNAL_110, PGPSUBTYPE_ISSUER_KEYID, PGPSUBTYPE_KEY_EXPIRE_TIME, PGPSUBTYPE_KEY_FLAGS, PGPSUBTYPE_KEYSERVER_PREFERS, PGPSUBTYPE_NOTATION, PGPSUBTYPE_POLICY_URL, PGPSUBTYPE_PREFER_COMPRESS, PGPSUBTYPE_PREFER_HASH, PGPSUBTYPE_PREFER_KEYSERVER, PGPSUBTYPE_PREFER_SYMKEY, PGPSUBTYPE_PRIMARY_USERID, PGPSUBTYPE_REGEX, PGPSUBTYPE_REVOCABLE, PGPSUBTYPE_REVOKE_KEY, PGPSUBTYPE_REVOKE_REASON, PGPSUBTYPE_SIG_CREATE_TIME, PGPSUBTYPE_SIG_EXPIRE_TIME, PGPSUBTYPE_SIGNER_USERID, PGPSUBTYPE_TRUST_SIG, pgpDigParams_s::saved, pgpDigParams_s::signid, and pgpDigParams_s::time.

int pgpPrtUserID | ( | pgpTag | tag,
|  | const byte * | h,
|  | unsigned int | hlen
| ) |

Print/parse an OpenPGP userid packet.

Parameters:

  tag | packet tag
  h | packet contents
  hlen | packet length (no. of bytes)

Returns:
  0 on success

Definition at line 912 of file rpmpgp.c.

References pgpPrtNL, pgpPrtVal, pgpTag, pgpDigParams_s::userid, and xmalloc.

void pgpPrtVal | ( | const char * | pre,
|  | pgpValTbl | vs,
|  | byte | val
| ) |

Print an OpenPGP value.

Parameters:

  pre | output prefix
  vs | table of (string,value) pairs
  val | byte value to print

Definition at line 300 of file rpmpgp.c.

References _print, pgpValStr, and pgpValTbl.

pgpArmor pgpReadPkts | ( | const char * | fn,
|  | const byte ** | pkt,
|  | size_t * | pktlen
| ) |

Parse armored OpenPGP packets from a file.

Parameters:

  fn | file name

Return values:

  pkt | dearmored OpenPGP packet(s)
  pktlen | dearmored OpenPGP packet(s) length in bytes

Returns:
  type of armor found

Definition at line 1151 of file rpmpgp.c.

References _free, b64decode, pgpArmor, PGPARMOR_ERROR, PGPARMOR_NONE, PGPARMOR_PUBKEY, pgpCRC, pgpGrab, pgpIsPkt, pgpValTok, rpmioSlurp, and uint32.

## Variable Documentation

int _debug = 0`[static]`

| Definition at line 15 of file rpmpgp.c. Referenced by pgpHexSet, pgpPrtPubkeyParams, pgpPrtSig, and pgpPrtSigParams.

pgpDig _dig = NULL`[static]`

| Definition at line 21 of file rpmpgp.c.

pgpDigParams _digp = NULL`[static]`

| Definition at line 24 of file rpmpgp.c.

int _print = 0`[static]`

| Definition at line 18 of file rpmpgp.c. Referenced by pgpHexSet, pgpPrtHex, pgpPrtInt, pgpPrtNL, pgpPrtPkts, pgpPrtPubkeyParams, pgpPrtSig, pgpPrtSigParams, pgpPrtStr, and pgpPrtVal.

struct pgpValTbl_s pgpArmorKeyTbl[]

Initial value:

     {
        { PGPARMORKEY_VERSION,      "Version: " },
        { PGPARMORKEY_COMMENT,      "Comment: " },
        { PGPARMORKEY_MESSAGEID,    "MessageID: " },
        { PGPARMORKEY_HASH,         "Hash: " },
        { PGPARMORKEY_CHARSET,      "Charset: " },
        { -1,                       "Unknown armor key" }
    }

Armor key (string, value) pairs.

Definition at line 240 of file rpmpgp.c.

struct pgpValTbl_s pgpArmorTbl[]

Initial value:

     {
        { PGPARMOR_MESSAGE,         "MESSAGE" },
        { PGPARMOR_PUBKEY,          "PUBLIC KEY BLOCK" },
        { PGPARMOR_SIGNATURE,       "SIGNATURE" },
        { PGPARMOR_SIGNED_MESSAGE,  "SIGNED MESSAGE" },
        { PGPARMOR_FILE,            "ARMORED FILE" },
        { PGPARMOR_PRIVKEY,         "PRIVATE KEY BLOCK" },
        { PGPARMOR_SECKEY,          "SECRET KEY BLOCK" },
        { -1,                       "Unknown armor block" }
    }

Armor (string, value) pairs.

Definition at line 229 of file rpmpgp.c.

struct pgpValTbl_s pgpCompressionTbl[]

Initial value:

     {
        { PGPCOMPRESSALGO_NONE,     "Uncompressed" },
        { PGPCOMPRESSALGO_ZIP,      "ZIP" },
        { PGPCOMPRESSALGO_ZLIB,     "ZLIB" },
        { -1,                       "Unknown compression algorithm" },
    }

Compression (string, value) pairs.

Definition at line 142 of file rpmpgp.c.

struct pgpValTbl_s pgpHashTbl[]

Initial value:

     {
        { PGPHASHALGO_MD5,          "MD5" },
        { PGPHASHALGO_SHA1,         "SHA1" },
        { PGPHASHALGO_RIPEMD160,    "RIPEMD160" },
        { PGPHASHALGO_MD2,          "MD2" },
        { PGPHASHALGO_TIGER192,     "TIGER192" },
        { PGPHASHALGO_HAVAL_5_160,  "HAVAL-5-160" },
        { -1,                       "Unknown hash algorithm" },
    }

Hash (string, value) pairs.

Definition at line 149 of file rpmpgp.c.

struct pgpValTbl_s pgpKeyServerPrefsTbl[]

Initial value:

     {
        { 0x80,                     "No-modify" },
        { -1,                       "Unknown key server preference" },
    }

Definition at line 161 of file rpmpgp.c.

struct pgpValTbl_s pgpPubkeyTbl[]

Initial value:

     {
        { PGPPUBKEYALGO_RSA,        "RSA" },
        { PGPPUBKEYALGO_RSA_ENCRYPT,"RSA(Encrypt-Only)" },
        { PGPPUBKEYALGO_RSA_SIGN,   "RSA(Sign-Only)" },
        { PGPPUBKEYALGO_ELGAMAL_ENCRYPT,"Elgamal(Encrypt-Only)" },
        { PGPPUBKEYALGO_DSA,        "DSA" },
        { PGPPUBKEYALGO_EC,         "Elliptic Curve" },
        { PGPPUBKEYALGO_ECDSA,      "ECDSA" },
        { PGPPUBKEYALGO_ELGAMAL,    "Elgamal" },
        { PGPPUBKEYALGO_DH,         "Diffie-Hellman (X9.42)" },
        { -1,                       "Unknown public key algorithm" },
    }

Definition at line 114 of file rpmpgp.c.

const char* pgpPublicDSA[]`[static]`

Initial value:

     {
        "    p =",
        "    q =",
        "    g =",
        "    y =",
        NULL,
    }

Definition at line 656 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams.

const char* pgpPublicELGAMAL[]`[static]`

Initial value:

     {
        "    p =",
        "    g =",
        "    y =",
        NULL,
    }

Definition at line 671 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams.

const char* pgpPublicRSA[]`[static]`

Initial value:

     {
        "    n =",
        "    e =",
        NULL,
    }

Definition at line 640 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams.

const char* pgpSecretDSA[]`[static]`

Initial value:

     {
        "    x =",
        NULL,
    }

Definition at line 665 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams.

const char* pgpSecretELGAMAL[]`[static]`

Initial value:

     {
        "    x =",
        NULL,
    }

Definition at line 679 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams.

const char* pgpSecretRSA[]`[static]`

Initial value:

     {
        "    d =",
        "    p =",
        "    q =",
        "    u =",
        NULL,
    }

Definition at line 647 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams.

const char* pgpSigDSA[]`[static]`

Initial value:

     {
        "    r =",
        "    s =",
        NULL,
    }

Definition at line 461 of file rpmpgp.c.

Referenced by pgpPrtSigParams.

const char* pgpSigRSA[]`[static]`

Initial value:

     {
        " m**d =",
        NULL,
    }

Definition at line 455 of file rpmpgp.c.

Referenced by pgpPrtSigParams.

struct pgpValTbl_s pgpSigTypeTbl[]

Initial value:

     {
        { PGPSIGTYPE_BINARY,        "Binary document signature" },
        { PGPSIGTYPE_TEXT,          "Text document signature" },
        { PGPSIGTYPE_STANDALONE,    "Standalone signature" },
        { PGPSIGTYPE_GENERIC_CERT,  "Generic certification of a User ID and Public Key" },
        { PGPSIGTYPE_PERSONA_CERT,  "Persona certification of a User ID and Public Key" },
        { PGPSIGTYPE_CASUAL_CERT,   "Casual certification of a User ID and Public Key" },
        { PGPSIGTYPE_POSITIVE_CERT, "Positive certification of a User ID and Public Key" },
        { PGPSIGTYPE_SUBKEY_BINDING,"Subkey Binding Signature" },
        { PGPSIGTYPE_SIGNED_KEY,    "Signature directly on a key" },
        { PGPSIGTYPE_KEY_REVOKE,    "Key revocation signature" },
        { PGPSIGTYPE_SUBKEY_REVOKE, "Subkey revocation signature" },
        { PGPSIGTYPE_CERT_REVOKE,   "Certification revocation signature" },
        { PGPSIGTYPE_TIMESTAMP,     "Timestamp signature" },
        { -1,                       "Unknown signature type" },
    }

Definition at line 97 of file rpmpgp.c.

struct pgpValTbl_s pgpSubTypeTbl[]

| Subtype (string, value) pairs. Definition at line 167 of file rpmpgp.c.

struct pgpValTbl_s pgpSymkeyTbl[]

Initial value:

     {
        { PGPSYMKEYALGO_PLAINTEXT,  "Plaintext" },
        { PGPSYMKEYALGO_IDEA,       "IDEA" },
        { PGPSYMKEYALGO_TRIPLE_DES, "3DES" },
        { PGPSYMKEYALGO_CAST5,      "CAST5" },
        { PGPSYMKEYALGO_BLOWFISH,   "BLOWFISH" },
        { PGPSYMKEYALGO_SAFER,      "SAFER" },
        { PGPSYMKEYALGO_DES_SK,     "DES/SK" },
        { PGPSYMKEYALGO_AES_128,    "AES(128-bit key)" },
        { PGPSYMKEYALGO_AES_192,    "AES(192-bit key)" },
        { PGPSYMKEYALGO_AES_256,    "AES(256-bit key)" },
        { PGPSYMKEYALGO_TWOFISH,    "TWOFISH" },
        { -1,                       "Unknown symmetric key algorithm" },
    }

Symmetric key (string, value) pairs.

Definition at line 127 of file rpmpgp.c.

struct pgpValTbl_s pgpTagTbl[]

Initial value:

     {
        { PGPTAG_PUBLIC_SESSION_KEY,"Public-Key Encrypted Session Key" },
        { PGPTAG_SIGNATURE,         "Signature" },
        { PGPTAG_SYMMETRIC_SESSION_KEY,"Symmetric-Key Encrypted Session Key" },
        { PGPTAG_ONEPASS_SIGNATURE, "One-Pass Signature" },
        { PGPTAG_SECRET_KEY,        "Secret Key" },
        { PGPTAG_PUBLIC_KEY,        "Public Key" },
        { PGPTAG_SECRET_SUBKEY,     "Secret Subkey" },
        { PGPTAG_COMPRESSED_DATA,   "Compressed Data" },
        { PGPTAG_SYMMETRIC_DATA,    "Symmetrically Encrypted Data" },
        { PGPTAG_MARKER,            "Marker" },
        { PGPTAG_LITERAL_DATA,      "Literal Data" },
        { PGPTAG_TRUST,             "Trust" },
        { PGPTAG_USER_ID,           "User ID" },
        { PGPTAG_PUBLIC_SUBKEY,     "Public Subkey" },
        { PGPTAG_COMMENT_OLD,       "Comment (from OpenPGP draft)" },
        { PGPTAG_PHOTOID,           "PGP's photo ID" },
        { PGPTAG_ENCRYPTED_MDC,     "Integrity protected encrypted data" },
        { PGPTAG_MDC,               "Manipulaion detection code packet" },
        { PGPTAG_PRIVATE_60,        "Private #60" },
        { PGPTAG_COMMENT,           "Comment" },
        { PGPTAG_PRIVATE_62,        "Private #62" },
        { PGPTAG_CONTROL,           "Control (GPG)" },
        { -1,                       "Unknown packet tag" },
    }

Definition at line 203 of file rpmpgp.c.