Disable compression for DTLS.
authorDr. Stephen Henson <steve@openssl.org>
Tue, 19 Mar 2013 13:46:28 +0000 (13:46 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Tue, 19 Mar 2013 13:47:51 +0000 (13:47 +0000)
The only standard compression method is stateful and is incompatible with
DTLS.
(cherry picked from commit e14b8410ca882da8e9579a2d928706f894c8e1ae)

ssl/ssl_lib.c

index b3c21ea068e6e76b127f1e90dc8e87a917fb407a..cfe40b2fa4311284b012c9cd2696440c0e56229f 100644 (file)
@@ -1629,7 +1629,9 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth)
        CRYPTO_new_ex_data(CRYPTO_EX_INDEX_SSL_CTX, ret, &ret->ex_data);
 
        ret->extra_certs=NULL;
-       ret->comp_methods=SSL_COMP_get_compression_methods();
+       /* No compression for DTLS */
+       if (meth->version != DTLS1_VERSION)
+               ret->comp_methods=SSL_COMP_get_compression_methods();
 
        ret->max_send_fragment = SSL3_RT_MAX_PLAIN_LENGTH;