Commit 3e166c13 authored by tjmao's avatar tjmao Committed by Rich Salz
Browse files

Allow ChaCha20-Poly1305 in DTLS



GCM and CCM are modes of operation for block ciphers only. ChaCha20-Poly1305
operates in neither of them but it is AEAD. This change also enables future
AEAD ciphers to be available for use with DTLS.

Signed-off-by: default avatarRich Salz <rsalz@akamai.com>
Reviewed-by: default avatarMatt Caswell <matt@openssl.org>
parent 5320c071
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -235,8 +235,8 @@ int dtls1_do_write(SSL *s, int type)

    if (s->write_hash) {
        if (s->enc_write_ctx
            && ((EVP_CIPHER_CTX_mode(s->enc_write_ctx) == EVP_CIPH_GCM_MODE) ||
                (EVP_CIPHER_CTX_mode(s->enc_write_ctx) == EVP_CIPH_CCM_MODE)))
            && (EVP_CIPHER_CTX_flags(s->enc_write_ctx) &
                EVP_CIPH_FLAG_AEAD_CIPHER) != 0)
            mac_size = 0;
        else
            mac_size = EVP_MD_CTX_size(s->write_hash);