diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2014-09-15 18:28:15 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2014-09-15 20:45:47 +0200 |
commit | 1ddb99c46ffbeeac52f27a630b50670848b39e0c (patch) | |
tree | fdf30975c9a909d43b85f32a8b97acdd009e86d4 | |
parent | 93c7b81b4ea1046bd2f65f4a510d5966786e8d3d (diff) | |
download | libssh-1ddb99c46ffbeeac52f27a630b50670848b39e0c.tar.gz libssh-1ddb99c46ffbeeac52f27a630b50670848b39e0c.tar.xz libssh-1ddb99c46ffbeeac52f27a630b50670848b39e0c.zip |
string: Correctly burn the string buffer.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Reviewed-by: Aris Adamantiadis <aris@0xbadc0de.be>
-rw-r--r-- | src/string.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/string.c b/src/string.c index 5ef90b0e..9002478f 100644 --- a/src/string.c +++ b/src/string.c @@ -235,10 +235,11 @@ struct ssh_string_struct *ssh_string_copy(struct ssh_string_struct *s) { * @param[in] s The string to burn. */ void ssh_string_burn(struct ssh_string_struct *s) { - if (s == NULL) { - return; - } - memset(s->data, 'X', ssh_string_len(s)); + if (s == NULL || s->size == 0) { + return; + } + + BURN_BUFFER(s->data, ssh_string_len(s)); } /** |