~ubuntu-branches/ubuntu/precise/rpm/precise-proposed

« back to all changes in this revision

Viewing changes to doc/librpm/html/rpmpgp_8h-source.html

  • Committer: Bazaar Package Importer
  • Author(s): Michael Vogt
  • Date: 2009-06-25 18:57:20 UTC
  • mfrom: (1.1.5 upstream) (4.1.2 sid)
  • Revision ID: james.westby@ubuntu.com-20090625185720-617sjskgtgmf09vf
Tags: 4.7.0-7ubuntu1
* Merge from debian unstable, remaining changes:
  - change build depends from libdwarf-dev -> libdw-dev
    (libdwarf-dev is in universe)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
 
3
<title>rpm: rpmpgp.h Source File</title>
 
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
 
5
<link href="tabs.css" rel="stylesheet" type="text/css">
 
6
</head><body>
 
7
<!-- Generated by Doxygen 1.5.7.1 -->
 
8
<div class="navigation" id="top">
 
9
  <div class="tabs">
 
10
    <ul>
 
11
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
 
12
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
 
13
      <li><a href="modules.html"><span>Modules</span></a></li>
 
14
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
 
15
      <li class="current"><a href="files.html"><span>Files</span></a></li>
 
16
    </ul>
 
17
  </div>
 
18
  <div class="tabs">
 
19
    <ul>
 
20
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
 
21
      <li><a href="globals.html"><span>Globals</span></a></li>
 
22
    </ul>
 
23
  </div>
 
24
<h1>rpmpgp.h</h1><a href="rpmpgp_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef H_RPMPGP</span>
 
25
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define H_RPMPGP</span>
 
26
<a name="l00003"></a>00003 <span class="preprocessor"></span>
 
27
<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;string.h&gt;</span>
 
28
<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
 
29
<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
 
30
<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;rpm/rpmtypes.h&gt;</span>
 
31
<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;rpm/rpmstring.h&gt;</span>
 
32
<a name="l00018"></a>00018 
 
33
<a name="l00019"></a>00019 <span class="preprocessor">#ifdef __cplusplus</span>
 
34
<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
 
35
<a name="l00021"></a>00021 <span class="preprocessor">#endif</span>
 
36
<a name="l00022"></a>00022 <span class="preprocessor"></span>
 
37
<a name="l00025"></a><a class="code" href="group__rpmpgp.html#gce514f14ffbbaee3c09c4a1558b627db">00025</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>DIGEST_CTX_s * <a class="code" href="group__rpmpgp.html#gce514f14ffbbaee3c09c4a1558b627db">DIGEST_CTX</a>;
 
38
<a name="l00026"></a>00026 
 
39
<a name="l00029"></a><a class="code" href="group__rpmpgp.html#g86ebfc5fd71a3aa075ddac16b2cba230">00029</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>pgpDig_s * <a class="code" href="group__rpmpgp.html#g86ebfc5fd71a3aa075ddac16b2cba230">pgpDig</a>;
 
40
<a name="l00030"></a>00030 
 
41
<a name="l00033"></a><a class="code" href="group__rpmpgp.html#ga8cd8da48cba60b831e1894d3c120e51">00033</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>pgpDigParams_s * <a class="code" href="group__rpmpgp.html#ga8cd8da48cba60b831e1894d3c120e51">pgpDigParams</a>;
 
42
<a name="l00034"></a>00034 
 
43
<a name="l00035"></a><a class="code" href="rpmpgp_8h.html#f019dbf23a90a2232ca5bd955ac79e03">00035</a> <span class="keyword">typedef</span> uint8_t <a class="code" href="rpmpgp_8h.html#f019dbf23a90a2232ca5bd955ac79e03">pgpKeyID_t</a>[8];
 
44
<a name="l00036"></a><a class="code" href="rpmpgp_8h.html#3f26618361eeb911e1c83947661a4b93">00036</a> <span class="keyword">typedef</span> uint8_t <a class="code" href="rpmpgp_8h.html#3f26618361eeb911e1c83947661a4b93">pgpTime_t</a>[4];
 
45
<a name="l00037"></a>00037 
 
46
<a name="l00040"></a><a class="code" href="structpgpValTbl__s.html">00040</a> <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="structpgpValTbl__s.html">pgpValTbl_s</a> {
 
47
<a name="l00041"></a><a class="code" href="structpgpValTbl__s.html#2f7b2660564ce298f8bbe35fd913cfce">00041</a>     <span class="keywordtype">int</span> <a class="code" href="structpgpValTbl__s.html#2f7b2660564ce298f8bbe35fd913cfce">val</a>;
 
48
<a name="l00042"></a><a class="code" href="structpgpValTbl__s.html#52acd589f984bf6611f1f25f8c7e79e0">00042</a>     <span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> <a class="code" href="structpgpValTbl__s.html#52acd589f984bf6611f1f25f8c7e79e0">str</a>;
 
49
<a name="l00043"></a>00043 } * <a class="code" href="structpgpValTbl__s.html">pgpValTbl</a>;
 
50
<a name="l00044"></a>00044  
 
51
<a name="l00052"></a><a class="code" href="group__rpmpgp.html#gc0fbde539719cbcbbdd415da5ceb813b">00052</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#gc0fbde539719cbcbbdd415da5ceb813b" title="4.3.">pgpTag_e</a> {
 
52
<a name="l00053"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb19b4258fe7f1d09cffbc07e47e64864">00053</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb19b4258fe7f1d09cffbc07e47e64864">PGPTAG_RESERVED</a>             =  0, 
 
53
<a name="l00054"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bda7cba12cf9ee79a64029d0c7cadd0de">00054</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bda7cba12cf9ee79a64029d0c7cadd0de">PGPTAG_PUBLIC_SESSION_KEY</a>   =  1, 
 
54
<a name="l00055"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bcba1620cf0c0f7e88e83d8803a2064b0">00055</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bcba1620cf0c0f7e88e83d8803a2064b0">PGPTAG_SIGNATURE</a>            =  2, 
 
55
<a name="l00056"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bdc3f4025386a293f6a5276de0c7b11d6">00056</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bdc3f4025386a293f6a5276de0c7b11d6">PGPTAG_SYMMETRIC_SESSION_KEY</a>=  3, 
 
56
<a name="l00057"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b9509d92f13001b0c3232da64afc6b53f">00057</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b9509d92f13001b0c3232da64afc6b53f">PGPTAG_ONEPASS_SIGNATURE</a>    =  4, 
 
57
<a name="l00058"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bec0fbde5541ccb957fd00af83d103db7">00058</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bec0fbde5541ccb957fd00af83d103db7">PGPTAG_SECRET_KEY</a>           =  5, 
 
58
<a name="l00059"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813ba4961626bda007e36021a55d50119d1a">00059</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813ba4961626bda007e36021a55d50119d1a">PGPTAG_PUBLIC_KEY</a>           =  6, 
 
59
<a name="l00060"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b862a492c2d8d34fe832fcf86a4ed5d1e">00060</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b862a492c2d8d34fe832fcf86a4ed5d1e">PGPTAG_SECRET_SUBKEY</a>        =  7, 
 
60
<a name="l00061"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1ad8a134e3e7191193410b5f489004d9">00061</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1ad8a134e3e7191193410b5f489004d9">PGPTAG_COMPRESSED_DATA</a>      =  8, 
 
61
<a name="l00062"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b36015e3a0252ce84a36456f8a93c8fe2">00062</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b36015e3a0252ce84a36456f8a93c8fe2">PGPTAG_SYMMETRIC_DATA</a>       =  9, 
 
62
<a name="l00063"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1eb61e7f7dc4bf96964a3750b13fdd9e">00063</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1eb61e7f7dc4bf96964a3750b13fdd9e">PGPTAG_MARKER</a>               = 10, 
 
63
<a name="l00064"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bbafecdca492a645a1854abfdcb6bb619">00064</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bbafecdca492a645a1854abfdcb6bb619">PGPTAG_LITERAL_DATA</a>         = 11, 
 
64
<a name="l00065"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b960d7922ee882d88ea68c0e0e09599f8">00065</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b960d7922ee882d88ea68c0e0e09599f8">PGPTAG_TRUST</a>                = 12, 
 
65
<a name="l00066"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b46fdfaf880ff4977483c76bb61a37336">00066</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b46fdfaf880ff4977483c76bb61a37336">PGPTAG_USER_ID</a>              = 13, 
 
66
<a name="l00067"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813beff7520325d01d035c2e37cf886b34f1">00067</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813beff7520325d01d035c2e37cf886b34f1">PGPTAG_PUBLIC_SUBKEY</a>        = 14, 
 
67
<a name="l00068"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb3036cc9bc4bfba6a84f91d9dc25dfd2">00068</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb3036cc9bc4bfba6a84f91d9dc25dfd2">PGPTAG_COMMENT_OLD</a>          = 16, 
 
68
<a name="l00069"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb55ec5ece2ea8d9b6d2092c0045974ce">00069</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bb55ec5ece2ea8d9b6d2092c0045974ce">PGPTAG_PHOTOID</a>              = 17, 
 
69
<a name="l00070"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b4d525d3bc05c39630319119f04a164dc">00070</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b4d525d3bc05c39630319119f04a164dc">PGPTAG_ENCRYPTED_MDC</a>        = 18, 
 
70
<a name="l00071"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bf8be72c812496353d76905b2c22853b1">00071</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bf8be72c812496353d76905b2c22853b1">PGPTAG_MDC</a>                  = 19, 
 
71
<a name="l00072"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1c92f82a6f52a0d44d6d739752be0b67">00072</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b1c92f82a6f52a0d44d6d739752be0b67">PGPTAG_PRIVATE_60</a>           = 60, 
 
72
<a name="l00073"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813be9a6c511ce8c4211ca5fc35047df4604">00073</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813be9a6c511ce8c4211ca5fc35047df4604">PGPTAG_COMMENT</a>              = 61, 
 
73
<a name="l00074"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b8d59c754f03691cdd6995b79ae7fc668">00074</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813b8d59c754f03691cdd6995b79ae7fc668">PGPTAG_PRIVATE_62</a>           = 62, 
 
74
<a name="l00075"></a><a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bfec21f14cd5786bdb23551d3c4884930">00075</a>     <a class="code" href="group__rpmpgp.html#ggc0fbde539719cbcbbdd415da5ceb813bfec21f14cd5786bdb23551d3c4884930">PGPTAG_CONTROL</a>              = 63  
 
75
<a name="l00076"></a>00076 } <a class="code" href="group__rpmpgp.html#g4ff5ffb9be6042d0be465ac56d4fb347" title="4.3.">pgpTag</a>;
 
76
<a name="l00077"></a>00077 
 
77
<a name="l00112"></a><a class="code" href="structpgpPktPubkey__s.html">00112</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktPubkey__s.html" title="5.1.">pgpPktPubkey_s</a> {
 
78
<a name="l00113"></a><a class="code" href="structpgpPktPubkey__s.html#2bb317231138c8dd5d58cde3f2d22a0a">00113</a>     uint8_t <a class="code" href="structpgpPktPubkey__s.html#2bb317231138c8dd5d58cde3f2d22a0a">version</a>;    
 
