summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nordberg <linus@nordu.net>2016-03-06 23:18:21 +0100
committerLinus Nordberg <linus@nordu.net>2016-03-06 23:18:21 +0100
commit69027c1090ab9e8a63fab7114854a23a0b6a36b5 (patch)
tree32c279da7b2a35055ed61db1079f2c91a69fc002
parentbe31ab4659438bba66e0b2765c522c33219fa8cc (diff)
Use DTLS_method() for new SSL context if it exists.
Effectively turning on support for DTLS 1.2 when OpenSSL version 1.0.2 or higher.
-rw-r--r--tlscommon.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/tlscommon.c b/tlscommon.c
index ee81d71..157296b 100644
--- a/tlscommon.c
+++ b/tlscommon.c
@@ -218,7 +218,12 @@ static SSL_CTX *tlscreatectx(uint8_t type, struct tls *conf) {
#endif
#ifdef RADPROT_DTLS
case RAD_DTLS:
+#if OPENSSL_VERSION_NUMBER >= 0x10002000
+ /* DTLS_method() seems to have been introduced in OpenSSL 1.0.2. */
+ ctx = SSL_CTX_new(DTLS_method());
+#else
ctx = SSL_CTX_new(DTLSv1_method());
+#endif
#ifdef DEBUG
SSL_CTX_set_info_callback(ctx, ssl_info_callback);
#endif