summaryrefslogtreecommitdiffstats
path: root/openpgp/src/crypto
diff options
context:
space:
mode:
Diffstat (limited to 'openpgp/src/crypto')
-rw-r--r--openpgp/src/crypto/aead.rs17
1 files changed, 9 insertions, 8 deletions
diff --git a/openpgp/src/crypto/aead.rs b/openpgp/src/crypto/aead.rs
index 03c02da2..dcc5843a 100644
--- a/openpgp/src/crypto/aead.rs
+++ b/openpgp/src/crypto/aead.rs
@@ -790,15 +790,16 @@ impl<W: io::Write> Encryptor<W> {
unsafe { self.scratch.set_len(self.digest_size) }
aead.digest(&mut self.scratch[..self.digest_size]);
inner.write_all(&self.scratch[..self.digest_size])?;
-
- // Write final digest.
- let mut aead = self.make_aead()?;
- self.hash_associated_data(&mut aead, true);
- let mut nada = [0; 0];
- aead.encrypt(&mut nada, b"");
- aead.digest(&mut self.scratch[..self.digest_size]);
- inner.write_all(&self.scratch[..self.digest_size])?;
}
+
+ // Write final digest.
+ let mut aead = self.make_aead()?;
+ self.hash_associated_data(&mut aead, true);
+ let mut nada = [0; 0];
+ aead.encrypt(&mut nada, b"");
+ aead.digest(&mut self.scratch[..self.digest_size]);
+ inner.write_all(&self.scratch[..self.digest_size])?;
+
Ok(inner)
} else {
Err(io::Error::new(io::ErrorKind::BrokenPipe,