diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2011-12-31 22:59:57 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2011-12-31 22:59:57 +0000 |
commit | 4817504d069b4c5082161b02a22116ad75f822b1 (patch) | |
tree | 7a85f6af852e34e5b80080b50d80741f6ab36c5a /ssl/d1_clnt.c | |
parent | 84b6e277d4f45487377d0159e82c356d750e1218 (diff) |
PR: 2658
Submitted by: Robin Seggelmann <seggelmann@fh-muenster.de>
Reviewed by: steve
Support for TLS/DTLS heartbeats.
Diffstat (limited to 'ssl/d1_clnt.c')
-rw-r--r-- | ssl/d1_clnt.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ssl/d1_clnt.c b/ssl/d1_clnt.c index 4ee4848957..bb1fd6ac0a 100644 --- a/ssl/d1_clnt.c +++ b/ssl/d1_clnt.c @@ -177,6 +177,19 @@ int dtls1_connect(SSL *s) BIO_ctrl(SSL_get_wbio(s), BIO_CTRL_DGRAM_SCTP_SET_IN_HANDSHAKE, s->in_handshake, NULL); #endif +#ifndef OPENSSL_NO_HEARTBEATS + /* If we're awaiting a HeartbeatResponse, pretend we + * already got and don't await it anymore, because + * Heartbeats don't make sense during handshakes anyway. + */ + if (s->tlsext_hb_pending) + { + dtls1_stop_timer(s); + s->tlsext_hb_pending = 0; + s->tlsext_hb_seq++; + } +#endif + for (;;) { state=s->state; |