summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_both.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/lib/libssl/ssl_both.c26
1 files changed, 15 insertions, 11 deletions
diff --git a/src/lib/libssl/ssl_both.c b/src/lib/libssl/ssl_both.c
index 488a5ff7c9..dff44ecd41 100644
--- a/src/lib/libssl/ssl_both.c
+++ b/src/lib/libssl/ssl_both.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_both.c,v 1.18 2020/05/19 16:35:20 jsing Exp $ */ 1/* $OpenBSD: ssl_both.c,v 1.19 2020/09/24 17:59:54 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -708,7 +708,7 @@ ssl3_setup_read_buffer(SSL *s)
708 S3I(s)->rbuf.len = len; 708 S3I(s)->rbuf.len = len;
709 } 709 }
710 710
711 s->internal->packet = &(S3I(s)->rbuf.buf[0]); 711 s->internal->packet = S3I(s)->rbuf.buf;
712 return 1; 712 return 1;
713 713
714err: 714err:
@@ -759,18 +759,22 @@ ssl3_setup_buffers(SSL *s)
759 return 1; 759 return 1;
760} 760}
761 761
762int 762void
763ssl3_release_write_buffer(SSL *s) 763ssl3_release_buffer(SSL3_BUFFER_INTERNAL *b)
764{ 764{
765 free(S3I(s)->wbuf.buf); 765 freezero(b->buf, b->len);
766 S3I(s)->wbuf.buf = NULL; 766 b->buf = NULL;
767 return 1; 767 b->len = 0;
768} 768}
769 769
770int 770void
771ssl3_release_read_buffer(SSL *s) 771ssl3_release_read_buffer(SSL *s)
772{ 772{
773 free(S3I(s)->rbuf.buf); 773 ssl3_release_buffer(&S3I(s)->rbuf);
774 S3I(s)->rbuf.buf = NULL; 774}
775 return 1; 775
776void
777ssl3_release_write_buffer(SSL *s)
778{
779 ssl3_release_buffer(&S3I(s)->wbuf);
776} 780}