aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2014-09-15 18:28:15 +0200
committerAndreas Schneider <asn@cryptomilk.org>2014-09-15 20:45:47 +0200
commit1ddb99c46ffbeeac52f27a630b50670848b39e0c (patch)
treefdf30975c9a909d43b85f32a8b97acdd009e86d4
parent93c7b81b4ea1046bd2f65f4a510d5966786e8d3d (diff)
downloadlibssh-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.c9
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));
}
/**