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

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

static void * _free (const void *p)
 Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
static void pgpPrtNL (void)
static void pgpPrtInt (const char *pre, int i)
static void pgpPrtStr (const char *pre, const char *s)
static void pgpPrtHex (const char *pre, const byte *p, unsigned int plen)
void pgpPrtVal (const char *pre, pgpValTbl vs, byte val)
 Print an OpenPGP value.
static const char * pgpMpiHex (const byte *p)
static int pgpHexSet (const char *pre, int lbits, mpnumber *mpn, const byte *p, const byte *pend)
int pgpPrtSubType (const byte *h, unsigned int hlen, pgpSigType sigtype)
 Print/parse an OpenPGP subtype packet.
static 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.
static const bytepgpPrtPubkeyParams (byte pubkey_algo, const byte *p, const byte *h, unsigned int hlen)
static const bytepgpPrtSeckeyParams (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.
int pgpPrtUserID (pgpTag tag, const byte *h, unsigned int hlen)
 Print/parse an OpenPGP userid packet.
int pgpPrtComment (pgpTag tag, const byte *h, unsigned int hlen)
 Print/parse an OpenPGP comment packet.
int pgpPubkeyFingerprint (const byte *pkt, unsigned int pktlen, byte *keyid)
 Calculate OpenPGP public key fingerprint.
int pgpPrtPkt (const byte *pkt, unsigned int pleft)
 Print/parse next OpenPGP packet.
pgpDig pgpNewDig (void)
 Create a container for parsed OpenPGP packates.
void pgpCleanDig (pgpDig dig)
 Release (malloc'd) data from container.
pgpDig pgpFreeDig (pgpDig dig)
 Destroy a container for parsed OpenPGP packates.
int pgpPrtPkts (const byte *pkts, unsigned int pktlen, pgpDig dig, int printing)
 Print/parse a OpenPGP packet(s).
pgpArmor pgpReadPkts (const char *fn, const byte **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.

Variables

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

Referenced by pgpReadPkts().


Function Documentation

static 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 263 of file rpmpgp.c.

char* pgpArmorWrap int  atype,
const unsigned char *  s,
size_t  ns
 

Wrap a OpenPGP packets in ascii armor for transport.

Parameters:
atype type of armor
s binary pkt data
ns binary pkt data length
Returns:
formatted string

Definition at line 1356 of file rpmpgp.c.

References _free(), pgpValStr(), stpcpy(), pgpValTbl_s::val, VERSION, and xmalloc().

Referenced by armorFormat(), and processMetadataFile().

void pgpCleanDig pgpDig  dig  ) 
 

Release (malloc'd) data from container.

Parameters:
dig container

Definition at line 1092 of file rpmpgp.c.

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

Referenced by pgpFreeDig(), readKeys(), and rpmVerifySignatures().

pgpDig pgpFreeDig pgpDig  dig  ) 
 

Destroy a container for parsed OpenPGP packates.

Parameters:
dig container
Returns:
NULL always

Definition at line 1127 of file rpmpgp.c.

References _free(), pgpCleanDig(), and rpmDigestFinal().

Referenced by getSignid(), main(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), readKeys(), rpmcliImportPubkey(), and rpmtsCleanDig().

static int pgpHexSet const char *  pre,
int  lbits,
mpnumber *  mpn,
const byte p,
const byte pend
[static]
 

Returns:
0 on success

Definition at line 334 of file rpmpgp.c.

References _debug, _free(), _print, pgpMpiBits(), pgpMpiHex(), and xmalloc().

Referenced by pgpPrtSigParams().

static const char* pgpMpiHex const byte p  )  [static]
 

Definition at line 321 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 1085 of file rpmpgp.c.

References xcalloc().

Referenced by getSignid(), main(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), readKeys(), 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 915 of file rpmpgp.c.

References _print, pgpPrtHex(), pgpPrtNL(), and pgpPrtVal().

Referenced by pgpPrtPkt().

static void pgpPrtHex const char *  pre,
const byte p,
unsigned int  plen
[static]
 

Definition at line 298 of file rpmpgp.c.

References _print, and pgpHexStr().

Referenced by pgpPrtComment(), pgpPrtPkt(), pgpPrtSeckeyParams(), pgpPrtSig(), and pgpPrtSubType().

static void pgpPrtInt const char *  pre,
int  i
[static]
 

Definition at line 278 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 836 of file rpmpgp.c.

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

Referenced by pgpPrtPkt().

static void pgpPrtNL void   )  [static]
 

