#include "system.h"
#include "rpmio_internal.h"
#include "debug.h"
Include dependency graph for rpmpgp.c:

Go to the source code of this file.
Data Structures | |
| struct | pgpPkt_s |
Defines | |
| #define | TOKEQ(_s, _tok) (!strncmp((_s), (_tok), sizeof(_tok)-1)) |
Functions | |
| 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 (const pgpPkt pp, byte pubkey_algo, byte sigtype, const byte *p) |
| int | pgpPrtSig (const pgpPkt pp) |
| Print/parse an OpenPGP signature packet. | |
| static const byte * | pgpPrtPubkeyParams (const pgpPkt pp, byte pubkey_algo, const byte *p) |
| static const byte * | pgpPrtSeckeyParams (const pgpPkt pp, byte pubkey_algo, const byte *p) |
| 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 | pgpPktLen (const byte *pkt, unsigned int pleft, pgpPkt pp) |
| Return lenth of a OpenPGP packet. | |
| int | pgpPubkeyFingerprint (const byte *pkt, unsigned int pktlen, byte *keyid) |
| Calculate OpenPGP public key fingerprint. | |
| int | pgpExtractPubkeyFingerprint (const char *b64pkt, byte *keyid) |
| Extract OpenPGP public key fingerprint from base64 encoded packet. | |
| 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. | |
| static int | pgpGrabPkts (const byte *pkts, unsigned int pktlen, byte ***pppkts, int *pnpkts) |
| 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 * | pgpPublicDSA [] |
| static const char * | pgpPublicELGAMAL [] |
Definition in file rpmpgp.c.
|
|
Referenced by pgpReadPkts(). |
|
||||||||||||||||
|
Wrap a OpenPGP packets in ascii armor for transport.
Definition at line 1444 of file rpmpgp.c. References _free(), pgpValStr(), stpcpy(), pgpValTbl_s::val, VERSION, and xmalloc(). Referenced by armorFormat(), and processMetadataFile(). |
|
|
Release (malloc'd) data from container.
Definition at line 1115 of file rpmpgp.c. References _free(), pgpDig_s::c, pgpDigParams_s::hash, pgpDig_s::hm, pgpDig_s::m, pgpDig_s::md5, pgpDig_s::npkts, pgpDigParams_s::params, pgpDig_s::ppkts, 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(), and rpmVerifySignatures(). |
|
||||||||||||
|
Extract OpenPGP public key fingerprint from base64 encoded packet.
Definition at line 1033 of file rpmpgp.c. References _free(), and pgpPubkeyFingerprint(). Referenced by rpmdbAdd(), and rpmdbRemove(). |
|
|
Destroy a container for parsed OpenPGP packates.
Definition at line 1152 of file rpmpgp.c. References _free(), pgpCleanDig(), and rpmDigestFinal(). Referenced by getSignid(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), rpmcliImportPubkey(), and rpmtsCleanDig(). |
|
||||||||||||||||||||
|
Definition at line 1205 of file rpmpgp.c. References _free(), alloca(), pgpPktLen(), and xcalloc(). Referenced by pgpPrtPkts(). |
|
||||||||||||||||||||||||
|
Definition at line 329 of file rpmpgp.c. References _debug, _free(), _print, pgpMpiBits(), pgpMpiHex(), and xmalloc(). Referenced by pgpPrtSigParams(). |
|
|
Definition at line 316 of file rpmpgp.c. References pgpHexCvt(), and pgpMpiLen(). Referenced by pgpHexSet(), pgpPrtPubkeyParams(), and pgpPrtSigParams(). |
|
|
Create a container for parsed OpenPGP packates.
Definition at line 1108 of file rpmpgp.c. References xcalloc(). Referenced by getSignid(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), rpmcliImportPubkey(), and rpmtsDig(). |
|
||||||||||||||||
|
Return lenth of a OpenPGP packet.
Definition at line 946 of file rpmpgp.c. References pgpGrab(), pgpLen(), and pgpValTbl_s::val. Referenced by pgpGrabPkts(), pgpPrtPkt(), pgpPrtPkts(), and pgpPubkeyFingerprint(). |
|
|
Print/parse an OpenPGP comment packet.
Definition at line 917 of file rpmpgp.c. References _print, pgpPkt_s::h, pgpPkt_s::hlen, pgpPrtHex(), pgpPrtNL(), pgpPrtVal(), and pgpPkt_s::tag. Referenced by pgpPrtPkt(). |
|
||||||||||||||||
|
Definition at line 293 of file rpmpgp.c. References _print, and pgpHexStr(). Referenced by pgpPrtComment(), pgpPrtPkt(), pgpPrtSeckeyParams(), pgpPrtSig(), and pgpPrtSubType(). |
|
||||||||||||
|
Definition at line 273 of file rpmpgp.c. References _print. Referenced by pgpPrtSeckeyParams(). |
|
|
Print/parse an OpenPGP key packet.
Definition at line 837 of file rpmpgp.c. References _print, pgpPkt_s::h, pgpGrab(), pgpPrtNL(), pgpPrtPubkeyParams(), pgpPrtSeckeyParams(), pgpPrtVal(), PGPTAG_PUBLIC_KEY, PGPTAG_PUBLIC_SUBKEY, pgpPktKeyV3_s::pubkey_algo, pgpDigParams_s::pubkey_algo, pgpPktKeyV4_s::pubkey_algo, pgpPkt_s::tag, 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(). |
|
|
Definition at line 265 of file rpmpgp.c. References _print. Referenced by pgpPrtComment(), pgpPrtKey(), pgpPrtPkt(), pgpPrtPubkeyParams(), pgpPrtSeckeyParams(), pgpPrtSig(), pgpPrtSigParams(), pgpPrtSubType(), and pgpPrtUserID(). |
|
||||||||||||
|
Print/parse next OpenPGP packet.
Definition at line 1045 of file rpmpgp.c. References alloca(), PGPDIG_SAVED_ID, pgpPktLen(), 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, and pgpDigParams_s::signid. Referenced by pgpPrtPkts(). |
|
||||||||||||||||||||
|
Print/parse a OpenPGP packet(s).
Definition at line 1249 of file rpmpgp.c. References _free(), _print, alloca(), pgpDig_s::npkts, pgpGrabPkts(), pgpPktLen(), pgpPrtPkt(), PGPTAG_SIGNATURE, pgpDig_s::ppkts, pgpDig_s::pubkey, pgpDig_s::signature, pgpDigParams_s::tag, and pgpValTbl_s::val. Referenced by getSignid(), headerCheck(), makeGPGSignature(), makePGPSignature(), pgpsigFormat(), rpmcliImportPubkey(), rpmReadPackageFile(), rpmts_PgpPrtPkts(), rpmtsFindPubkey(), and rpmVerifySignatures(). |
|
||||||||||||||||
|
Definition at line 693 of file rpmpgp.c. References _debug, _print, pgpDig_s::g, pgpPkt_s::hlen, 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(). |
|
||||||||||||||||
|
Definition at line 763 of file rpmpgp.c. References _print, pgpPkt_s::h, pgpPkt_s::hlen, pgpMpiLen(), pgpMpiStr(), pgpPrtHex(), pgpPrtInt(), pgpPrtNL(), pgpPrtStr(), pgpPrtVal(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_ELGAMAL_ENCRYPT, and PGPPUBKEYALGO_RSA. Referenced by pgpPrtKey(). |
|
|
Print/parse an OpenPGP signature packet.
Definition at line 533 of file rpmpgp.c. References _debug, _print, pgpPkt_s::h, pgpDigParams_s::hash, pgpPktSigV3_s::hash_algo, pgpDigParams_s::hash_algo, pgpPktSigV4_s::hash_algo, pgpPktSigV3_s::hashlen, pgpDigParams_s::hashlen, pgpPktSigV4_s::hashlen, pgpPkt_s::hlen, 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, pgpPkt_s::tag, pgpPktSigV3_s::time, pgpDigParams_s::time, pgpDigParams_s::version, pgpPktSigV3_s::version, pgpPktSigV4_s::version, and xmalloc(). Referenced by pgpPrtPkt(). |
|
||||||||||||||||||||
|
Definition at line 476 of file rpmpgp.c. References _debug, _print, pgpDig_s::c, pgpPkt_s::h, pgpPkt_s::hlen, 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(). |
|
||||||||||||
|
Definition at line 283 of file rpmpgp.c. References _print. Referenced by pgpPrtPubkeyParams(), pgpPrtSeckeyParams(), and pgpPrtSigParams(). |
|
||||||||||||||||
|
|
Print/parse an OpenPGP userid packet.
Definition at line 899 of file rpmpgp.c. References _free(), _print, pgpPkt_s::h, pgpPkt_s::hlen, pgpPrtNL(), pgpPrtVal(), pgpPkt_s::tag, pgpDigParams_s::userid, and xmalloc(). Referenced by pgpPrtPkt(). |
|
||||||||||||||||
|
Print an OpenPGP value.
Definition at line 303 of file rpmpgp.c. References _print, and pgpValStr(). Referenced by pgpPrtComment(), pgpPrtKey(), pgpPrtPkt(), pgpPrtSeckeyParams(), pgpPrtSig(), pgpPrtSubType(), and pgpPrtUserID(). |
|
||||||||||||||||
|
Calculate OpenPGP public key fingerprint.
Definition at line 976 of file rpmpgp.c. References _free(), alloca(), PGPHASHALGO_SHA1, pgpMpiLen(), pgpPktLen(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_RSA, PGPTAG_PUBLIC_KEY, pgpPktKeyV3_s::pubkey_algo, pgpPktKeyV4_s::pubkey_algo, RPMDIGEST_NONE, rpmDigestFinal(), rpmDigestInit(), and rpmDigestUpdate(). Referenced by pgpExtractPubkeyFingerprint(), and pgpPrtPkt(). |
|
||||||||||||||||
|
Parse armored OpenPGP packets from a file.
Definition at line 1292 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 processMetadataFile(), rpmcliImportPubkeys(), and rpmtsFindPubkey(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 19 of file rpmpgp.c. Referenced by pgpHexSet(), pgpPrtComment(), pgpPrtHex(), pgpPrtInt(), pgpPrtKey(), pgpPrtNL(), pgpPrtPkts(), pgpPrtPubkeyParams(), pgpPrtSeckeyParams(), pgpPrtSig(), pgpPrtSigParams(), pgpPrtStr(), pgpPrtSubType(), pgpPrtUserID(), and pgpPrtVal(). |
|
|
Initial value: {
{ PGPARMORKEY_VERSION, "Version: " },
{ PGPARMORKEY_COMMENT, "Comment: " },
{ PGPARMORKEY_MESSAGEID, "MessageID: " },
{ PGPARMORKEY_HASH, "Hash: " },
{ PGPARMORKEY_CHARSET, "Charset: " },
{ -1, "Unknown armor key" }
}
|
|
|
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" }
}
|
|
|
Initial value: {
{ PGPCOMPRESSALGO_NONE, "Uncompressed" },
{ PGPCOMPRESSALGO_ZIP, "ZIP" },
{ PGPCOMPRESSALGO_ZLIB, "ZLIB" },
{ PGPCOMPRESSALGO_BZIP2, "BZIP2" },
{ -1, "Unknown compression algorithm" },
}
|
|
|
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" },
}
|
|
|
Initial value: {
{ 0x80, "No-modify" },
{ -1, "Unknown key server preference" },
}
|
|
|
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" },
}
|
|
|
Initial value: {
" p =",
" q =",
" g =",
" y =",
NULL,
}
Definition at line 660 of file rpmpgp.c. Referenced by pgpPrtPubkeyParams(). |
|
|
Initial value: {
" p =",
" g =",
" y =",
NULL,
}
Definition at line 677 of file rpmpgp.c. Referenced by pgpPrtPubkeyParams(). |
|
|
Initial value: {
" n =",
" e =",
NULL,
}
Definition at line 642 of file rpmpgp.c. Referenced by pgpPrtPubkeyParams(). |
|
|
Initial value: {
" r =",
" s =",
NULL,
}
Definition at line 469 of file rpmpgp.c. Referenced by pgpPrtSigParams(). |
|
|
Initial value: {
" m**d =",
NULL,
}
Definition at line 463 of file rpmpgp.c. Referenced by pgpPrtSigParams(). |
|
|
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, "Personal 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" },
}
|
|
|
Subtype (string, value) pairs.
|
|
|
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" },
}
|
|
|
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" },
}
|
1.4.4