summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/ssh-xmss.c
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2020-02-26 13:40:09 +0000
committerjsg <jsg@openbsd.org>2020-02-26 13:40:09 +0000
commitc9831b39c7f05cf54db0775dea423b6be448db6e (patch)
treef50d8c53bee8b027f393d63b6867f7cdcf2c7a4b /usr.bin/ssh/ssh-xmss.c
parentHave sftp reject "-1" in the same way as ssh(1) and scp(1) do instead (diff)
downloadwireguard-openbsd-c9831b39c7f05cf54db0775dea423b6be448db6e.tar.xz
wireguard-openbsd-c9831b39c7f05cf54db0775dea423b6be448db6e.zip
change explicit_bzero();free() to freezero()
While freezero() returns early if the pointer is NULL the tests for NULL in callers are left to avoid warnings about passing an uninitialised size argument across a function boundry. ok deraadt@ djm@
Diffstat (limited to 'usr.bin/ssh/ssh-xmss.c')
-rw-r--r--usr.bin/ssh/ssh-xmss.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/usr.bin/ssh/ssh-xmss.c b/usr.bin/ssh/ssh-xmss.c
index d9dafd762a6..5aee5614387 100644
--- a/usr.bin/ssh/ssh-xmss.c
+++ b/usr.bin/ssh/ssh-xmss.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-xmss.c,v 1.1 2018/02/23 15:58:38 markus Exp $*/
+/* $OpenBSD: ssh-xmss.c,v 1.2 2020/02/26 13:40:09 jsg Exp $*/
/*
* Copyright (c) 2017 Stefan-Lukas Gazdag.
* Copyright (c) 2017 Markus Friedl.
@@ -100,10 +100,8 @@ ssh_xmss_sign(const struct sshkey *key, u_char **sigp, size_t *lenp,
r = ret;
}
sshbuf_free(b);
- if (sig != NULL) {
- explicit_bzero(sig, slen);
- free(sig);
- }
+ if (sig != NULL)
+ freezero(sig, slen);
return r;
}
@@ -174,14 +172,10 @@ ssh_xmss_verify(const struct sshkey *key,
/* success */
r = 0;
out:
- if (sm != NULL) {
- explicit_bzero(sm, smlen);
- free(sm);
- }
- if (m != NULL) {
- explicit_bzero(m, smlen); /* NB mlen may be invalid if r != 0 */
- free(m);
- }
+ if (sm != NULL)
+ freezero(sm, smlen);
+ if (m != NULL)
+ freezero(m, smlen);
sshbuf_free(b);
free(ktype);
return r;