summaryrefslogtreecommitdiff
path: root/src/lib/libssl/s3_srvr.c
diff options
context:
space:
mode:
authorjsing <>2014-05-24 12:44:48 +0000
committerjsing <>2014-05-24 12:44:48 +0000
commit52c89a2661760a5549aeb55a62ea9957c3379e64 (patch)
treed69c2da4faf1b7f2a4d061a5b3cf3601197a246a /src/lib/libssl/s3_srvr.c
parent423deaf23c5a306d0f9bc96d6e1e9584d85f7c16 (diff)
downloadopenbsd-52c89a2661760a5549aeb55a62ea9957c3379e64.tar.gz
openbsd-52c89a2661760a5549aeb55a62ea9957c3379e64.tar.bz2
openbsd-52c89a2661760a5549aeb55a62ea9957c3379e64.zip
DeIMPLEMENT libssl. Expand the IMPLEMENT_* macros since it is far more
readable and one less layer of abstraction. Use C99 initialisers for clarity, grepability and to protect from future field reordering/removal. ok miod@ (tedu@ also thought it was a wonderful idea, beck@ also agreed, but ran away squealing since it reminded him of the VOP layer...)
Diffstat (limited to 'src/lib/libssl/s3_srvr.c')
-rw-r--r--src/lib/libssl/s3_srvr.c42
1 files changed, 38 insertions, 4 deletions
diff --git a/src/lib/libssl/s3_srvr.c b/src/lib/libssl/s3_srvr.c
index ff86ec3f1a..6f788cd080 100644
--- a/src/lib/libssl/s3_srvr.c
+++ b/src/lib/libssl/s3_srvr.c
@@ -167,6 +167,44 @@
167 167
168static const SSL_METHOD *ssl3_get_server_method(int ver); 168static const SSL_METHOD *ssl3_get_server_method(int ver);
169 169
170const SSL_METHOD SSLv3_server_method_data = {
171 .version = SSL3_VERSION,
172 .ssl_new = ssl3_new,
173 .ssl_clear = ssl3_clear,
174 .ssl_free = ssl3_free,
175 .ssl_accept = ssl3_accept,
176 .ssl_connect = ssl_undefined_function,
177 .ssl_read = ssl3_read,
178 .ssl_peek = ssl3_peek,
179 .ssl_write = ssl3_write,
180 .ssl_shutdown = ssl3_shutdown,
181 .ssl_renegotiate = ssl3_renegotiate,
182 .ssl_renegotiate_check = ssl3_renegotiate_check,
183 .ssl_get_message = ssl3_get_message,
184 .ssl_read_bytes = ssl3_read_bytes,
185 .ssl_write_bytes = ssl3_write_bytes,
186 .ssl_dispatch_alert = ssl3_dispatch_alert,
187 .ssl_ctrl = ssl3_ctrl,
188 .ssl_ctx_ctrl = ssl3_ctx_ctrl,
189 .get_cipher_by_char = ssl3_get_cipher_by_char,
190 .put_cipher_by_char = ssl3_put_cipher_by_char,
191 .ssl_pending = ssl3_pending,
192 .num_ciphers = ssl3_num_ciphers,
193 .get_cipher = ssl3_get_cipher,
194 .get_ssl_method = ssl3_get_server_method,
195 .get_timeout = ssl3_default_timeout,
196 .ssl3_enc = &SSLv3_enc_data,
197 .ssl_version = ssl_undefined_void_function,
198 .ssl_callback_ctrl = ssl3_callback_ctrl,
199 .ssl_ctx_callback_ctrl = ssl3_ctx_callback_ctrl,
200};
201
202const SSL_METHOD *
203SSLv3_server_method(void)
204{
205 return &SSLv3_server_method_data;
206}
207
170static const SSL_METHOD * 208static const SSL_METHOD *
171ssl3_get_server_method(int ver) 209ssl3_get_server_method(int ver)
172{ 210{
@@ -175,10 +213,6 @@ ssl3_get_server_method(int ver)
175 return (NULL); 213 return (NULL);
176} 214}
177 215
178
179IMPLEMENT_ssl3_meth_func(SSLv3_server_method,
180 ssl3_accept, ssl_undefined_function, ssl3_get_server_method)
181
182int 216int
183ssl3_accept(SSL *s) 217ssl3_accept(SSL *s)
184{ 218{