Definition at line 270 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 1003 of file rpmpgp.c.

References PGPDIG_SAVED_ID, pgpGrab(), pgpLen(), pgpPrtComment(), pgpPrtHex(), pgpPrtKey(), pgpPrtNL(), pgpPrtSig(), pgpPrtUserID(), pgpPrtVal(), pgpPubkeyFingerprint(), 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, PGPTAG_USER_ID, pgpDigParams_s::saved, pgpDigParams_s::signid, and pgpValTbl_s::val.

Referenced by pgpPrtPkts().

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 1180 of file rpmpgp.c.

References _print, pgpPrtPkt(), PGPTAG_SIGNATURE, pgpDig_s::pubkey, pgpDig_s::signature, pgpDigParams_s::tag, and pgpValTbl_s::val.

Referenced by doit(), getSignid(), headerCheck(), main(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), readKeys(), rpmcliImportPubkey(), rpmdbAdd(), rpmdbRemove(), rpmReadPackageFile(), rpmts_PgpPrtPkts(), rpmtsFindPubkey(), and rpmVerifySignatures().

static const byte* pgpPrtPubkeyParams byte  pubkey_algo,
const byte p,
const byte h,
unsigned int  hlen
[static]
 

Definition at line 692 of file rpmpgp.c.

References _debug, _print, pgpDig_s::g, 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, and pgpDig_s::y.

Referenced by pgpPrtKey().

static const byte* pgpPrtSeckeyParams byte  pubkey_algo,
const byte p,
const byte h,
unsigned int  hlen
[static]
 

Definition at line 762 of file rpmpgp.c.

References _print, 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 538 of file rpmpgp.c.

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

Referenced by pgpPrtPkt().

static int pgpPrtSigParams pgpTag  tag,
byte  pubkey_algo,
byte  sigtype,
const byte p,
const byte h,
unsigned int  hlen
[static]
 

Definition at line 481 of file rpmpgp.c.

