X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=sshsh512.c;h=b734c735de86516dae71764ef485987f9ce8ee2f;hb=eef0235a0f79e92f25f34782fc486c101fa703ee;hp=cd2b296e63bdf1efed34b2423257f6aa9ef704ed;hpb=954df095f4ec3ca98c225e89f737f17477695785;p=PuTTY.git diff --git a/sshsh512.c b/sshsh512.c index cd2b296e..b734c735 100644 --- a/sshsh512.c +++ b/sshsh512.c @@ -306,6 +306,7 @@ void SHA512_Simple(const void *p, int len, unsigned char *output) { SHA512_Init(&s); SHA512_Bytes(&s, p, len); SHA512_Final(&s, output); + smemclr(&s, sizeof(s)); } void SHA384_Simple(const void *p, int len, unsigned char *output) { @@ -314,6 +315,7 @@ void SHA384_Simple(const void *p, int len, unsigned char *output) { SHA384_Init(&s); SHA512_Bytes(&s, p, len); SHA384_Final(&s, output); + smemclr(&s, sizeof(s)); } /* @@ -341,6 +343,7 @@ static void sha512_final(void *handle, unsigned char *output) SHA512_State *s = handle; SHA512_Final(s, output); + smemclr(s, sizeof(*s)); sfree(s); } @@ -362,6 +365,7 @@ static void sha384_final(void *handle, unsigned char *output) SHA512_State *s = handle; SHA384_Final(s, output); + smemclr(s, sizeof(*s)); sfree(s); }