diff options
author | 2020-02-26 13:40:09 +0000 | |
---|---|---|
committer | 2020-02-26 13:40:09 +0000 | |
commit | c9831b39c7f05cf54db0775dea423b6be448db6e (patch) | |
tree | f50d8c53bee8b027f393d63b6867f7cdcf2c7a4b /usr.bin/ssh/ssh-xmss.c | |
parent | Have sftp reject "-1" in the same way as ssh(1) and scp(1) do instead (diff) | |
download | wireguard-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.c | 20 |
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; |