79
<a name="l00114"></a><a class="code" href="structpgpPktPubkey__s.html#cbb7495a3c75dd779b255dc752f1726d">00114</a>     pgpKeyID_t <a class="code" href="structpgpPktPubkey__s.html#cbb7495a3c75dd779b255dc752f1726d">keyid</a>;   
 
80
<a name="l00115"></a><a class="code" href="structpgpPktPubkey__s.html#299a72314f95798b15aca67785bb7d21">00115</a>     uint8_t <a class="code" href="structpgpPktPubkey__s.html#299a72314f95798b15aca67785bb7d21">algo</a>;               
 
81
<a name="l00116"></a>00116 } <a class="code" href="structpgpPktPubkey__s.html" title="5.1.">pgpPktPubkey</a>;
 
82
<a name="l00117"></a>00117 
 
83
<a name="l00118"></a>00118 
 
84
<a name="l00125"></a><a class="code" href="group__rpmpgp.html#g8fc331a64843a9be0bf76cf25bead0bf">00125</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g8fc331a64843a9be0bf76cf25bead0bf" title="5.2.1.">pgpSigType_e</a> {
 
85
<a name="l00126"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfe841827cc53342cc3ecceb5ff5aa6cf9">00126</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfe841827cc53342cc3ecceb5ff5aa6cf9">PGPSIGTYPE_BINARY</a>            = 0x00, 
 
86
<a name="l00127"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfb24192fdaba2decda1a8e34042d8a1e4">00127</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfb24192fdaba2decda1a8e34042d8a1e4">PGPSIGTYPE_TEXT</a>              = 0x01, 
 
87
<a name="l00128"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf197adc0fea3b4bb958024e8cbe850c84">00128</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf197adc0fea3b4bb958024e8cbe850c84">PGPSIGTYPE_STANDALONE</a>        = 0x02, 
 
88
<a name="l00129"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf293d8a998dcfaed816cc1ff17a714e46">00129</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf293d8a998dcfaed816cc1ff17a714e46">PGPSIGTYPE_GENERIC_CERT</a>      = 0x10,
 
89
<a name="l00131"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf79ed848bd4d029be9ff05adc3ef60ea6">00131</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf79ed848bd4d029be9ff05adc3ef60ea6">PGPSIGTYPE_PERSONA_CERT</a>      = 0x11,
 
90
<a name="l00133"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf122e312d376ebfeb909e042e2ccb4da4">00133</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf122e312d376ebfeb909e042e2ccb4da4">PGPSIGTYPE_CASUAL_CERT</a>       = 0x12,
 
91
<a name="l00135"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bff53a95ba695e3629b8d731dc10af9a40">00135</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bff53a95ba695e3629b8d731dc10af9a40">PGPSIGTYPE_POSITIVE_CERT</a>     = 0x13,
 
92
<a name="l00137"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf3e75afdbd98fd9972434d633f6d90fd6">00137</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf3e75afdbd98fd9972434d633f6d90fd6">PGPSIGTYPE_SUBKEY_BINDING</a>    = 0x18, 
 
93
<a name="l00138"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf82f4e47c23ec8d0661ea3738abeb3478">00138</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf82f4e47c23ec8d0661ea3738abeb3478">PGPSIGTYPE_SIGNED_KEY</a>        = 0x1F, 
 
94
<a name="l00139"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf58399361b0718b34cc0b487f07cbb0e0">00139</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bf58399361b0718b34cc0b487f07cbb0e0">PGPSIGTYPE_KEY_REVOKE</a>        = 0x20, 
 
95
<a name="l00140"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfb21e01e9059e681cf2d51e01ec4b6336">00140</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfb21e01e9059e681cf2d51e01ec4b6336">PGPSIGTYPE_SUBKEY_REVOKE</a>     = 0x28, 
 
96
<a name="l00141"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfe379574f637bdccc84247bfc46d0e20c">00141</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bfe379574f637bdccc84247bfc46d0e20c">PGPSIGTYPE_CERT_REVOKE</a>       = 0x30, 
 
97
<a name="l00142"></a><a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bff518cf0629f2f8109d6e0ce4caa7dd10">00142</a>     <a class="code" href="group__rpmpgp.html#gg8fc331a64843a9be0bf76cf25bead0bff518cf0629f2f8109d6e0ce4caa7dd10">PGPSIGTYPE_TIMESTAMP</a>         = 0x40  
 
98
<a name="l00143"></a>00143 } <a class="code" href="group__rpmpgp.html#ge9869ba125578a525c53a0c9e46a24e4" title="5.2.1.">pgpSigType</a>;
 
99
<a name="l00144"></a>00144 
 
100
<a name="l00168"></a><a class="code" href="group__rpmpgp.html#g40b051ecf9ec18b011f737b2244cd038">00168</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g40b051ecf9ec18b011f737b2244cd038" title="9.1.">pgpPubkeyAlgo_e</a> {
 
101
<a name="l00169"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03891f7b078af891e97ae8616c86bddedce">00169</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03891f7b078af891e97ae8616c86bddedce">PGPPUBKEYALGO_RSA</a>           =  1,   
 
102
<a name="l00170"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd0384ce422f00e90edcc1330372d31487545">00170</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd0384ce422f00e90edcc1330372d31487545">PGPPUBKEYALGO_RSA_ENCRYPT</a>   =  2,   
 
103
<a name="l00171"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038e7e09c7561862636b3b3a0323b96ece8">00171</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038e7e09c7561862636b3b3a0323b96ece8">PGPPUBKEYALGO_RSA_SIGN</a>      =  3,   
 
104
<a name="l00172"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03857ecd5de93c9656d175603b22d3d59b6">00172</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03857ecd5de93c9656d175603b22d3d59b6">PGPPUBKEYALGO_ELGAMAL_ENCRYPT</a> = 16, 
 
105
<a name="l00173"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038ed719534d762654b5d2eb00b93c4bab1">00173</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038ed719534d762654b5d2eb00b93c4bab1">PGPPUBKEYALGO_DSA</a>           = 17,   
 
106
<a name="l00174"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd0381bede2a666059bc1ebf80d0bdb1b32fc">00174</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd0381bede2a666059bc1ebf80d0bdb1b32fc">PGPPUBKEYALGO_EC</a>            = 18,   
 
107
<a name="l00175"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038a3bdac71a70299c2c57c53b9fefa5f91">00175</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038a3bdac71a70299c2c57c53b9fefa5f91">PGPPUBKEYALGO_ECDSA</a>         = 19,   
 
108
<a name="l00176"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03812c6ec8279086da012ed55ee8a4e7309">00176</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd03812c6ec8279086da012ed55ee8a4e7309">PGPPUBKEYALGO_ELGAMAL</a>       = 20,   
 
109
<a name="l00177"></a><a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038e3322f781a120133d9bf939b005112dd">00177</a>     <a class="code" href="group__rpmpgp.html#gg40b051ecf9ec18b011f737b2244cd038e3322f781a120133d9bf939b005112dd">PGPPUBKEYALGO_DH</a>            = 21    
 
110
<a name="l00178"></a>00178 } <a class="code" href="group__rpmpgp.html#g0e195ec1e32dbb57732117dd9150debe" title="9.1.">pgpPubkeyAlgo</a>;
 
111
<a name="l00179"></a>00179 
 
112
<a name="l00204"></a><a class="code" href="group__rpmpgp.html#gc8c3ed89eddef12181226cb4807ee45c">00204</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#gc8c3ed89eddef12181226cb4807ee45c" title="9.2.">pgpSymkeyAlgo_e</a> {
 
113
<a name="l00205"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c6c09037a3e780a86af239085438d68f1">00205</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c6c09037a3e780a86af239085438d68f1">PGPSYMKEYALGO_PLAINTEXT</a>     =  0,   
 
114
<a name="l00206"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce90df676be3a93c8d48220dc3c543352">00206</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce90df676be3a93c8d48220dc3c543352">PGPSYMKEYALGO_IDEA</a>          =  1,   
 
115
<a name="l00207"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cda8077f1f82f7660f52cd2004b28795e">00207</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cda8077f1f82f7660f52cd2004b28795e">PGPSYMKEYALGO_TRIPLE_DES</a>    =  2,   
 
116
<a name="l00208"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce461b7074c1811ee6e63beeb7fa24f62">00208</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce461b7074c1811ee6e63beeb7fa24f62">PGPSYMKEYALGO_CAST5</a>         =  3,   
 
117
<a name="l00209"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c31ca752be45facf1ccef4906c50016c9">00209</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c31ca752be45facf1ccef4906c50016c9">PGPSYMKEYALGO_BLOWFISH</a>      =  4,   
 
118
<a name="l00210"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce62399e1294a7a301fcc8d423c5e7b4b">00210</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45ce62399e1294a7a301fcc8d423c5e7b4b">PGPSYMKEYALGO_SAFER</a>         =  5,   
 
119
<a name="l00211"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c08e35418b399d1366050484f3d9be444">00211</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c08e35418b399d1366050484f3d9be444">PGPSYMKEYALGO_DES_SK</a>        =  6,   
 
120
<a name="l00212"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cf870d8bef1d290994a002e00c02fa3df">00212</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cf870d8bef1d290994a002e00c02fa3df">PGPSYMKEYALGO_AES_128</a>       =  7,   
 
121
<a name="l00213"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c6ca74ad752e27d1ed0bd73a3d168cea2">00213</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c6ca74ad752e27d1ed0bd73a3d168cea2">PGPSYMKEYALGO_AES_192</a>       =  8,   
 
122
<a name="l00214"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cb1f0ca67770ac48c0f2f36a541593104">00214</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cb1f0ca67770ac48c0f2f36a541593104">PGPSYMKEYALGO_AES_256</a>       =  9,   
 
123
<a name="l00215"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cb8a37c8c19801c3efb44a3bb2b25c2ba">00215</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45cb8a37c8c19801c3efb44a3bb2b25c2ba">PGPSYMKEYALGO_TWOFISH</a>       = 10,   
 
124
<a name="l00216"></a><a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c74090b9a0adfe1420338d9e274e1f380">00216</a>     <a class="code" href="group__rpmpgp.html#ggc8c3ed89eddef12181226cb4807ee45c74090b9a0adfe1420338d9e274e1f380">PGPSYMKEYALGO_NOENCRYPT</a>     = 110   
 
125
<a name="l00217"></a>00217 } <a class="code" href="group__rpmpgp.html#ge4ba1b886b1d8c23de2b6a9ad5322814" title="9.2.">pgpSymkeyAlgo</a>;
 
126
<a name="l00218"></a>00218 
 
127
<a name="l00234"></a><a class="code" href="group__rpmpgp.html#g2ae3d1c6f7cb5e30f43d8fcf5b346568">00234</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g2ae3d1c6f7cb5e30f43d8fcf5b346568" title="9.3.">pgpCompressAlgo_e</a> {
 
