summaryrefslogtreecommitdiffstats
path: root/ssl/t1_enc.c
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2012-03-13 20:20:55 +0100
committerAndy Polyakov <appro@openssl.org>2012-03-13 20:20:55 +0100
commitd2add2efaa2df50063c7aa6d849525dfe1c1d6da (patch)
tree6e37fb1c5584bf9f73d560d72ef16f30639bf7b6 /ssl/t1_enc.c
parentx86_64-xlate.pl: remove old kludge. (diff)
downloadopenssl-d2add2efaa2df50063c7aa6d849525dfe1c1d6da.tar.xz
openssl-d2add2efaa2df50063c7aa6d849525dfe1c1d6da.zip
ssl/t1_enc.c: pay attention to EVP_CIPH_FLAG_CUSTOM_CIPHER.
Diffstat (limited to 'ssl/t1_enc.c')
-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)
{