X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=sshsha.c;h=4870bba86ee2f0e04fb2b5afc33b91f35e552ef0;hb=460c45dd235fae180256c9606df865066f8a791c;hp=579bf4dea17f0d269e6e71b31dbcd24df0f76ba4;hpb=9d5a16402168f82ba1bd695c3e95bb4812ccd0a9;p=PuTTY.git diff --git a/sshsha.c b/sshsha.c index 579bf4de..4870bba8 100644 --- a/sshsha.c +++ b/sshsha.c @@ -214,6 +214,7 @@ void SHA_Simple(const void *p, int len, unsigned char *output) SHA_Init(&s); SHA_Bytes(&s, p, len); SHA_Final(&s, output); + smemclr(&s, sizeof(s)); } /* @@ -241,6 +242,7 @@ static void sha1_final(void *handle, unsigned char *output) SHA_State *s = handle; SHA_Final(s, output); + smemclr(s, sizeof(*s)); sfree(s); } @@ -260,6 +262,7 @@ static void *sha1_make_context(void) static void sha1_free_context(void *handle) { + smemclr(handle, 3 * sizeof(SHA_State)); sfree(handle); }