128
<a name="l00235"></a><a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b34656842116574ad0c4d1f5283843489d74d97">00235</a>     <a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b34656842116574ad0c4d1f5283843489d74d97">PGPCOMPRESSALGO_NONE</a>        =  0,   
 
129
<a name="l00236"></a><a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568e6a36fd7df3c0d8d44fdb38d44980f5e">00236</a>     <a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568e6a36fd7df3c0d8d44fdb38d44980f5e">PGPCOMPRESSALGO_ZIP</a>         =  1,   
 
130
<a name="l00237"></a><a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568daeeebf957f73d397aafefa2170dea34">00237</a>     <a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568daeeebf957f73d397aafefa2170dea34">PGPCOMPRESSALGO_ZLIB</a>        =  2,   
 
131
<a name="l00238"></a><a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568981ed240d5f437eacc0925a567632354">00238</a>     <a class="code" href="group__rpmpgp.html#gg2ae3d1c6f7cb5e30f43d8fcf5b346568981ed240d5f437eacc0925a567632354">PGPCOMPRESSALGO_BZIP2</a>       =  3    
 
132
<a name="l00239"></a>00239 } <a class="code" href="group__rpmpgp.html#g7ccde0a95f38b5c6aa6d7c71858f09c2" title="9.3.">pgpCompressAlgo</a>;
 
133
<a name="l00240"></a>00240 
 
134
<a name="l00262"></a><a class="code" href="group__rpmpgp.html#g8d48cf9c33d66a07d2fee34b0875d54e">00262</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g8d48cf9c33d66a07d2fee34b0875d54e" title="9.4.">pgpHashAlgo_e</a> {
 
135
<a name="l00263"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54ed06371dade65fdf985086d1461218820">00263</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54ed06371dade65fdf985086d1461218820">PGPHASHALGO_MD5</a>             =  1,   
 
136
<a name="l00264"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54efadb8ed49f2346f83847d7ef8e0efe24">00264</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54efadb8ed49f2346f83847d7ef8e0efe24">PGPHASHALGO_SHA1</a>            =  2,   
 
137
<a name="l00265"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e4504cec1d192341bba8b61e8ea247a54">00265</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e4504cec1d192341bba8b61e8ea247a54">PGPHASHALGO_RIPEMD160</a>       =  3,   
 
138
<a name="l00266"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e322cbc66a629ad8b3cfff47a0afb4c6b">00266</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e322cbc66a629ad8b3cfff47a0afb4c6b">PGPHASHALGO_MD2</a>             =  5,   
 
139
<a name="l00267"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e4ce911926cfe4e14187900b8540bc546">00267</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e4ce911926cfe4e14187900b8540bc546">PGPHASHALGO_TIGER192</a>        =  6,   
 
140
<a name="l00268"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e2645f0e71da93e9df6a98fae0f6206f6">00268</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e2645f0e71da93e9df6a98fae0f6206f6">PGPHASHALGO_HAVAL_5_160</a>     =  7,   
 
141
<a name="l00269"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e1318894b57fbacba8ca82305ba5198f2">00269</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e1318894b57fbacba8ca82305ba5198f2">PGPHASHALGO_SHA256</a>          =  8,   
 
142
<a name="l00270"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e02392fb7e4ada02a9d7fc6e09ef2dbb2">00270</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54e02392fb7e4ada02a9d7fc6e09ef2dbb2">PGPHASHALGO_SHA384</a>          =  9,   
 
143
<a name="l00271"></a><a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54ead5f6348a6d370be440d76cac0f7d9d2">00271</a>     <a class="code" href="group__rpmpgp.html#gg8d48cf9c33d66a07d2fee34b0875d54ead5f6348a6d370be440d76cac0f7d9d2">PGPHASHALGO_SHA512</a>          = 10,   
 
144
<a name="l00272"></a>00272 } <a class="code" href="group__rpmpgp.html#g7dfcf98c6e163d995601e76dc0797ca1" title="9.4.">pgpHashAlgo</a>;
 
145
<a name="l00273"></a>00273 
 
146
<a name="l00295"></a><a class="code" href="structpgpPktSigV3__s.html">00295</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktSigV3__s.html" title="5.2.2.">pgpPktSigV3_s</a> {
 
147
<a name="l00296"></a><a class="code" href="structpgpPktSigV3__s.html#12562561708e05e645d3e173c2cf2339">00296</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#12562561708e05e645d3e173c2cf2339">version</a>;    
 
148
<a name="l00297"></a><a class="code" href="structpgpPktSigV3__s.html#b02d0b72390965de30b8507996a4f68f">00297</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#b02d0b72390965de30b8507996a4f68f">hashlen</a>;    
 
149
<a name="l00298"></a><a class="code" href="structpgpPktSigV3__s.html#aa7b5317c774b2711833442b60e234ac">00298</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#aa7b5317c774b2711833442b60e234ac">sigtype</a>;    
 
150
<a name="l00299"></a><a class="code" href="structpgpPktSigV3__s.html#50d7922f190fbfb51862fe412e8c0e36">00299</a>     pgpTime_t <a class="code" href="structpgpPktSigV3__s.html#50d7922f190fbfb51862fe412e8c0e36">time</a>;     
 
151
<a name="l00300"></a><a class="code" href="structpgpPktSigV3__s.html#64e8dc971d519bbdcb7f455608e30b94">00300</a>     pgpKeyID_t <a class="code" href="structpgpPktSigV3__s.html#64e8dc971d519bbdcb7f455608e30b94">signid</a>;  
 
152
<a name="l00301"></a><a class="code" href="structpgpPktSigV3__s.html#db3db84fab8f2773cab9ced97e124eec">00301</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#db3db84fab8f2773cab9ced97e124eec">pubkey_algo</a>;        
 
153
<a name="l00302"></a><a class="code" href="structpgpPktSigV3__s.html#f15ea5979bc9bc9f48d4e706cc7d58f6">00302</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#f15ea5979bc9bc9f48d4e706cc7d58f6">hash_algo</a>;  
 
154
<a name="l00303"></a><a class="code" href="structpgpPktSigV3__s.html#941fceb4ef3a39f485e17e68cd4917fa">00303</a>     uint8_t <a class="code" href="structpgpPktSigV3__s.html#941fceb4ef3a39f485e17e68cd4917fa">signhash16</a>[2];      
 
155
<a name="l00304"></a>00304 } * <a class="code" href="structpgpPktSigV3__s.html" title="5.2.2.">pgpPktSigV3</a>;
 
156
<a name="l00305"></a>00305 
 
157
<a name="l00327"></a><a class="code" href="structpgpPktSigV4__s.html">00327</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktSigV4__s.html" title="5.2.3.">pgpPktSigV4_s</a> {
 
158
<a name="l00328"></a><a class="code" href="structpgpPktSigV4__s.html#36c52e02ee235ac6a769ec64b79d7220">00328</a>     uint8_t <a class="code" href="structpgpPktSigV4__s.html#36c52e02ee235ac6a769ec64b79d7220">version</a>;    
 
159
<a name="l00329"></a><a class="code" href="structpgpPktSigV4__s.html#f2c88aee7ee5c919983303eea9f39ece">00329</a>     uint8_t <a class="code" href="structpgpPktSigV4__s.html#f2c88aee7ee5c919983303eea9f39ece">sigtype</a>;    
 
160
<a name="l00330"></a><a class="code" href="structpgpPktSigV4__s.html#f815fec07d770c7966faadcbe5765973">00330</a>     uint8_t <a class="code" href="structpgpPktSigV4__s.html#f815fec07d770c7966faadcbe5765973">pubkey_algo</a>;        
 
161
<a name="l00331"></a><a class="code" href="structpgpPktSigV4__s.html#34b5c6c7965c8422cd5e77c7f8adb32f">00331</a>     uint8_t <a class="code" href="structpgpPktSigV4__s.html#34b5c6c7965c8422cd5e77c7f8adb32f">hash_algo</a>;  
 
162
<a name="l00332"></a><a class="code" href="structpgpPktSigV4__s.html#48838e474c48d4dcedec4d47bde2b0fc">00332</a>     uint8_t <a class="code" href="structpgpPktSigV4__s.html#48838e474c48d4dcedec4d47bde2b0fc">hashlen</a>[2]; 
 
163
<a name="l00333"></a>00333 } * <a class="code" href="structpgpPktSigV4__s.html" title="5.2.3.">pgpPktSigV4</a>;
 
164
<a name="l00334"></a>00334 
 
165
<a name="l00401"></a><a class="code" href="group__rpmpgp.html#gf7c49d4300658e87516ebfb81f8e041d">00401</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#gf7c49d4300658e87516ebfb81f8e041d" title="5.2.3.1.">pgpSubType_e</a> {
 
166
<a name="l00402"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d97c11dbc19602d1d93d53e6d818a4558">00402</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d97c11dbc19602d1d93d53e6d818a4558">PGPSUBTYPE_NONE</a>             =   0, 
 
167
<a name="l00403"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d9e7222744113921d5cf8b20e14d7f57c">00403</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d9e7222744113921d5cf8b20e14d7f57c">PGPSUBTYPE_SIG_CREATE_TIME</a>  =   2, 
 
168
<a name="l00404"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d526f6a7a1899e996ceca345428c04c8a">00404</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d526f6a7a1899e996ceca345428c04c8a">PGPSUBTYPE_SIG_EXPIRE_TIME</a>  =   3, 
 
169
<a name="l00405"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d1451a6cf5fbe26619fdf16818547fcdf">00405</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d1451a6cf5fbe26619fdf16818547fcdf">PGPSUBTYPE_EXPORTABLE_CERT</a>  =   4, 
 
170
<a name="l00406"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d4e66df34323715dafe471184dc8000b2">00406</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d4e66df34323715dafe471184dc8000b2">PGPSUBTYPE_TRUST_SIG</a>        =   5, 
 
171
<a name="l00407"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041ddb8c1aa0aff5e221c18bef8b84c8b605">00407</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041ddb8c1aa0aff5e221c18bef8b84c8b605">PGPSUBTYPE_REGEX</a>            =   6, 
 
172
<a name="l00408"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d36ed094458149134b4fbd88025d2b87e">00408</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d36ed094458149134b4fbd88025d2b87e">PGPSUBTYPE_REVOCABLE</a>        =   7, 
 
173
<a name="l00409"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d58c94d02e28cd878d106a8eda9bfb79e">00409</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d58c94d02e28cd878d106a8eda9bfb79e">PGPSUBTYPE_KEY_EXPIRE_TIME</a>  =   9, 
 
174
<a name="l00410"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d17677d3f2164d55a4dc887617a332a0f">00410</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d17677d3f2164d55a4dc887617a332a0f">PGPSUBTYPE_ARR</a>              =  10, 
 
175
<a name="l00411"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d525e0b78852c3abccaf403213de22e02">00411</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d525e0b78852c3abccaf403213de22e02">PGPSUBTYPE_PREFER_SYMKEY</a>    =  11, 
 
