aboutsummaryrefslogtreecommitdiff
path: root/src/messages.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2018-02-12 14:35:55 +0100
committerAndreas Schneider <asn@cryptomilk.org>2018-02-12 14:41:27 +0100
commitebcff9fd630f8bd26b0cda23e39c63805f2b781b (patch)
tree117d6f7a61ebf2dbef4df9e3f09f487077afb79c /src/messages.c
parent25ff1214a40531cea33a91eed6225d4f4bf51cbc (diff)
downloadlibssh-ebcff9fd630f8bd26b0cda23e39c63805f2b781b.tar.gz
libssh-ebcff9fd630f8bd26b0cda23e39c63805f2b781b.tar.xz
libssh-ebcff9fd630f8bd26b0cda23e39c63805f2b781b.zip
src: Use explicit_bzero() if available on the platform
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/messages.c')
-rw-r--r--src/messages.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/messages.c b/src/messages.c
index 763a2732..af885314 100644
--- a/src/messages.c
+++ b/src/messages.c
@@ -554,7 +554,8 @@ void ssh_message_free(ssh_message msg){
case SSH_REQUEST_AUTH:
SAFE_FREE(msg->auth_request.username);
if (msg->auth_request.password) {
- BURN_STRING(msg->auth_request.password);
+ explicit_bzero(msg->auth_request.password,
+ strlen(msg->auth_request.password));
SAFE_FREE(msg->auth_request.password);
}
ssh_key_free(msg->auth_request.pubkey);
@@ -973,7 +974,8 @@ SSH_PACKET_CALLBACK(ssh_packet_userauth_info_response){
uint32_t n;
for (n = 0; n < session->kbdint->nanswers; n++) {
- BURN_STRING(session->kbdint->answers[n]);
+ explicit_bzero(session->kbdint->answers[n],
+ strlen(session->kbdint->answers[n]));
SAFE_FREE(session->kbdint->answers[n]);
}
SAFE_FREE(session->kbdint->answers);