From 159cf743c2a2dc5e8d103ae866ed5aefdbbf5671 Mon Sep 17 00:00:00 2001 From: Frank Denis Date: Wed, 18 Sep 2019 01:57:15 +0200 Subject: [PATCH] Pre-reserve enough room for responses --- src/dnscrypt.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dnscrypt.rs b/src/dnscrypt.rs index eae7ff9..ee0acfb 100644 --- a/src/dnscrypt.rs +++ b/src/dnscrypt.rs @@ -56,7 +56,8 @@ pub fn encrypt( shared_key: &SharedKey, nonce: &[u8; DNSCRYPT_FULL_NONCE_SIZE as usize], ) -> Result, Error> { - let mut wrapped_packet = vec![0x72u8, 0x36, 0x66, 0x6e, 0x76, 0x57, 0x6a, 0x38]; + let mut wrapped_packet = Vec::with_capacity(DNS_MAX_PACKET_SIZE); + wrapped_packet.extend_from_slice(&[0x72, 0x36, 0x66, 0x6e, 0x76, 0x57, 0x6a, 0x38]); wrapped_packet.extend_from_slice(nonce); shared_key.encrypt_into(&mut wrapped_packet, nonce, packet)?; Ok(wrapped_packet)