176
<a name="l00412"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d5e55a167d0124e88c5e60507c5ca449c">00412</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d5e55a167d0124e88c5e60507c5ca449c">PGPSUBTYPE_REVOKE_KEY</a>       =  12, 
 
177
<a name="l00413"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d22677a6b05e228c0fc564e6b4e0dfbda">00413</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d22677a6b05e228c0fc564e6b4e0dfbda">PGPSUBTYPE_ISSUER_KEYID</a>     =  16, 
 
178
<a name="l00414"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d1d48cfb57614e4a01a7eb07fca00fd97">00414</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d1d48cfb57614e4a01a7eb07fca00fd97">PGPSUBTYPE_NOTATION</a>         =  20, 
 
179
<a name="l00415"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d7d3f4b2d34c671240788e8bca49a9580">00415</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d7d3f4b2d34c671240788e8bca49a9580">PGPSUBTYPE_PREFER_HASH</a>      =  21, 
 
180
<a name="l00416"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d58584fddfdeef5d5ea375dbe29319d12">00416</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d58584fddfdeef5d5ea375dbe29319d12">PGPSUBTYPE_PREFER_COMPRESS</a>  =  22, 
 
181
<a name="l00417"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db0588f709a72dbbb24df4d872c5635dd">00417</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db0588f709a72dbbb24df4d872c5635dd">PGPSUBTYPE_KEYSERVER_PREFERS</a>=  23, 
 
182
<a name="l00418"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcc497ba26f58be5754836241207edfe7">00418</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcc497ba26f58be5754836241207edfe7">PGPSUBTYPE_PREFER_KEYSERVER</a> =  24, 
 
183
<a name="l00419"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041de940cbd0b831fa3689c69ff6243b2b44">00419</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041de940cbd0b831fa3689c69ff6243b2b44">PGPSUBTYPE_PRIMARY_USERID</a>   =  25, 
 
184
<a name="l00420"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d39aa4ee49a89cbccd25cc482d8c04ca7">00420</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d39aa4ee49a89cbccd25cc482d8c04ca7">PGPSUBTYPE_POLICY_URL</a>       =  26, 
 
185
<a name="l00421"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dfae3861ad4ee9285adb5e64956abbf53">00421</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dfae3861ad4ee9285adb5e64956abbf53">PGPSUBTYPE_KEY_FLAGS</a>        =  27, 
 
186
<a name="l00422"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d57bfbacab215b76690a353cf5fe9783b">00422</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d57bfbacab215b76690a353cf5fe9783b">PGPSUBTYPE_SIGNER_USERID</a>    =  28, 
 
187
<a name="l00423"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041da2d86c6b6bee869b2bd5c5be9318ccab">00423</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041da2d86c6b6bee869b2bd5c5be9318ccab">PGPSUBTYPE_REVOKE_REASON</a>    =  29, 
 
188
<a name="l00424"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d3a5b9edee78162c3a50f9b480c038d48">00424</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d3a5b9edee78162c3a50f9b480c038d48">PGPSUBTYPE_FEATURES</a>         =  30, 
 
189
<a name="l00425"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d0aa79e158e26f2923135a677d99ffa15">00425</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d0aa79e158e26f2923135a677d99ffa15">PGPSUBTYPE_EMBEDDED_SIG</a>     =  32, 
 
190
<a name="l00427"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcb2f8f533eb9d0406d8422800a1b175c">00427</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcb2f8f533eb9d0406d8422800a1b175c">PGPSUBTYPE_INTERNAL_100</a>     = 100, 
 
191
<a name="l00428"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d60010a659dff5b9d599fe0b690399f69">00428</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d60010a659dff5b9d599fe0b690399f69">PGPSUBTYPE_INTERNAL_101</a>     = 101, 
 
192
<a name="l00429"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041deefef14c750831ee5aea056293671637">00429</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041deefef14c750831ee5aea056293671637">PGPSUBTYPE_INTERNAL_102</a>     = 102, 
 
193
<a name="l00430"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041df311a5f7c5b9c1327ce9f1634bb171d3">00430</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041df311a5f7c5b9c1327ce9f1634bb171d3">PGPSUBTYPE_INTERNAL_103</a>     = 103, 
 
194
<a name="l00431"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d54386a56a42127b48d6ca73b708a8a08">00431</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041d54386a56a42127b48d6ca73b708a8a08">PGPSUBTYPE_INTERNAL_104</a>     = 104, 
 
195
<a name="l00432"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcaf3883247aedf748c70964ba6dddfbd">00432</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dcaf3883247aedf748c70964ba6dddfbd">PGPSUBTYPE_INTERNAL_105</a>     = 105, 
 
196
<a name="l00433"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dfa185f0fa35df8b170c3a51db4e6b1c3">00433</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dfa185f0fa35df8b170c3a51db4e6b1c3">PGPSUBTYPE_INTERNAL_106</a>     = 106, 
 
197
<a name="l00434"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dd03bc2108340c16b20c6b881b70d5fa5">00434</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dd03bc2108340c16b20c6b881b70d5fa5">PGPSUBTYPE_INTERNAL_107</a>     = 107, 
 
198
<a name="l00435"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dbdfcf0638ecee358ca9cb826f21238b0">00435</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dbdfcf0638ecee358ca9cb826f21238b0">PGPSUBTYPE_INTERNAL_108</a>     = 108, 
 
199
<a name="l00436"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dbdbaf1a24c7901076918782fb030b37f">00436</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041dbdbaf1a24c7901076918782fb030b37f">PGPSUBTYPE_INTERNAL_109</a>     = 109, 
 
200
<a name="l00437"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db5537c060cb07f88cc866d0172436500">00437</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db5537c060cb07f88cc866d0172436500">PGPSUBTYPE_INTERNAL_110</a>     = 110, 
 
201
<a name="l00439"></a><a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db21138b11eaef5865715aa6dcebb39a4">00439</a>     <a class="code" href="group__rpmpgp.html#ggf7c49d4300658e87516ebfb81f8e041db21138b11eaef5865715aa6dcebb39a4">PGPSUBTYPE_CRITICAL</a>         = 128  
 
202
<a name="l00440"></a>00440 } <a class="code" href="group__rpmpgp.html#g59ca7b8a7b182fd293e016e7620850c5" title="5.2.3.1.">pgpSubType</a>;
 
203
<a name="l00441"></a>00441 
 
204
<a name="l00462"></a><a class="code" href="unionpgpPktSig__u.html">00462</a> <span class="keyword">typedef</span> <span class="keyword">union </span><a class="code" href="unionpgpPktSig__u.html" title="5.2.">pgpPktSig_u</a> {
 
205
<a name="l00463"></a><a class="code" href="unionpgpPktSig__u.html#f78d1e0b0983cdd4795a2dd06747a1a6">00463</a>     <span class="keyword">struct </span><a class="code" href="structpgpPktSigV3__s.html" title="5.2.2.">pgpPktSigV3_s</a> <a class="code" href="unionpgpPktSig__u.html#f78d1e0b0983cdd4795a2dd06747a1a6">v3</a>;
 
206
<a name="l00464"></a><a class="code" href="unionpgpPktSig__u.html#86370ec8ce90b06a3d439d1605c4e662">00464</a>     <span class="keyword">struct </span><a class="code" href="structpgpPktSigV4__s.html" title="5.2.3.">pgpPktSigV4_s</a> <a class="code" href="unionpgpPktSig__u.html#86370ec8ce90b06a3d439d1605c4e662">v4</a>;
 
207
<a name="l00465"></a>00465 } * <a class="code" href="unionpgpPktSig__u.html" title="5.2.">pgpPktSig</a>;
 
208
<a name="l00466"></a>00466 
 
209
<a name="l00495"></a><a class="code" href="structpgpPktSymkey__s.html">00495</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktSymkey__s.html" title="5.3.">pgpPktSymkey_s</a> {
 
210
<a name="l00496"></a><a class="code" href="structpgpPktSymkey__s.html#c349e9715dee13590c8bb75360b16704">00496</a>     uint8_t <a class="code" href="structpgpPktSymkey__s.html#c349e9715dee13590c8bb75360b16704">version</a>;    
 
211
<a name="l00497"></a><a class="code" href="structpgpPktSymkey__s.html#f4bba23640c350ffc24999b6fa3ad176">00497</a>     uint8_t <a class="code" href="structpgpPktSymkey__s.html#f4bba23640c350ffc24999b6fa3ad176">symkey_algo</a>;
 
212
<a name="l00498"></a><a class="code" href="structpgpPktSymkey__s.html#ca1ab9d5fb064f098950cc0d3004d19f">00498</a>     uint8_t <a class="code" href="structpgpPktSymkey__s.html#ca1ab9d5fb064f098950cc0d3004d19f">s2k</a>[1];
 
213
<a name="l00499"></a>00499 } <a class="code" href="structpgpPktSymkey__s.html" title="5.3.">pgpPktSymkey</a>;
 
214
<a name="l00500"></a>00500 
 
215
<a name="l00530"></a><a class="code" href="structpgpPktOnepass__s.html">00530</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktOnepass__s.html" title="5.4.">pgpPktOnepass_s</a> {
 
216
<a name="l00531"></a><a class="code" href="structpgpPktOnepass__s.html#7b147df58803e1cce74876a1b20086c1">00531</a>     uint8_t <a class="code" href="structpgpPktOnepass__s.html#7b147df58803e1cce74876a1b20086c1">version</a>;    
 
217
<a name="l00532"></a><a class="code" href="structpgpPktOnepass__s.html#0910d2454ddd5b6224413e02d671acdd">00532</a>     uint8_t <a class="code" href="structpgpPktOnepass__s.html#0910d2454ddd5b6224413e02d671acdd">sigtype</a>;    
 
218
<a name="l00533"></a><a class="code" href="structpgpPktOnepass__s.html#c005bbb67a077515b4f239a6f1730430">00533</a>     uint8_t <a class="code" href="structpgpPktOnepass__s.html#c005bbb67a077515b4f239a6f1730430">hash_algo</a>;  
 
219
<a name="l00534"></a><a class="code" href="structpgpPktOnepass__s.html#504c5536c91f6731b0dac19dc09a72f9">00534</a>     uint8_t <a class="code" href="structpgpPktOnepass__s.html#504c5536c91f6731b0dac19dc09a72f9">pubkey_algo</a>;        
 
220
<a name="l00535"></a><a class="code" href="structpgpPktOnepass__s.html#68be25a3db27512f20623670d8335d43">00535</a>     pgpKeyID_t <a class="code" href="structpgpPktOnepass__s.html#68be25a3db27512f20623670d8335d43">signid</a>;  
 
221
<a name="l00536"></a><a class="code" href="structpgpPktOnepass__s.html#caba90b9edede020244e7488df4ff6dd">00536</a>     uint8_t <a class="code" href="structpgpPktOnepass__s.html#caba90b9edede020244e7488df4ff6dd">nested</a>;
 
222
<a name="l00537"></a>00537 } * <a class="code" href="structpgpPktOnepass__s.html" title="5.4.">pgpPktOnepass</a>;
 
223
<a name="l00538"></a>00538 
 
