diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2022-02-22 12:04:06 +0100 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2022-02-22 14:12:27 +0100 |
commit | 347416175320c0b93ef71debece5b341d4e36fd5 (patch) | |
tree | 3b6c4cc21348306adfa2dd29e8d6d1bfe1d7a080 /openpgp/src/serialize.rs | |
parent | 4c08524c42fb2967be03f463236236c6a4d7cc3e (diff) |
openpgp: Generalize fingerprint serialization.
Diffstat (limited to 'openpgp/src/serialize.rs')
-rw-r--r-- | openpgp/src/serialize.rs | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/openpgp/src/serialize.rs b/openpgp/src/serialize.rs index 6656e439..c953bcb2 100644 --- a/openpgp/src/serialize.rs +++ b/openpgp/src/serialize.rs @@ -869,10 +869,7 @@ impl Marshal for Fingerprint { impl SerializeInto for Fingerprint {} impl MarshalInto for Fingerprint { fn serialized_len(&self) -> usize { - match self { - Fingerprint::V4(_) => 20, - Fingerprint::Invalid(ref fp) => fp.len(), - } + self.as_bytes().len() } fn serialize_into(&self, buf: &mut [u8]) -> Result<usize> { @@ -1514,19 +1511,11 @@ impl MarshalInto for SubpacketValue { Features(ref f) => f.as_slice().len(), SignatureTarget { ref digest, .. } => 2 + digest.len(), EmbeddedSignature(sig) => sig.serialized_len(), - IssuerFingerprint(ref fp) => match fp { - Fingerprint::V4(_) => - 1 + (fp as &dyn MarshalInto).serialized_len(), - // Educated guess for unknown versions. - Fingerprint::Invalid(_) => 1 + fp.as_bytes().len(), - }, + IssuerFingerprint(ref fp) => + 1 + (fp as &dyn MarshalInto).serialized_len(), PreferredAEADAlgorithms(ref p) => p.len(), - IntendedRecipient(ref fp) => match fp { - Fingerprint::V4(_) => - 1 + (fp as &dyn MarshalInto).serialized_len(), - // Educated guess for unknown versions. - Fingerprint::Invalid(_) => 1 + fp.as_bytes().len(), - }, + IntendedRecipient(ref fp) => + 1 + (fp as &dyn MarshalInto).serialized_len(), AttestedCertifications(digests) => digests.iter().map(|d| d.len()).sum(), Unknown { body, .. } => body.len(), |