--- a/ext/dtls/gstdtlsagent.c
+++ b/ext/dtls/gstdtlsagent.c
@@ -124,11 +124,11 @@ _gst_dtls_init_openssl (void)
     }
 
     GST_INFO_OBJECT (NULL, "initializing openssl %lx", OPENSSL_VERSION_NUMBER);
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
     SSL_library_init ();
     SSL_load_error_strings ();
     ERR_load_BIO_strings ();
 
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
     {
       gint i;
       gint num_locks;
@@ -197,7 +197,7 @@ gst_dtls_agent_init (GstDtlsAgent * self)
   SSL_CTX_set_cipher_list (priv->ssl_context,
       "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH");
   SSL_CTX_set_read_ahead (priv->ssl_context, 1);
-#if OPENSSL_VERSION_NUMBER >= 0x1000200fL
+#if (OPENSSL_VERSION_NUMBER >= 0x1000200fL) && (OPENSSL_VERSION_NUMBER < 0x10100000L)
   SSL_CTX_set_ecdh_auto (priv->ssl_context, 1);
 #endif
 }
--- a/ext/dtls/gstdtlscertificate.c
+++ b/ext/dtls/gstdtlscertificate.c
@@ -45,8 +45,15 @@
 #endif
 #endif
 
+#include <openssl/bn.h>
+#include <openssl/rsa.h>
 #include <openssl/ssl.h>
 
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#define X509_getm_notBefore X509_get_notBefore
+#define X509_getm_notAfter X509_get_notAfter
+#endif
+
 GST_DEBUG_CATEGORY_STATIC (gst_dtls_certificate_debug);
 #define GST_CAT_DEFAULT gst_dtls_certificate_debug
 
@@ -240,8 +247,8 @@ init_generated (GstDtlsCertificate * self)
 
   X509_set_version (priv->x509, 2);
   ASN1_INTEGER_set (X509_get_serialNumber (priv->x509), 0);
-  X509_gmtime_adj (X509_get_notBefore (priv->x509), 0);
-  X509_gmtime_adj (X509_get_notAfter (priv->x509), 31536000L);  /* A year */
+  X509_gmtime_adj (X509_getm_notBefore (priv->x509), 0);
+  X509_gmtime_adj (X509_getm_notAfter (priv->x509), 31536000L);  /* A year */
   X509_set_pubkey (priv->x509, priv->private_key);
 
   name = X509_get_subject_name (priv->x509);