224
<a name="l00611"></a><a class="code" href="structpgpPktKeyV3__s.html">00611</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktKeyV3__s.html" title="5.5.1.">pgpPktKeyV3_s</a> {
 
225
<a name="l00612"></a><a class="code" href="structpgpPktKeyV3__s.html#938936d2df98d45bb79147754c8a436b">00612</a>     uint8_t <a class="code" href="structpgpPktKeyV3__s.html#938936d2df98d45bb79147754c8a436b">version</a>;    
 
226
<a name="l00613"></a><a class="code" href="structpgpPktKeyV3__s.html#d3766ee054726e1b0ff0899cdb908f8b">00613</a>     pgpTime_t <a class="code" href="structpgpPktKeyV3__s.html#d3766ee054726e1b0ff0899cdb908f8b">time</a>;     
 
227
<a name="l00614"></a><a class="code" href="structpgpPktKeyV3__s.html#fff1851a4fc5e7f5039056d369dd0979">00614</a>     uint8_t <a class="code" href="structpgpPktKeyV3__s.html#fff1851a4fc5e7f5039056d369dd0979">valid</a>[2];   
 
228
<a name="l00615"></a><a class="code" href="structpgpPktKeyV3__s.html#bbe632000557097d1d37374901ef1670">00615</a>     uint8_t <a class="code" href="structpgpPktKeyV3__s.html#bbe632000557097d1d37374901ef1670">pubkey_algo</a>;        
 
229
<a name="l00616"></a>00616 } * <a class="code" href="structpgpPktKeyV3__s.html" title="5.5.1.">pgpPktKeyV3</a>;
 
230
<a name="l00617"></a>00617 
 
231
<a name="l00649"></a><a class="code" href="structpgpPktKeyV4__s.html">00649</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktKeyV4__s.html" title="The version 4 format is similar to the version 3 format except for the absence of...">pgpPktKeyV4_s</a> {
 
232
<a name="l00650"></a><a class="code" href="structpgpPktKeyV4__s.html#e2474cfd7306fc9741f20a2535ab8cde">00650</a>     uint8_t <a class="code" href="structpgpPktKeyV4__s.html#e2474cfd7306fc9741f20a2535ab8cde">version</a>;    
 
233
<a name="l00651"></a><a class="code" href="structpgpPktKeyV4__s.html#db0c5a03e0070860f64af4b322d31c8d">00651</a>     pgpTime_t <a class="code" href="structpgpPktKeyV4__s.html#db0c5a03e0070860f64af4b322d31c8d">time</a>;     
 
234
<a name="l00652"></a><a class="code" href="structpgpPktKeyV4__s.html#b764c519e8a4c1e89df685930334e3ce">00652</a>     uint8_t <a class="code" href="structpgpPktKeyV4__s.html#b764c519e8a4c1e89df685930334e3ce">pubkey_algo</a>;        
 
235
<a name="l00653"></a>00653 } * <a class="code" href="structpgpPktKeyV4__s.html" title="The version 4 format is similar to the version 3 format except for the absence of...">pgpPktKeyV4</a>;
 
236
<a name="l00654"></a>00654 
 
237
<a name="l00719"></a><a class="code" href="unionpgpPktKey__u.html">00719</a> <span class="keyword">typedef</span> <span class="keyword">union </span><a class="code" href="unionpgpPktKey__u.html" title="5.5.3.">pgpPktKey_u</a> {
 
238
<a name="l00720"></a><a class="code" href="unionpgpPktKey__u.html#58cc24c50cca476a4866af7bba078bc9">00720</a>     <span class="keyword">struct </span><a class="code" href="structpgpPktKeyV3__s.html" title="5.5.1.">pgpPktKeyV3_s</a> <a class="code" href="unionpgpPktKey__u.html#58cc24c50cca476a4866af7bba078bc9">v3</a>;
 
239
<a name="l00721"></a><a class="code" href="unionpgpPktKey__u.html#d0503ceaf2878cd3cd9a47b287a1d5a6">00721</a>     <span class="keyword">struct </span><a class="code" href="structpgpPktKeyV4__s.html" title="The version 4 format is similar to the version 3 format except for the absence of...">pgpPktKeyV4_s</a> <a class="code" href="unionpgpPktKey__u.html#d0503ceaf2878cd3cd9a47b287a1d5a6">v4</a>;
 
240
<a name="l00722"></a>00722 } <a class="code" href="unionpgpPktKey__u.html" title="5.5.3.">pgpPktKey</a>;
 
241
<a name="l00723"></a>00723 
 
242
<a name="l00724"></a>00724 <span class="comment">/* \ingroup rpmpgp</span>
 
243
<a name="l00725"></a>00725 <span class="comment"> * 5.6. Compressed Data Packet (Tag 8)</span>
 
244
<a name="l00726"></a>00726 <span class="comment"> *</span>
 
245
<a name="l00727"></a>00727 <span class="comment"> * The Compressed Data packet contains compressed data. Typically, this</span>
 
246
<a name="l00728"></a>00728 <span class="comment"> * packet is found as the contents of an encrypted packet, or following</span>
 
247
<a name="l00729"></a>00729 <span class="comment"> * a Signature or One-Pass Signature packet, and contains literal data</span>
 
248
<a name="l00730"></a>00730 <span class="comment"> * packets.</span>
 
249
<a name="l00731"></a>00731 <span class="comment"> *</span>
 
250
<a name="l00732"></a>00732 <span class="comment"> * The body of this packet consists of:</span>
 
251
<a name="l00733"></a>00733 <span class="comment"> *   - One octet that gives the algorithm used to compress the packet.</span>
 
252
<a name="l00734"></a>00734 <span class="comment"> *   - The remainder of the packet is compressed data.</span>
 
253
<a name="l00735"></a>00735 <span class="comment"> *</span>
 
254
<a name="l00736"></a>00736 <span class="comment"> * A Compressed Data Packet's body contains an block that compresses</span>
 
255
<a name="l00737"></a>00737 <span class="comment"> * some set of packets. See section "Packet Composition" for details on</span>
 
256
<a name="l00738"></a>00738 <span class="comment"> * how messages are formed.</span>
 
257
<a name="l00739"></a>00739 <span class="comment"> *</span>
 
258
<a name="l00740"></a>00740 <span class="comment"> * ZIP-compressed packets are compressed with raw RFC 1951 DEFLATE</span>
 
259
<a name="l00741"></a>00741 <span class="comment"> * blocks. Note that PGP V2.6 uses 13 bits of compression. If an</span>
 
260
<a name="l00742"></a>00742 <span class="comment"> * implementation uses more bits of compression, PGP V2.6 cannot</span>
 
261
<a name="l00743"></a>00743 <span class="comment"> * decompress it.</span>
 
262
<a name="l00744"></a>00744 <span class="comment"> *</span>
 
263
<a name="l00745"></a>00745 <span class="comment"> * ZLIB-compressed packets are compressed with RFC 1950 ZLIB-style</span>
 
264
<a name="l00746"></a>00746 <span class="comment"> * blocks.</span>
 
265
<a name="l00747"></a>00747 <span class="comment"> */</span>
 
266
<a name="l00748"></a><a class="code" href="structpgpPktCdata__s.html">00748</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktCdata__s.html">pgpPktCdata_s</a> {
 
267
<a name="l00749"></a><a class="code" href="structpgpPktCdata__s.html#9b4d3d0c16d6d2c7e30ae60638dd5957">00749</a>     uint8_t <a class="code" href="structpgpPktCdata__s.html#9b4d3d0c16d6d2c7e30ae60638dd5957">compressalgo</a>;
 
268
<a name="l00750"></a><a class="code" href="structpgpPktCdata__s.html#e5525387c604b527197f27dca841ad64">00750</a>     uint8_t <a class="code" href="structpgpPktCdata__s.html#e5525387c604b527197f27dca841ad64">data</a>[1];
 
269
<a name="l00751"></a>00751 } <a class="code" href="structpgpPktCdata__s.html">pgpPktCdata</a>;
 
270
<a name="l00752"></a>00752 
 
271
<a name="l00753"></a>00753 <span class="comment">/* \ingroup rpmpgp</span>
 
272
<a name="l00754"></a>00754 <span class="comment"> * 5.7. Symmetrically Encrypted Data Packet (Tag 9)</span>
 
273
<a name="l00755"></a>00755 <span class="comment"> *</span>
 
274
<a name="l00756"></a>00756 <span class="comment"> * The Symmetrically Encrypted Data packet contains data encrypted with</span>
 
275
<a name="l00757"></a>00757 <span class="comment"> * a symmetric-key algorithm. When it has been decrypted, it will</span>
 
276
<a name="l00758"></a>00758 <span class="comment"> * typically contain other packets (often literal data packets or</span>
 
277
<a name="l00759"></a>00759 <span class="comment"> * compressed data packets).</span>
 
278
<a name="l00760"></a>00760 <span class="comment"> *</span>
 
279
<a name="l00761"></a>00761 <span class="comment"> * The body of this packet consists of:</span>
 
280
<a name="l00762"></a>00762 <span class="comment"> *   - Encrypted data, the output of the selected symmetric-key cipher</span>
 
281
<a name="l00763"></a>00763 <span class="comment"> *     operating in PGP's variant of Cipher Feedback (CFB) mode.</span>
 
282
<a name="l00764"></a>00764 <span class="comment"> *</span>
 
283
<a name="l00765"></a>00765 <span class="comment"> * The symmetric cipher used may be specified in an Public-Key or</span>
 
284
<a name="l00766"></a>00766 <span class="comment"> * Symmetric-Key Encrypted Session Key packet that precedes the</span>
 
285
<a name="l00767"></a>00767 <span class="comment"> * Symmetrically Encrypted Data Packet.  In that case, the cipher</span>
 
286
<a name="l00768"></a>00768 <span class="comment"> * algorithm octet is prefixed to the session key before it is</span>
 
287
<a name="l00769"></a>00769 <span class="comment"> * encrypted.  If no packets of these types precede the encrypted data,</span>
 
288
<a name="l00770"></a>00770 <span class="comment"> * the IDEA algorithm is used with the session key calculated as the MD5</span>
 
289
<a name="l00771"></a>00771 <span class="comment"> * hash of the passphrase.</span>
 
290
<a name="l00772"></a>00772 <span class="comment"> *</span>
 
291
<a name="l00773"></a>00773 <span class="comment"> * The data is encrypted in CFB mode, with a CFB shift size equal to the</span>
 
292
<a name="l00774"></a>00774 <span class="comment"> * cipher's block size.  The Initial Vector (IV) is specified as all</span>
 
293
<a name="l00775"></a>00775 <span class="comment"> * zeros.  Instead of using an IV, OpenPGP prefixes a 10-octet string to</span>
 
294
<a name="l00776"></a>00776 <span class="comment"> * the data before it is encrypted.  The first eight octets are random,</span>
 
295
<a name="l00777"></a>00777 <span class="comment"> * and the 9th and 10th octets are copies of the 7th and 8th octets,</span>
 
296
<a name="l00778"></a>00778 <span class="comment"> * respectively. After encrypting the first 10 octets, the CFB state is</span>
 
297
<a name="l00779"></a>00779 <span class="comment"> * resynchronized if the cipher block size is 8 octets or less.  The</span>
 
298
<a name="l00780"></a>00780 <span class="comment"> * last 8 octets of ciphertext are passed through the cipher and the</span>
 
299
<a name="l00781"></a>00781 <span class="comment"> * block boundary is reset.</span>
 
300
<a name="l00782"></a>00782 <span class="comment"> *</span>
 
301
<a name="l00783"></a>00783 <span class="comment"> * The repetition of 16 bits in the 80 bits of random data prefixed to</span>
 
302
<a name="l00784"></a>00784 <span class="comment"> * the message allows the receiver to immediately check whether the</span>
 
303
<a name="l00785"></a>00785 <span class="comment"> * session key is incorrect.</span>
 
304
<a name="l00786"></a>00786 <span class="comment"> */</span>
 
