diff options
author | millert <> | 2008-04-02 19:54:05 +0000 |
---|---|---|
committer | millert <> | 2008-04-02 19:54:05 +0000 |
commit | fe435898d593343d7d9fdc31aa597c1c40026222 (patch) | |
tree | 3b988ee9a279286888b0561ef2829aaed26ff815 /src/lib/libc/crypt | |
parent | ffaeb4385bd768970027074604abaaf23ac9a04e (diff) | |
download | openbsd-fe435898d593343d7d9fdc31aa597c1c40026222.tar.gz openbsd-fe435898d593343d7d9fdc31aa597c1c40026222.tar.bz2 openbsd-fe435898d593343d7d9fdc31aa597c1c40026222.zip |
Zero state buffers on return. OK deraadt@
Diffstat (limited to 'src/lib/libc/crypt')
-rw-r--r-- | src/lib/libc/crypt/bcrypt.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/libc/crypt/bcrypt.c b/src/lib/libc/crypt/bcrypt.c index 769d303402..207e76ea46 100644 --- a/src/lib/libc/crypt/bcrypt.c +++ b/src/lib/libc/crypt/bcrypt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: bcrypt.c,v 1.23 2007/03/19 05:18:32 ray Exp $ */ | 1 | /* $OpenBSD: bcrypt.c,v 1.24 2008/04/02 19:54:05 millert Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright 1997 Niels Provos <provos@physnet.uni-hamburg.de> | 4 | * Copyright 1997 Niels Provos <provos@physnet.uni-hamburg.de> |
@@ -270,6 +270,10 @@ bcrypt(const char *key, const char *salt) | |||
270 | encode_base64((u_int8_t *) encrypted + i + 3, csalt, BCRYPT_MAXSALT); | 270 | encode_base64((u_int8_t *) encrypted + i + 3, csalt, BCRYPT_MAXSALT); |
271 | encode_base64((u_int8_t *) encrypted + strlen(encrypted), ciphertext, | 271 | encode_base64((u_int8_t *) encrypted + strlen(encrypted), ciphertext, |
272 | 4 * BCRYPT_BLOCKS - 1); | 272 | 4 * BCRYPT_BLOCKS - 1); |
273 | memset(&state, 0, sizeof(state)); | ||
274 | memset(ciphertext, 0, sizeof(ciphertext)); | ||
275 | memset(csalt, 0, sizeof(csalt)); | ||
276 | memset(cdata, 0, sizeof(cdata)); | ||
273 | return encrypted; | 277 | return encrypted; |
274 | } | 278 | } |
275 | 279 | ||