References _debug, _print, pgpDig_s::c, pgpHexSet(), pgpMpiHex(), pgpMpiLen(), pgpMpiStr(), pgpPrtNL(), pgpPrtStr(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_RSA, pgpSigDSA, pgpSigRSA, PGPSIGTYPE_BINARY, PGPSIGTYPE_TEXT, pgpDig_s::r, and pgpDig_s::s.

Referenced by pgpPrtSig().

static void pgpPrtStr const char *  pre,
const char *  s
[static]
 

Definition at line 288 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 367 of file rpmpgp.c.

References _print, PGPDIG_SAVED_ID, PGPDIG_SAVED_TIME, pgpGrab(), pgpLen(), pgpPrtHex(), pgpPrtNL(), pgpPrtVal(), PGPSIGTYPE_BINARY, PGPSIGTYPE_POSITIVE_CERT, PGPSIGTYPE_STANDALONE, PGPSIGTYPE_TEXT, PGPSUBTYPE_ARR, PGPSUBTYPE_CRITICAL, PGPSUBTYPE_EMBEDDED_SIG, PGPSUBTYPE_EXPORTABLE_CERT, PGPSUBTYPE_FEATURES, 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.

Referenced by pgpPrtSig().

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 898 of file rpmpgp.c.

References _print, pgpPrtNL(), pgpPrtVal(), pgpDigParams_s::userid, and xmalloc().

Referenced by pgpPrtPkt().

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 308 of file rpmpgp.c.

References _print, and pgpValStr().

Referenced by pgpPrtComment(), pgpPrtKey(), pgpPrtPkt(), pgpPrtSeckeyParams(), pgpPrtSig(), pgpPrtSubType(), and pgpPrtUserID().

int pgpPubkeyFingerprint const byte pkt,
unsigned int  pktlen,
byte keyid
 

Calculate OpenPGP public key fingerprint.

Todo:
V3 non-RSA public keys not implemented.
Parameters:
pkt OpenPGP packet (i.e. PGPTAG_PUBLIC_KEY)
pktlen OpenPGP packet length (no. of bytes)
Return values:
keyid publick key fingerprint
Returns:
0 on sucess, else -1

Definition at line 941 of file rpmpgp.c.

References PGPHASHALGO_SHA1, pgpMpiLen(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_RSA, pgpPktKeyV3_s::pubkey_algo, pgpPktKeyV4_s::pubkey_algo, RPMDIGEST_NONE, rpmDigestFinal(), rpmDigestInit(), and rpmDigestUpdate().

Referenced by pgpPrtPkt(), and readKeys().

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 1209 of file rpmpgp.c.

References _free(), PGPARMOR_ERR_BODY_DECODE, PGPARMOR_ERR_CRC_CHECK, PGPARMOR_ERR_CRC_DECODE, PGPARMOR_ERR_NO_BEGIN_PGP, PGPARMOR_ERR_NO_END_PGP, PGPARMOR_ERR_UNKNOWN_ARMOR_TYPE, PGPARMOR_NONE, PGPARMOR_PUBKEY, pgpCRC(), pgpGrab(), pgpIsPkt(), pgpValTok(), rpmioSlurp(), and TOKEQ.

Referenced by main(), processMetadataFile(), readKeys(), rpmcliImportPubkeys(), and rpmtsFindPubkey().


Variable Documentation

int _debug = 0 [static]
 

Definition at line 15 of file rpmpgp.c.

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(), pgpPrtComment(), pgpPrtHex(), pgpPrtInt(), pgpPrtKey(), pgpPrtNL(), pgpPrtPkts(), pgpPrtPubkeyParams(), pgpPrtSeckeyParams(), pgpPrtSig(), pgpPrtSigParams(), pgpPrtStr(), pgpPrtSubType(), pgpPrtUserID(), 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 248 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 237 of file rpmpgp.c.

struct pgpValTbl_s pgpCompressionTbl[]
 

Initial value:

 {
    { PGPCOMPRESSALGO_NONE,     "Uncompressed" },
    { PGPCOMPRESSALGO_ZIP,      "ZIP" },
    { PGPCOMPRESSALGO_ZLIB,     "ZLIB" },
    { PGPCOMPRESSALGO_BZIP2,    "BZIP2" },
    { -1,                       "Unknown compression algorithm" },
}
Compression (string, value) pairs.

Definition at line 143 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" },
    { PGPHASHALGO_SHA256,       "SHA256" },
    { PGPHASHALGO_SHA384,       "SHA384" },
    { PGPHASHALGO_SHA512,       "SHA512" },
    { -1,                       "Unknown hash algorithm" },
}
Hash (string, value) pairs.

Definition at line 151 of file rpmpgp.c.

struct pgpValTbl_s pgpKeyServerPrefsTbl[]
 

Initial value:

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

Definition at line 166 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 663 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams().

const char* pgpPublicELGAMAL[] [static]
 

Initial value:

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

Definition at line 678 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams().

const char* pgpPublicRSA[] [static]
 

Initial value:

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

Definition at line 647 of file rpmpgp.c.

Referenced by pgpPrtPubkeyParams().

const char* pgpSecretDSA[] [static]
 

Initial value:

 {
    "    x =",
    NULL,
}

Definition at line 672 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams().

const char* pgpSecretELGAMAL[] [static]
 

Initial value:

 {
    "    x =",
    NULL,
}

Definition at line 686 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams().

const char* pgpSecretRSA[] [static]
 

Initial value:

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

Definition at line 654 of file rpmpgp.c.

Referenced by pgpPrtSeckeyParams().

const char* pgpSigDSA[] [static]
 

Initial value:

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

Definition at line 474 of file rpmpgp.c.

Referenced by pgpPrtSigParams().

const char* pgpSigRSA[] [static]
 

Initial value:

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

Definition at line 468 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 172 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(256-bit key)" },
    { PGPSYMKEYALGO_NOENCRYPT,  "no encryption" },
    { -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 211 of file rpmpgp.c.


Generated on Mon Mar 5 13:30:25 2007 for rpm by  doxygen 1.4.4