305
<a name="l00787"></a><a class="code" href="structpgpPktEdata__s.html">00787</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktEdata__s.html">pgpPktEdata_s</a> {
 
306
<a name="l00788"></a><a class="code" href="structpgpPktEdata__s.html#3f1ac6601081a34e40fa2e50afcfc9ae">00788</a>     uint8_t <a class="code" href="structpgpPktEdata__s.html#3f1ac6601081a34e40fa2e50afcfc9ae">data</a>[1];
 
307
<a name="l00789"></a>00789 } <a class="code" href="structpgpPktEdata__s.html">pgpPktEdata</a>;
 
308
<a name="l00790"></a>00790 
 
309
<a name="l00791"></a>00791 <span class="comment">/* \ingroup rpmpgp</span>
 
310
<a name="l00792"></a>00792 <span class="comment"> * 5.8. Marker Packet (Obsolete Literal Packet) (Tag 10)</span>
 
311
<a name="l00793"></a>00793 <span class="comment"> *</span>
 
312
<a name="l00794"></a>00794 <span class="comment"> * An experimental version of PGP used this packet as the Literal</span>
 
313
<a name="l00795"></a>00795 <span class="comment"> * packet, but no released version of PGP generated Literal packets with</span>
 
314
<a name="l00796"></a>00796 <span class="comment"> * this tag. With PGP 5.x, this packet has been re-assigned and is</span>
 
315
<a name="l00797"></a>00797 <span class="comment"> * reserved for use as the Marker packet.</span>
 
316
<a name="l00798"></a>00798 <span class="comment"> *</span>
 
317
<a name="l00799"></a>00799 <span class="comment"> * The body of this packet consists of:</span>
 
318
<a name="l00800"></a>00800 <span class="comment"> *   - The three octets 0x50, 0x47, 0x50 (which spell "PGP" in UTF-8).</span>
 
319
<a name="l00801"></a>00801 <span class="comment"> *</span>
 
320
<a name="l00802"></a>00802 <span class="comment"> * Such a packet MUST be ignored when received.  It may be placed at the</span>
 
321
<a name="l00803"></a>00803 <span class="comment"> * beginning of a message that uses features not available in PGP 2.6.x</span>
 
322
<a name="l00804"></a>00804 <span class="comment"> * in order to cause that version to report that newer software is</span>
 
323
<a name="l00805"></a>00805 <span class="comment"> * necessary to process the message.</span>
 
324
<a name="l00806"></a>00806 <span class="comment"> */</span>
 
325
<a name="l00807"></a>00807 <span class="comment">/* \ingroup rpmpgp</span>
 
326
<a name="l00808"></a>00808 <span class="comment"> * 5.9. Literal Data Packet (Tag 11)</span>
 
327
<a name="l00809"></a>00809 <span class="comment"> *</span>
 
328
<a name="l00810"></a>00810 <span class="comment"> * A Literal Data packet contains the body of a message; data that is</span>
 
329
<a name="l00811"></a>00811 <span class="comment"> * not to be further interpreted.</span>
 
330
<a name="l00812"></a>00812 <span class="comment"> *</span>
 
331
<a name="l00813"></a>00813 <span class="comment"> * The body of this packet consists of:</span>
 
332
<a name="l00814"></a>00814 <span class="comment"> *   - A one-octet field that describes how the data is formatted.</span>
 
333
<a name="l00815"></a>00815 <span class="comment"> *</span>
 
334
<a name="l00816"></a>00816 <span class="comment"> * If it is a 'b' (0x62), then the literal packet contains binary data.</span>
 
335
<a name="l00817"></a>00817 <span class="comment"> * If it is a 't' (0x74), then it contains text data, and thus may need</span>
 
336
<a name="l00818"></a>00818 <span class="comment"> * line ends converted to local form, or other text-mode changes.  RFC</span>
 
337
<a name="l00819"></a>00819 <span class="comment"> * 1991 also defined a value of 'l' as a 'local' mode for machine-local</span>
 
338
<a name="l00820"></a>00820 <span class="comment"> * conversions.  This use is now deprecated.</span>
 
339
<a name="l00821"></a>00821 <span class="comment"> *   - File name as a string (one-octet length, followed by file name),</span>
 
340
<a name="l00822"></a>00822 <span class="comment"> *     if the encrypted data should be saved as a file.</span>
 
341
<a name="l00823"></a>00823 <span class="comment"> *</span>
 
342
<a name="l00824"></a>00824 <span class="comment"> * If the special name "_CONSOLE" is used, the message is considered to</span>
 
343
<a name="l00825"></a>00825 <span class="comment"> * be "for your eyes only".  This advises that the message data is</span>
 
344
<a name="l00826"></a>00826 <span class="comment"> * unusually sensitive, and the receiving program should process it more</span>
 
345
<a name="l00827"></a>00827 <span class="comment"> * carefully, perhaps avoiding storing the received data to disk, for</span>
 
346
<a name="l00828"></a>00828 <span class="comment"> * example.</span>
 
347
<a name="l00829"></a>00829 <span class="comment"> *   - A four-octet number that indicates the modification date of the</span>
 
348
<a name="l00830"></a>00830 <span class="comment"> *     file, or the creation time of the packet, or a zero that</span>
 
349
<a name="l00831"></a>00831 <span class="comment"> *     indicates the present time.</span>
 
350
<a name="l00832"></a>00832 <span class="comment"> *   - The remainder of the packet is literal data.</span>
 
351
<a name="l00833"></a>00833 <span class="comment"> *</span>
 
352
<a name="l00834"></a>00834 <span class="comment"> * Text data is stored with &lt;CR&gt;&lt;LF&gt; text endings (i.e. network-normal</span>
 
353
<a name="l00835"></a>00835 <span class="comment"> * line endings).  These should be converted to native line endings by</span>
 
354
<a name="l00836"></a>00836 <span class="comment"> * the receiving software.</span>
 
355
<a name="l00837"></a>00837 <span class="comment"> */</span>
 
356
<a name="l00838"></a><a class="code" href="structpgpPktLdata__s.html">00838</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktLdata__s.html">pgpPktLdata_s</a> {
 
357
<a name="l00839"></a><a class="code" href="structpgpPktLdata__s.html#c5ca8ffd025b7c2a8cb49e75f30af15f">00839</a>     uint8_t <a class="code" href="structpgpPktLdata__s.html#c5ca8ffd025b7c2a8cb49e75f30af15f">format</a>;
 
358
<a name="l00840"></a><a class="code" href="structpgpPktLdata__s.html#0a65b9421882307c4cce08b5f7e7505b">00840</a>     uint8_t <a class="code" href="structpgpPktLdata__s.html#0a65b9421882307c4cce08b5f7e7505b">filenamelen</a>;
 
359
<a name="l00841"></a><a class="code" href="structpgpPktLdata__s.html#4f478d27cfd055a7150dde15dfcbcb28">00841</a>     uint8_t <a class="code" href="structpgpPktLdata__s.html#4f478d27cfd055a7150dde15dfcbcb28">filename</a>[1];
 
360
<a name="l00842"></a>00842 } <a class="code" href="structpgpPktLdata__s.html">pgpPktLdata</a>;
 
361
<a name="l00843"></a>00843 
 
362
<a name="l00844"></a>00844 <span class="comment">/* \ingroup rpmpgp</span>
 
363
<a name="l00845"></a>00845 <span class="comment"> * 5.10. Trust Packet (Tag 12)</span>
 
364
<a name="l00846"></a>00846 <span class="comment"> *</span>
 
365
<a name="l00847"></a>00847 <span class="comment"> * The Trust packet is used only within keyrings and is not normally</span>
 
366
<a name="l00848"></a>00848 <span class="comment"> * exported.  Trust packets contain data that record the user's</span>
 
367
<a name="l00849"></a>00849 <span class="comment"> * specifications of which key holders are trustworthy introducers,</span>
 
368
<a name="l00850"></a>00850 <span class="comment"> * along with other information that implementing software uses for</span>
 
369
<a name="l00851"></a>00851 <span class="comment"> * trust information.</span>
 
370
<a name="l00852"></a>00852 <span class="comment"> *</span>
 
371
<a name="l00853"></a>00853 <span class="comment"> * Trust packets SHOULD NOT be emitted to output streams that are</span>
 
372
<a name="l00854"></a>00854 <span class="comment"> * transferred to other users, and they SHOULD be ignored on any input</span>
 
373
<a name="l00855"></a>00855 <span class="comment"> * other than local keyring files.</span>
 
374
<a name="l00856"></a>00856 <span class="comment"> */</span>
 
375
<a name="l00857"></a><a class="code" href="structpgpPktTrust__s.html">00857</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktTrust__s.html">pgpPktTrust_s</a> {
 
376
<a name="l00858"></a><a class="code" href="structpgpPktTrust__s.html#0773ac028d39e929ca4464479dba05aa">00858</a>     uint8_t <a class="code" href="structpgpPktTrust__s.html#0773ac028d39e929ca4464479dba05aa">flag</a>;
 
377
<a name="l00859"></a>00859 } <a class="code" href="structpgpPktTrust__s.html">pgpPktTrust</a>;
 
378
<a name="l00860"></a>00860 
 
379
<a name="l00861"></a>00861 <span class="comment">/* \ingroup rpmpgp</span>
 
380
<a name="l00862"></a>00862 <span class="comment"> * 5.11. User ID Packet (Tag 13)</span>
 
381
<a name="l00863"></a>00863 <span class="comment"> *</span>
 
382
<a name="l00864"></a>00864 <span class="comment"> * A User ID packet consists of data that is intended to represent the</span>
 
383
<a name="l00865"></a>00865 <span class="comment"> * name and email address of the key holder.  By convention, it includes</span>
 
384
<a name="l00866"></a>00866 <span class="comment"> * an RFC 822 mail name, but there are no restrictions on its content.</span>
 
385
<a name="l00867"></a>00867 <span class="comment"> * The packet length in the header specifies the length of the user id.</span>
 
386
<a name="l00868"></a>00868 <span class="comment"> * If it is text, it is encoded in UTF-8.</span>
 
387
<a name="l00869"></a>00869 <span class="comment"> *</span>
 
388
<a name="l00870"></a>00870 <span class="comment"> */</span>
 
