summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ssl/t1_enc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ssl/t1_enc.c b/ssl/t1_enc.c
index f32393c56b..201ca9ad6d 100644
--- a/ssl/t1_enc.c
+++ b/ssl/t1_enc.c
@@ -825,7 +825,10 @@ int tls1_enc(SSL *s, int send)
}
}
- if (EVP_Cipher(ds,rec->data,rec->input,l) < 0)
+ i = EVP_Cipher(ds,rec->data,rec->input,l);
+ if ((EVP_CIPHER_flags(ds->cipher)&EVP_CIPH_FLAG_CUSTOM_CIPHER)
+ ?(i<0)
+ :(i==0))
return -1; /* AEAD can fail to verify MAC */
if (EVP_CIPHER_mode(enc) == EVP_CIPH_GCM_MODE && !send)
{