Bypass multiblock and send individual records when using KTLS.
authorAndrew Gallatin <gallatin@gmail.com>
Wed, 31 Oct 2018 19:01:47 +0000 (15:01 -0400)
committerMatt Caswell <matt@openssl.org>
Thu, 31 Oct 2019 10:24:32 +0000 (10:24 +0000)
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10045)

ssl/record/rec_layer_s3.c

index 876e738a44263352bcc48bcc41032fbba4c15807..a34f9df1dfef88aeca33152058ff293933645193 100644 (file)
@@ -426,6 +426,7 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, size_t len,
         len >= 4 * (max_send_fragment = ssl_get_max_send_fragment(s)) &&
         s->compress == NULL && s->msg_callback == NULL &&
         !SSL_WRITE_ETM(s) && SSL_USE_EXPLICIT_IV(s) &&
+        (BIO_get_ktls_send(s->wbio) == 0) &&
         EVP_CIPHER_flags(EVP_CIPHER_CTX_cipher(s->enc_write_ctx)) &
         EVP_CIPH_FLAG_TLS1_1_MULTIBLOCK) {
         unsigned char aad[13];