Extend DTLS method macros.
authorDr. Stephen Henson <steve@openssl.org>
Tue, 19 Mar 2013 15:51:26 +0000 (15:51 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Tue, 26 Mar 2013 15:16:41 +0000 (15:16 +0000)
Extend DTLS method creation macros to support version numbers and encryption
methods. Update existing code.

ssl/d1_clnt.c
ssl/d1_meth.c
ssl/d1_srvr.c
ssl/ssl_locl.h

index f2f991e..b1f8c5e 100644 (file)
@@ -139,10 +139,12 @@ static const SSL_METHOD *dtls1_get_client_method(int ver)
                return(NULL);
        }
 
-IMPLEMENT_dtls1_meth_func(DTLSv1_client_method,
+IMPLEMENT_dtls1_meth_func(DTLS1_VERSION,
+                       DTLSv1_client_method,
                        ssl_undefined_function,
                        dtls1_connect,
-                       dtls1_get_client_method)
+                       dtls1_get_client_method,
+                       DTLSv1_enc_data)
 
 int dtls1_connect(SSL *s)
        {
index 5c4004b..0470624 100644 (file)
@@ -70,8 +70,10 @@ static const SSL_METHOD *dtls1_get_method(int ver)
                return(NULL);
        }
 
-IMPLEMENT_dtls1_meth_func(DTLSv1_method,
+IMPLEMENT_dtls1_meth_func(DTLS1_VERSION,
+                       DTLSv1_method,
                        dtls1_accept,
                        dtls1_connect,
-                       dtls1_get_method)
+                       dtls1_get_method,
+                       DTLSv1_enc_data)
 
index 7934ad5..6967d8e 100644 (file)
@@ -137,10 +137,12 @@ static const SSL_METHOD *dtls1_get_server_method(int ver)
                return(NULL);
        }
 
-IMPLEMENT_dtls1_meth_func(DTLSv1_server_method,
+IMPLEMENT_dtls1_meth_func(DTLS1_VERSION,
+                       DTLSv1_server_method,
                        dtls1_accept,
                        ssl_undefined_function,
-                       dtls1_get_server_method)
+                       dtls1_get_server_method,
+                       DTLSv1_enc_data)
 
 int dtls1_accept(SSL *s)
        {
index f9c5544..2e03e63 100644 (file)
@@ -900,11 +900,12 @@ const SSL_METHOD *func_name(void)  \
        return &func_name##_data; \
        }
 
-#define IMPLEMENT_dtls1_meth_func(func_name, s_accept, s_connect, s_get_meth) \
+#define IMPLEMENT_dtls1_meth_func(version, func_name, s_accept, s_connect, \
+                                       s_get_meth, enc_data) \
 const SSL_METHOD *func_name(void)  \
        { \
        static const SSL_METHOD func_name##_data= { \
-               DTLS1_VERSION, \
+               version, \
                dtls1_new, \
                dtls1_clear, \
                dtls1_free, \
@@ -929,7 +930,7 @@ const SSL_METHOD *func_name(void)  \
                dtls1_get_cipher, \
                s_get_meth, \
                dtls1_default_timeout, \
-               &DTLSv1_enc_data, \
+               &enc_data, \
                ssl_undefined_void_function, \
                ssl3_callback_ctrl, \
                ssl3_ctx_callback_ctrl, \