upstream commit

some more bzero->explicit_bzero, from Michael McConville

Upstream-ID: 17f19545685c33327db2efdc357c1c9225ff00d0
This commit is contained in:
djm@openbsd.org 2015-10-05 17:11:21 +00:00 committed by Damien Miller
parent b007159a0a
commit 905b054ed2
2 changed files with 7 additions and 7 deletions

View File

@ -1,4 +1,4 @@
/* $OpenBSD: sshbuf-misc.c,v 1.4 2015/03/24 20:03:44 markus Exp $ */ /* $OpenBSD: sshbuf-misc.c,v 1.5 2015/10/05 17:11:21 djm Exp $ */
/* /*
* Copyright (c) 2011 Damien Miller * Copyright (c) 2011 Damien Miller
* *
@ -103,7 +103,7 @@ sshbuf_dtob64(struct sshbuf *buf)
if (SIZE_MAX / 2 <= len || (ret = malloc(plen)) == NULL) if (SIZE_MAX / 2 <= len || (ret = malloc(plen)) == NULL)
return NULL; return NULL;
if ((r = b64_ntop(p, len, ret, plen)) == -1) { if ((r = b64_ntop(p, len, ret, plen)) == -1) {
bzero(ret, plen); explicit_bzero(ret, plen);
free(ret); free(ret);
return NULL; return NULL;
} }
@ -122,16 +122,16 @@ sshbuf_b64tod(struct sshbuf *buf, const char *b64)
if ((p = malloc(plen)) == NULL) if ((p = malloc(plen)) == NULL)
return SSH_ERR_ALLOC_FAIL; return SSH_ERR_ALLOC_FAIL;
if ((nlen = b64_pton(b64, p, plen)) < 0) { if ((nlen = b64_pton(b64, p, plen)) < 0) {
bzero(p, plen); explicit_bzero(p, plen);
free(p); free(p);
return SSH_ERR_INVALID_FORMAT; return SSH_ERR_INVALID_FORMAT;
} }
if ((r = sshbuf_put(buf, p, nlen)) < 0) { if ((r = sshbuf_put(buf, p, nlen)) < 0) {
bzero(p, plen); explicit_bzero(p, plen);
free(p); free(p);
return r; return r;
} }
bzero(p, plen); explicit_bzero(p, plen);
free(p); free(p);
return 0; return 0;
} }

View File

@ -1,4 +1,4 @@
/* $OpenBSD: sshbuf.c,v 1.3 2015/01/20 23:14:00 deraadt Exp $ */ /* $OpenBSD: sshbuf.c,v 1.4 2015/10/05 17:11:21 djm Exp $ */
/* /*
* Copyright (c) 2011 Damien Miller * Copyright (c) 2011 Damien Miller
* *
@ -177,7 +177,7 @@ sshbuf_free(struct sshbuf *buf)
return; return;
dont_free = buf->dont_free; dont_free = buf->dont_free;
if (!buf->readonly) { if (!buf->readonly) {
bzero(buf->d, buf->alloc); explicit_bzero(buf->d, buf->alloc);
free(buf->d); free(buf->d);
} }
bzero(buf, sizeof(*buf)); bzero(buf, sizeof(*buf));