389
<a name="l00871"></a><a class="code" href="structpgpPktUid__s.html">00871</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpgpPktUid__s.html">pgpPktUid_s</a> {
 
390
<a name="l00872"></a><a class="code" href="structpgpPktUid__s.html#d14dda7b0f76bf21a95847c3e6646004">00872</a>     uint8_t <a class="code" href="structpgpPktUid__s.html#d14dda7b0f76bf21a95847c3e6646004">userid</a>[1];
 
391
<a name="l00873"></a>00873 } <a class="code" href="structpgpPktUid__s.html">pgpPktUid</a>;
 
392
<a name="l00874"></a>00874 
 
393
<a name="l00877"></a><a class="code" href="unionpgpPktPre__u.html">00877</a> <span class="keyword">union </span><a class="code" href="unionpgpPktPre__u.html">pgpPktPre_u</a> {
 
394
<a name="l00878"></a><a class="code" href="unionpgpPktPre__u.html#1a27f9f7859c745a72941e972db8ccf9">00878</a>     <a class="code" href="structpgpPktPubkey__s.html" title="5.1.">pgpPktPubkey</a> <a class="code" href="unionpgpPktPre__u.html#1a27f9f7859c745a72941e972db8ccf9">pubkey</a>;        
 
395
<a name="l00879"></a><a class="code" href="unionpgpPktPre__u.html#33fc894a20ae76d303f02ebb73b224bb">00879</a>     <a class="code" href="unionpgpPktSig__u.html" title="5.2.">pgpPktSig</a> <a class="code" href="unionpgpPktPre__u.html#33fc894a20ae76d303f02ebb73b224bb">sig</a>;              
 
396
<a name="l00880"></a><a class="code" href="unionpgpPktPre__u.html#03633b11fa82e12909c0b1c29fa82d31">00880</a>     <a class="code" href="structpgpPktSymkey__s.html" title="5.3.">pgpPktSymkey</a> <a class="code" href="unionpgpPktPre__u.html#03633b11fa82e12909c0b1c29fa82d31">symkey</a>;        
 
397
<a name="l00881"></a><a class="code" href="unionpgpPktPre__u.html#3d0a8be191fd647dfb68dfeb55d23ce3">00881</a>     <a class="code" href="structpgpPktOnepass__s.html" title="5.4.">pgpPktOnepass</a> <a class="code" href="unionpgpPktPre__u.html#3d0a8be191fd647dfb68dfeb55d23ce3">onepass</a>;      
 
398
<a name="l00882"></a><a class="code" href="unionpgpPktPre__u.html#d6aef3f0c60c3c136b0ea421c16c8c6f">00882</a>     <a class="code" href="unionpgpPktKey__u.html" title="5.5.3.">pgpPktKey</a> <a class="code" href="unionpgpPktPre__u.html#d6aef3f0c60c3c136b0ea421c16c8c6f">key</a>;              
 
399
<a name="l00883"></a><a class="code" href="unionpgpPktPre__u.html#3312599aaf4b5cdcfa9ad52e9ca8183b">00883</a>     <a class="code" href="structpgpPktCdata__s.html">pgpPktCdata</a> <a class="code" href="unionpgpPktPre__u.html#3312599aaf4b5cdcfa9ad52e9ca8183b">cdata</a>;          
 
400
<a name="l00884"></a><a class="code" href="unionpgpPktPre__u.html#6ac3d1d4cd771beb0020697c0bc8b8e6">00884</a>     <a class="code" href="structpgpPktEdata__s.html">pgpPktEdata</a> <a class="code" href="unionpgpPktPre__u.html#6ac3d1d4cd771beb0020697c0bc8b8e6">edata</a>;          
 
401
<a name="l00886"></a><a class="code" href="unionpgpPktPre__u.html#93ef57d85f01c89482fde404a9290452">00886</a>     <a class="code" href="structpgpPktLdata__s.html">pgpPktLdata</a> <a class="code" href="unionpgpPktPre__u.html#93ef57d85f01c89482fde404a9290452">ldata</a>;          
 
402
<a name="l00887"></a><a class="code" href="unionpgpPktPre__u.html#070fe419ace8fda0b71a591b007561a8">00887</a>     <a class="code" href="structpgpPktTrust__s.html">pgpPktTrust</a> <a class="code" href="unionpgpPktPre__u.html#070fe419ace8fda0b71a591b007561a8">tdata</a>;          
 
403
<a name="l00888"></a><a class="code" href="unionpgpPktPre__u.html#216a938c035181e7feb66728291309a4">00888</a>     <a class="code" href="structpgpPktUid__s.html">pgpPktUid</a> <a class="code" href="unionpgpPktPre__u.html#216a938c035181e7feb66728291309a4">uid</a>;              
 
404
<a name="l00889"></a>00889 };
 
405
<a name="l00890"></a>00890 
 
406
<a name="l00893"></a><a class="code" href="group__rpmpgp.html#g80f5f4d1f3c4becb7fe006bc29176dd4">00893</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g80f5f4d1f3c4becb7fe006bc29176dd4">pgpArmor_e</a> {
 
407
<a name="l00894"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4df8b1a7521798cad40507be3f1aafa00">00894</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4df8b1a7521798cad40507be3f1aafa00">PGPARMOR_ERR_CRC_CHECK</a>              = -7,
 
408
<a name="l00895"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd42d573db33aa8d265db1a8656f436345b">00895</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd42d573db33aa8d265db1a8656f436345b">PGPARMOR_ERR_BODY_DECODE</a>            = -6,
 
409
<a name="l00896"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd402b30f159971c2fe668a92717b3f4ceb">00896</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd402b30f159971c2fe668a92717b3f4ceb">PGPARMOR_ERR_CRC_DECODE</a>             = -5,
 
410
<a name="l00897"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4ac685d831c1b3ae3798706b7e861ee80">00897</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4ac685d831c1b3ae3798706b7e861ee80">PGPARMOR_ERR_NO_END_PGP</a>             = -4,
 
411
<a name="l00898"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4c4a4a7a24bf0d1d5d76ad94650277828">00898</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4c4a4a7a24bf0d1d5d76ad94650277828">PGPARMOR_ERR_UNKNOWN_PREAMBLE_TAG</a>   = -3,
 
412
<a name="l00899"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd49566499645f925868c09a66ec72f2d6e">00899</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd49566499645f925868c09a66ec72f2d6e">PGPARMOR_ERR_UNKNOWN_ARMOR_TYPE</a>     = -2,
 
413
<a name="l00900"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4a1421ba432171f5431dad41cff9fd18d">00900</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4a1421ba432171f5431dad41cff9fd18d">PGPARMOR_ERR_NO_BEGIN_PGP</a>           = -1,
 
414
<a name="l00901"></a>00901 <span class="preprocessor">#define PGPARMOR_ERROR  PGPARMOR_ERR_NO_BEGIN_PGP</span>
 
415
<a name="l00902"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4a53e1ee39a880a28042ae5e92a61fbf1">00902</a> <span class="preprocessor"></span>    <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4a53e1ee39a880a28042ae5e92a61fbf1">PGPARMOR_NONE</a>               =  0,
 
416
<a name="l00903"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4153898db7647e675c8c0864a9bae8700">00903</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4153898db7647e675c8c0864a9bae8700">PGPARMOR_MESSAGE</a>            =  1, 
 
417
<a name="l00904"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd427451fe00d1e3e2b3eedcfaaeb50c2c1">00904</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd427451fe00d1e3e2b3eedcfaaeb50c2c1">PGPARMOR_PUBKEY</a>             =  2, 
 
418
<a name="l00905"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd47449e7d3741bbaa85701f5d3d358b57a">00905</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd47449e7d3741bbaa85701f5d3d358b57a">PGPARMOR_SIGNATURE</a>          =  3, 
 
419
<a name="l00906"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd455f0733f72cc7325d925d05e5cd91681">00906</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd455f0733f72cc7325d925d05e5cd91681">PGPARMOR_SIGNED_MESSAGE</a>     =  4, 
 
420
<a name="l00907"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd48b39464be4de5fb646de23d15db33ee5">00907</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd48b39464be4de5fb646de23d15db33ee5">PGPARMOR_FILE</a>               =  5, 
 
421
<a name="l00908"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd408e91222987d2404ab8e44794c02e1e2">00908</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd408e91222987d2404ab8e44794c02e1e2">PGPARMOR_PRIVKEY</a>            =  6, 
 
422
<a name="l00909"></a><a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4cc7ee32fa523539794f0bc27b6b8d430">00909</a>     <a class="code" href="group__rpmpgp.html#gg80f5f4d1f3c4becb7fe006bc29176dd4cc7ee32fa523539794f0bc27b6b8d430">PGPARMOR_SECKEY</a>             =  7  
 
423
<a name="l00910"></a>00910 } <a class="code" href="group__rpmpgp.html#ga05f27aa52918c861ebb9f4e17dfd594">pgpArmor</a>;
 
424
<a name="l00911"></a>00911 
 
425
<a name="l00914"></a><a class="code" href="group__rpmpgp.html#gacd64f0b42dbe9663e415f559eed25aa">00914</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#gacd64f0b42dbe9663e415f559eed25aa">pgpArmorKey_e</a> {
 
426
<a name="l00915"></a><a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aaf5910326a7f4ee819275425c0b2f1ed0">00915</a>     <a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aaf5910326a7f4ee819275425c0b2f1ed0">PGPARMORKEY_VERSION</a>         = 1, 
 
427
<a name="l00916"></a><a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aa815c6e4dd95a18750a7e5951e5000610">00916</a>     <a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aa815c6e4dd95a18750a7e5951e5000610">PGPARMORKEY_COMMENT</a>         = 2, 
 
428
<a name="l00917"></a><a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aa8b99bbbe3fc1e219c0b81a9235db5ad7">00917</a>     <a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aa8b99bbbe3fc1e219c0b81a9235db5ad7">PGPARMORKEY_MESSAGEID</a>       = 3, 
 
429
<a name="l00918"></a><a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aad2a49846aa6f530624449fc0f80930a6">00918</a>     <a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aad2a49846aa6f530624449fc0f80930a6">PGPARMORKEY_HASH</a>            = 4, 
 
430
<a name="l00919"></a><a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aaf4b4c05dca1511e082be99c95ba0db51">00919</a>     <a class="code" href="group__rpmpgp.html#ggacd64f0b42dbe9663e415f559eed25aaf4b4c05dca1511e082be99c95ba0db51">PGPARMORKEY_CHARSET</a>         = 5  
 
431
<a name="l00920"></a>00920 } <a class="code" href="group__rpmpgp.html#ge1852b797a144308bf62c69b03986511">pgpArmorKey</a>;
 
432
<a name="l00921"></a>00921 
 
