@@ -5,6 +5,7 @@ use nom::Err as NomErr;
55use nom:: IResult ;
66
77use compression:: * ;
8+ use key:: * ;
89use literal:: * ;
910use marker;
1011use signature:: * ;
@@ -99,16 +100,16 @@ pub enum Packet {
99100 Signature ( SignaturePacket ) ,
100101 SymmetricKeySessionKey ,
101102 OnePassSignature ,
102- SecretKey ,
103- PublicKey ,
104- SecretSubkey ,
103+ SecretKey ( Key ) ,
104+ PublicKey ( Key ) ,
105+ SecretSubkey ( Key ) ,
105106 CompressedData ( CompressedDataPacket ) ,
106107 SymmetricEncryptedData ,
107108 Marker ,
108109 LiteralData ( LiteralPacket ) ,
109110 Trust ,
110111 UserId ( String ) ,
111- PublicSubkey ,
112+ PublicSubkey ( Key ) ,
112113 UserAttribute ,
113114 SymmetricEncryptedIntegrityProtectedData ,
114115 ModificationDetectionCode ,
@@ -121,16 +122,16 @@ impl Packet {
121122 Packet :: Signature ( _) => 2 ,
122123 Packet :: SymmetricKeySessionKey => 3 ,
123124 Packet :: OnePassSignature => 4 ,
124- Packet :: SecretKey => 5 ,
125- Packet :: PublicKey => 6 ,
126- Packet :: SecretSubkey => 7 ,
125+ Packet :: SecretKey ( _ ) => 5 ,
126+ Packet :: PublicKey ( _ ) => 6 ,
127+ Packet :: SecretSubkey ( _ ) => 7 ,
127128 Packet :: CompressedData ( _) => 8 ,
128129 Packet :: SymmetricEncryptedData => 9 ,
129130 Packet :: Marker => 10 ,
130131 Packet :: LiteralData ( _) => 11 ,
131132 Packet :: Trust => 12 ,
132133 Packet :: UserId ( _) => 13 ,
133- Packet :: PublicSubkey => 14 ,
134+ Packet :: PublicSubkey ( _ ) => 14 ,
134135 Packet :: UserAttribute => 17 ,
135136 Packet :: SymmetricEncryptedIntegrityProtectedData => 18 ,
136137 Packet :: ModificationDetectionCode => 19 ,
@@ -198,9 +199,9 @@ impl Packet {
198199 2 => Packet :: Signature ( SignaturePacket :: from_bytes ( packet_data) ?) ,
199200 3 => Packet :: SymmetricKeySessionKey ,
200201 4 => Packet :: OnePassSignature ,
201- 5 => Packet :: SecretKey ,
202- 6 => Packet :: PublicKey ,
203- 7 => Packet :: SecretSubkey ,
202+ 5 => Packet :: SecretKey ( Key :: from_bytes ( packet_data , false ) ? ) ,
203+ 6 => Packet :: PublicKey ( Key :: from_bytes ( packet_data , false ) ? ) ,
204+ 7 => Packet :: SecretSubkey ( Key :: from_bytes ( packet_data , true ) ? ) ,
204205 8 => Packet :: CompressedData ( CompressedDataPacket :: from_bytes ( packet_data) ?) ,
205206 9 => Packet :: SymmetricEncryptedData ,
206207 10 => {
@@ -210,7 +211,7 @@ impl Packet {
210211 11 => Packet :: LiteralData ( LiteralPacket :: from_bytes ( packet_data) ?) ,
211212 12 => Packet :: Trust ,
212213 13 => Packet :: UserId ( userid:: parse_userid ( packet_data) ?) ,
213- 14 => Packet :: PublicSubkey ,
214+ 14 => Packet :: PublicSubkey ( Key :: from_bytes ( packet_data , true ) ? ) ,
214215 17 => Packet :: UserAttribute ,
215216 18 => Packet :: SymmetricEncryptedIntegrityProtectedData ,
216217 19 => Packet :: ModificationDetectionCode ,
0 commit comments