diff options
author | Ben Laurie <ben@links.org> | 2014-07-06 11:07:16 +0100 |
---|---|---|
committer | Ben Laurie <ben@links.org> | 2014-07-06 11:07:16 +0100 |
commit | a887525f5bcf2e26191891fde50042b869234868 (patch) | |
tree | 3e605338b2fe5b08dbd37f089725a730e91635e0 | |
parent | 772efd4099c8e93290a5109302c03f0147275497 (diff) | |
download | openssl-new-eliminate-ssl-ctrl.tar.gz |
Make SSL_heartbeat() a real function.eliminate-ssl-ctrl
-rw-r--r-- | ssl/s3_lib.c | 27 | ||||
-rw-r--r-- | ssl/ssl.h | 5 | ||||
-rw-r--r-- | ssl/tls1.h | 3 |
3 files changed, 13 insertions, 22 deletions
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index d1db6b3de2..ab2fe87806 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -3416,7 +3416,7 @@ void SSL_set_tlsext_status_ocsp_resp(SSL *s, unsigned char *resp, s->tlsext_ocsp_resplen = resplen; } -#ifdef TLSEXT_TYPE_opaque_prf_input +# ifdef TLSEXT_TYPE_opaque_prf_input int SSL_set_tlsext_opaque_prf_input(SSL *s, const void *src, size_t len) { if (len > 12288) /* actual internal limit is 2^16 for the @@ -3440,13 +3440,15 @@ int SSL_set_tlsext_opaque_prf_input(SSL *s, const void *src, size_t len) s->tlsext_opaque_prf_input_len = 0; return 0; } +# endif +# ifndef OPENSSL_NO_HEARTBEATS int SSL_get_tlsext_heartbeat_pending(SSL *s) { return s->tlsext_hb_pending; } -void SSL_set_tlsext_heartbeat_no_requests(SSL, unsigned set) +void SSL_set_tlsext_heartbeat_no_requests(SSL *s, unsigned set) { if (set) s->tlsext_heartbeat |= SSL_TLSEXT_HB_DONT_RECV_REQUESTS; @@ -3454,7 +3456,13 @@ void SSL_set_tlsext_heartbeat_no_requests(SSL, unsigned set) s->tlsext_heartbeat &= ~SSL_TLSEXT_HB_DONT_RECV_REQUESTS; } -#endif +unsigned SSL_heartbeat(SSL *s) + { + if (SSL_IS_DTLS(s)) + return dtls1_heartbeat(s); + return tls1_heartbeat(s); + } +# endif /* ndef OPENSSL_NO_HEARTBEATS */ #endif /* ndef OPENSSL_NO_TLSEXT */ @@ -3618,19 +3626,6 @@ long ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) } break; #endif /* !OPENSSL_NO_ECDH */ -#ifndef OPENSSL_NO_TLSEXT - -#ifndef OPENSSL_NO_HEARTBEATS - case SSL_CTRL_TLS_EXT_SEND_HEARTBEAT: - if (SSL_IS_DTLS(s)) - ret = dtls1_heartbeat(s); - else - ret = tls1_heartbeat(s); - break; - -#endif - -#endif /* !OPENSSL_NO_TLSEXT */ case SSL_CTRL_CHAIN: if (larg) @@ -814,11 +814,6 @@ struct ssl_session_st #define SSL_get_secure_renegotiation_support(ssl) \ SSL_ctrl((ssl), SSL_CTRL_GET_RI_SUPPORT, 0, NULL) -#ifndef OPENSSL_NO_HEARTBEATS -#define SSL_heartbeat(ssl) \ - SSL_ctrl((ssl),SSL_CTRL_TLS_EXT_SEND_HEARTBEAT,0,NULL) -#endif - #define SSL_CTX_set_cert_flags(ctx,op) \ SSL_CTX_ctrl((ctx),SSL_CTRL_CERT_FLAGS,(op),NULL) #define SSL_set_cert_flags(s,op) \ diff --git a/ssl/tls1.h b/ssl/tls1.h index 1429dbabf2..1dd335c392 100644 --- a/ssl/tls1.h +++ b/ssl/tls1.h @@ -359,7 +359,8 @@ void SSL_set_tlsext_opaque_prf_input(SSL *s, const void *src, size_t len); # endif # ifndef OPENSSL_NO_HEARTBEATS int SSL_get_tlsext_heartbeat_pending(SSL *s); -void SSL_set_tlsext_heartbeat_no_requests(SSL, unsigned set); +void SSL_set_tlsext_heartbeat_no_requests(SSL *s, unsigned set); +void SSL_heartbeat(SSL *s); # endif #endif /* ndef OPENSSL_NO_TLSEXT */ |