433
<a name="l00925"></a><a class="code" href="group__rpmpgp.html#g42072ff4775f09dc80e11764dc027469">00925</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__rpmpgp.html#g42072ff4775f09dc80e11764dc027469" title="Bit(s) to control digest operation.">rpmDigestFlags_e</a> {
 
434
<a name="l00926"></a><a class="code" href="group__rpmpgp.html#gg42072ff4775f09dc80e11764dc0274695e623dd642f5283da2d878cd4cd1bd4e">00926</a>     <a class="code" href="group__rpmpgp.html#gg42072ff4775f09dc80e11764dc0274695e623dd642f5283da2d878cd4cd1bd4e">RPMDIGEST_NONE</a>      = 0
 
435
<a name="l00927"></a>00927 } <a class="code" href="group__rpmpgp.html#g73a4700035e8609a6e8a05a432e81e7c" title="Bit(s) to control digest operation.">rpmDigestFlags</a>;
 
436
<a name="l00928"></a>00928 
 
437
<a name="l00929"></a>00929 
 
438
<a name="l00936"></a>00936 <span class="keyword">static</span> <span class="keyword">inline</span>
 
439
<a name="l00937"></a><a class="code" href="group__rpmpgp.html#gf15fc3640e2becbbb531c64c88dd9371">00937</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#gf15fc3640e2becbbb531c64c88dd9371" title="Return (native-endian) integer from big-endian representation.">pgpGrab</a>(<span class="keyword">const</span> uint8_t *s, <span class="keywordtype">size_t</span> nbytes)
 
440
<a name="l00938"></a>00938 {
 
441
<a name="l00939"></a>00939     <span class="keywordtype">size_t</span> i = 0;
 
442
<a name="l00940"></a>00940     <span class="keywordtype">size_t</span> nb = (nbytes &lt;= <span class="keyword">sizeof</span>(i) ? nbytes : <span class="keyword">sizeof</span>(i));
 
443
<a name="l00941"></a>00941     <span class="keywordflow">while</span> (nb--)
 
444
<a name="l00942"></a>00942         i = (i &lt;&lt; 8) | *s++;
 
445
<a name="l00943"></a>00943     <span class="keywordflow">return</span> i;
 
446
<a name="l00944"></a>00944 }
 
447
<a name="l00945"></a>00945 
 
448
<a name="l00952"></a>00952 <span class="keyword">static</span> <span class="keyword">inline</span>
 
449
<a name="l00953"></a><a class="code" href="group__rpmpgp.html#g0ade5fd4a35e06994edbd3ae5a9a7bc8">00953</a> <span class="keywordtype">size_t</span> <a class="code" href="group__rpmpgp.html#g0ade5fd4a35e06994edbd3ae5a9a7bc8" title="Return length of an OpenPGP packet.">pgpLen</a>(<span class="keyword">const</span> uint8_t *s, <span class="keywordtype">size_t</span> * lenp)
 
450
<a name="l00954"></a>00954 {
 
451
<a name="l00955"></a>00955     <span class="keywordflow">if</span> (*s &lt; 192) {
 
452
<a name="l00956"></a>00956         (*lenp) = *s++;
 
453
<a name="l00957"></a>00957         <span class="keywordflow">return</span> 1;
 
454
<a name="l00958"></a>00958     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (*s &lt; 255) {
 
455
<a name="l00959"></a>00959         (*lenp) = ((((unsigned)s[0]) - 192) &lt;&lt; 8) + s[1] + 192;
 
456
<a name="l00960"></a>00960         <span class="keywordflow">return</span> 2;
 
457
<a name="l00961"></a>00961     } <span class="keywordflow">else</span> {
 
458
<a name="l00962"></a>00962         (*lenp) = <a class="code" href="group__rpmpgp.html#gf15fc3640e2becbbb531c64c88dd9371" title="Return (native-endian) integer from big-endian representation.">pgpGrab</a>(s+1, (<span class="keywordtype">size_t</span>) 4);
 
459
<a name="l00963"></a>00963         <span class="keywordflow">return</span> 5;
 
460
<a name="l00964"></a>00964     }
 
461
<a name="l00965"></a>00965 }
 
462
<a name="l00966"></a>00966 
 
463
<a name="l00973"></a>00973 <span class="keywordtype">char</span> * <a class="code" href="group__rpmpgp.html#g6500352231df9bcf2d3f5db58c45d0e2" title="Return hex formatted representation of bytes.">pgpHexStr</a>(<span class="keyword">const</span> uint8_t *p, <span class="keywordtype">size_t</span> plen);
 
464
<a name="l00974"></a>00974 
 
465
<a name="l00983"></a>00983 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#g86524849fd22b1e8afb3d203ef63a623" title="Calculate OpenPGP public key fingerprint.">pgpPubkeyFingerprint</a>(<span class="keyword">const</span> uint8_t * pkt, <span class="keywordtype">size_t</span> pktlen,
 
466
<a name="l00984"></a>00984                 pgpKeyID_t keyid);
 
467
<a name="l00985"></a>00985 
 
468
<a name="l00993"></a>00993 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#g6c38b721b297b271113cb566ae5fe1a5" title="Extract OpenPGP public key fingerprint from base64 encoded packet.">pgpExtractPubkeyFingerprint</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * b64pkt, pgpKeyID_t keyid);
 
469
<a name="l00994"></a>00994 
 
470
<a name="l01003"></a>01003 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#gc774290af4a72fd9cd80679ddcc70199" title="Print/parse a OpenPGP packet(s).">pgpPrtPkts</a>(<span class="keyword">const</span> uint8_t *pkts, <span class="keywordtype">size_t</span> pktlen, pgpDig dig, <span class="keywordtype">int</span> printing);
 
471
<a name="l01004"></a>01004 
 
472
<a name="l01012"></a>01012 <a class="code" href="group__rpmpgp.html#ga05f27aa52918c861ebb9f4e17dfd594">pgpArmor</a> <a class="code" href="group__rpmpgp.html#g5f8a998a91b746a1fc26c6d9308d3946" title="Parse armored OpenPGP packets from a file.">pgpReadPkts</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * fn, uint8_t ** pkt, <span class="keywordtype">size_t</span> * pktlen);
 
473
<a name="l01013"></a>01013 
 
474
<a name="l01021"></a>01021 <span class="keywordtype">char</span> * <a class="code" href="group__rpmpgp.html#gd7b12069033c18c67569d7b23e08a3f3" title="Wrap a OpenPGP packets in ascii armor for transport.">pgpArmorWrap</a>(<span class="keywordtype">int</span> atype, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * s, <span class="keywordtype">size_t</span> ns);
 
475
<a name="l01022"></a>01022 
 
476
<a name="l01027"></a>01027 pgpDig <a class="code" href="group__rpmpgp.html#g20c953f5a51841d3037a5854dda041f4" title="Create a container for parsed OpenPGP packates.">pgpNewDig</a>(<span class="keywordtype">void</span>);
 
477
<a name="l01028"></a>01028 
 
478
<a name="l01033"></a>01033 <span class="keywordtype">void</span> <a class="code" href="group__rpmpgp.html#g4b822bf949b2a90c05796276eb3a26e5" title="Release (malloc&amp;#39;d) data from container.">pgpCleanDig</a>(pgpDig dig);
 
479
<a name="l01034"></a>01034 
 
480
<a name="l01040"></a>01040 pgpDig <a class="code" href="group__rpmpgp.html#g2d22fdaa237903f43d5eaddb426bb13f" title="Destroy a container for parsed OpenPGP packates.">pgpFreeDig</a>(pgpDig dig);
 
481
<a name="l01041"></a>01041 
 
482
<a name="l01049"></a>01049 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#g047a5efc8ac099a2a63134d08584589a" title="Perform cryptography initialization.">rpmInitCrypto</a>(<span class="keywordtype">void</span>);
 
483
<a name="l01050"></a>01050 
 
484
<a name="l01054"></a>01054 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#gcc88991c9dc96ec7c0742fb7580ab291" title="Shutdown cryptography.">rpmFreeCrypto</a>(<span class="keywordtype">void</span>);
 
485
<a name="l01055"></a>01055 
 
486
<a name="l01061"></a>01061 DIGEST_CTX <a class="code" href="group__rpmpgp.html#g85489559128fb8811f8d13177151d35c" title="Duplicate a digest context.">rpmDigestDup</a>(DIGEST_CTX octx);
 
487
<a name="l01062"></a>01062 
 
488
<a name="l01068"></a>01068 <span class="keywordtype">size_t</span> <a class="code" href="group__rpmpgp.html#ga23c56ff2708514f041e09c54a28ccd0" title="Obtain digest length in bytes.">rpmDigestLength</a>(<a class="code" href="group__rpmpgp.html#g7dfcf98c6e163d995601e76dc0797ca1" title="9.4.">pgpHashAlgo</a> hashalgo);
 
489
<a name="l01069"></a>01069 
 
490
<a name="l01077"></a>01077 DIGEST_CTX <a class="code" href="group__rpmpgp.html#g38d1f7f076276f053da5f5b8e3c16b8e" title="Initialize digest.">rpmDigestInit</a>(<a class="code" href="group__rpmpgp.html#g7dfcf98c6e163d995601e76dc0797ca1" title="9.4.">pgpHashAlgo</a> hashalgo, <a class="code" href="group__rpmpgp.html#g73a4700035e8609a6e8a05a432e81e7c" title="Bit(s) to control digest operation.">rpmDigestFlags</a> flags);
 
491
<a name="l01078"></a>01078 
 
492
<a name="l01086"></a>01086 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#gc9ca49fa22e116d5b481c666c82c579e" title="Update context with next plain text buffer.">rpmDigestUpdate</a>(DIGEST_CTX ctx, <span class="keyword">const</span> <span class="keywordtype">void</span> * data, <span class="keywordtype">size_t</span> len);
 
493
<a name="l01087"></a>01087 
 
494
<a name="l01099"></a>01099 <span class="keywordtype">int</span> <a class="code" href="group__rpmpgp.html#g54e20bdf025588cd2f2bb640b7978de9" title="Return digest and destroy context.">rpmDigestFinal</a>(DIGEST_CTX ctx,
 
495
<a name="l01100"></a>01100         <span class="keywordtype">void</span> ** datap,
 
496
<a name="l01101"></a>01101         <span class="keywordtype">size_t</span> * lenp, <span class="keywordtype">int</span> asAscii);
 
497
<a name="l01102"></a>01102 
 
498
<a name="l01103"></a>01103 <span class="preprocessor">#ifdef __cplusplus</span>
 
499
<a name="l01104"></a>01104 <span class="preprocessor"></span>}
 
500
<a name="l01105"></a>01105 <span class="preprocessor">#endif</span>
 
501
<a name="l01106"></a>01106 <span class="preprocessor"></span>
 
502
<a name="l01107"></a>01107 <span class="preprocessor">#endif  </span><span class="comment">/* H_RPMPGP */</span>
 
503
</pre></div></div>
 
504
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Apr 3 14:41:37 2009 for rpm by&nbsp;
 
505
<a href="http://www.doxygen.org/index.html">
 
506
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address>
 
507
</body>
 
508
</html>