Encapsulate access to s->s3->wbuf
Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
15
ssl/s3_lib.c
15
ssl/s3_lib.c
@@ -3131,7 +3131,7 @@ void ssl3_free(SSL *s)
|
||||
return;
|
||||
|
||||
ssl3_cleanup_key_block(s);
|
||||
if (s->s3->wbuf.buf != NULL)
|
||||
if (SSL3_BUFFER_is_initialised(RECORD_LAYER_get_wbuf(&s->rlayer)))
|
||||
ssl3_release_write_buffer(s);
|
||||
if (s->s3->rrec.comp != NULL)
|
||||
OPENSSL_free(s->s3->rrec.comp);
|
||||
@@ -3188,8 +3188,8 @@ void ssl3_clear(SSL *s)
|
||||
# endif /* !OPENSSL_NO_EC */
|
||||
#endif /* !OPENSSL_NO_TLSEXT */
|
||||
|
||||
wp = s->s3->wbuf.buf;
|
||||
wlen = s->s3->wbuf.len;
|
||||
wp = SSL3_BUFFER_get_buf(RECORD_LAYER_get_wbuf(&s->rlayer));
|
||||
wlen = SSL3_BUFFER_get_len(RECORD_LAYER_get_wbuf(&s->rlayer));
|
||||
init_extra = s->s3->init_extra;
|
||||
BIO_free(s->s3->handshake_buffer);
|
||||
s->s3->handshake_buffer = NULL;
|
||||
@@ -3203,8 +3203,8 @@ void ssl3_clear(SSL *s)
|
||||
}
|
||||
#endif
|
||||
memset(s->s3, 0, sizeof *s->s3);
|
||||
s->s3->wbuf.buf = wp;
|
||||
s->s3->wbuf.len = wlen;
|
||||
SSL3_BUFFER_set_buf(RECORD_LAYER_get_wbuf(&s->rlayer), wp);
|
||||
SSL3_BUFFER_set_len(RECORD_LAYER_get_wbuf(&s->rlayer), wlen);
|
||||
s->s3->init_extra = init_extra;
|
||||
|
||||
ssl_free_wbio_buffer(s);
|
||||
@@ -4488,8 +4488,9 @@ int ssl3_renegotiate_check(SSL *s)
|
||||
int ret = 0;
|
||||
|
||||
if (s->s3->renegotiate) {
|
||||
if ((SSL3_BUFFER_get_left(RECORD_LAYER_get_rbuf(&s->rlayer)) == 0) &&
|
||||
(s->s3->wbuf.left == 0) && !SSL_in_init(s)) {
|
||||
if ((SSL3_BUFFER_get_left(RECORD_LAYER_get_rbuf(&s->rlayer)) == 0)
|
||||
&& (SSL3_BUFFER_get_left(RECORD_LAYER_get_wbuf(&s->rlayer)) == 0)
|
||||
&& !SSL_in_init(s)) {
|
||||
/*
|
||||
* if we are the server, and we have sent a 'RENEGOTIATE'
|
||||
* message, we need to go to SSL_ST_ACCEPT.
|
||||
|
Reference in New Issue
Block a user