mirror of
https://github.com/openssl/openssl.git
synced 2025-01-19 00:13:33 +08:00
Ensure our buffer allocation allows for the Explicit IV
Some ciphers/protocol versions have an explicit IV. We need to make sure we have sufficient room for it in the underlying buffer. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20085)
This commit is contained in:
parent
3ff0a48af4
commit
626618a09d
@ -158,11 +158,15 @@ int tls_setup_write_buffer(OSSL_RECORD_LAYER *rl, size_t numwpipes,
|
||||
#endif
|
||||
|
||||
defltlen = rl->max_frag_len + SSL3_RT_SEND_MAX_ENCRYPTED_OVERHEAD
|
||||
+ headerlen + align;
|
||||
+ headerlen + align + rl->eivlen;
|
||||
#ifndef OPENSSL_NO_COMP
|
||||
if (tls_allow_compression(rl))
|
||||
defltlen += SSL3_RT_MAX_COMPRESSED_OVERHEAD;
|
||||
#endif
|
||||
/*
|
||||
* We don't need to add eivlen here since empty fragments only occur
|
||||
* when we don't have an explicit IV
|
||||
*/
|
||||
if (!(rl->options & SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS))
|
||||
defltlen += headerlen + align + SSL3_RT_SEND_MAX_ENCRYPTED_OVERHEAD;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user