summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2003-09-23 18:55:43 +1000
committerDarren Tucker <dtucker@zip.com.au>2003-09-23 18:55:43 +1000
commite1318fb07f775f2d54cacd98c217de9c25fbe964 (patch)
tree697f887b253e75a2f47c3166c819895e8b41887d
parentd640322dd83423ee78cea4d576ea29395454dabd (diff)
- markus@cvs.openbsd.org 2003/09/18 07:54:48
[buffer.c] protect against double free; #660; zardoz at users.sf.net
-rw-r--r--ChangeLog5
-rw-r--r--buffer.c3
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 06c1937ce..0a73b9948 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,9 @@
3 - markus@cvs.openbsd.org 2003/09/18 07:52:54 3 - markus@cvs.openbsd.org 2003/09/18 07:52:54
4 [sshconnect.c] 4 [sshconnect.c]
5 missing {}; bug #656; jclonguet at free.fr 5 missing {}; bug #656; jclonguet at free.fr
6 - markus@cvs.openbsd.org 2003/09/18 07:54:48
7 [buffer.c]
8 protect against double free; #660; zardoz at users.sf.net
6 9
720030922 1020030922
8 - (dtucker) [Makefile.in] Bug #644: Fix "make clean" for out-of-tree 11 - (dtucker) [Makefile.in] Bug #644: Fix "make clean" for out-of-tree
@@ -1168,4 +1171,4 @@
1168 - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. 1171 - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo.
1169 Report from murple@murple.net, diagnosis from dtucker@zip.com.au 1172 Report from murple@murple.net, diagnosis from dtucker@zip.com.au
1170 1173
1171$Id: ChangeLog,v 1.2994.2.28 2003/09/23 08:49:28 dtucker Exp $ 1174$Id: ChangeLog,v 1.2994.2.29 2003/09/23 08:55:43 dtucker Exp $
diff --git a/buffer.c b/buffer.c
index aee293f8b..a80880bb9 100644
--- a/buffer.c
+++ b/buffer.c
@@ -12,7 +12,7 @@
12 */ 12 */
13 13
14#include "includes.h" 14#include "includes.h"
15RCSID("$OpenBSD: buffer.c,v 1.18 2003/09/16 21:02:39 markus Exp $"); 15RCSID("$OpenBSD: buffer.c,v 1.19 2003/09/18 07:54:48 markus Exp $");
16 16
17#include "xmalloc.h" 17#include "xmalloc.h"
18#include "buffer.h" 18#include "buffer.h"
@@ -39,6 +39,7 @@ buffer_free(Buffer *buffer)
39{ 39{
40 if (buffer->alloc > 0) { 40 if (buffer->alloc > 0) {
41 memset(buffer->buf, 0, buffer->alloc); 41 memset(buffer->buf, 0, buffer->alloc);
42 buffer->alloc = 0;
42 xfree(buffer->buf); 43 xfree(buffer->buf);
43 } 44 }
44} 45}