Commit cfd298b7 authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Extend DTLS method macros.

Extend DTLS method creation macros to support version numbers and encryption
methods. Update existing code.
parent 874a18cf
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -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)
	{
+4 −2
Original line number Diff line number Diff line
@@ -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)
+4 −2
Original line number Diff line number Diff line
@@ -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)
	{
+4 −3
Original line number Diff line number Diff line
@@ -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, \