diff options
| author | djm <> | 2012-10-13 21:23:50 +0000 |
|---|---|---|
| committer | djm <> | 2012-10-13 21:23:50 +0000 |
| commit | 228cae30b117c2493f69ad3c195341cd6ec8d430 (patch) | |
| tree | 29ff00b10d52c0978077c4fd83c33b065bade73e /src/lib/libcrypto/pkcs12/p12_key.c | |
| parent | 731838c66b52c0ae5888333005b74115a620aa96 (diff) | |
| download | openbsd-228cae30b117c2493f69ad3c195341cd6ec8d430.tar.gz openbsd-228cae30b117c2493f69ad3c195341cd6ec8d430.tar.bz2 openbsd-228cae30b117c2493f69ad3c195341cd6ec8d430.zip | |
import OpenSSL-1.0.1c
Diffstat (limited to 'src/lib/libcrypto/pkcs12/p12_key.c')
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_key.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/lib/libcrypto/pkcs12/p12_key.c b/src/lib/libcrypto/pkcs12/p12_key.c index 424203f648..c55c7b60b3 100644 --- a/src/lib/libcrypto/pkcs12/p12_key.c +++ b/src/lib/libcrypto/pkcs12/p12_key.c | |||
| @@ -152,14 +152,16 @@ int PKCS12_key_gen_uni(unsigned char *pass, int passlen, unsigned char *salt, | |||
| 152 | for (i = 0; i < Slen; i++) *p++ = salt[i % saltlen]; | 152 | for (i = 0; i < Slen; i++) *p++ = salt[i % saltlen]; |
| 153 | for (i = 0; i < Plen; i++) *p++ = pass[i % passlen]; | 153 | for (i = 0; i < Plen; i++) *p++ = pass[i % passlen]; |
| 154 | for (;;) { | 154 | for (;;) { |
| 155 | EVP_DigestInit_ex(&ctx, md_type, NULL); | 155 | if (!EVP_DigestInit_ex(&ctx, md_type, NULL) |
| 156 | EVP_DigestUpdate(&ctx, D, v); | 156 | || !EVP_DigestUpdate(&ctx, D, v) |
| 157 | EVP_DigestUpdate(&ctx, I, Ilen); | 157 | || !EVP_DigestUpdate(&ctx, I, Ilen) |
| 158 | EVP_DigestFinal_ex(&ctx, Ai, NULL); | 158 | || !EVP_DigestFinal_ex(&ctx, Ai, NULL)) |
| 159 | goto err; | ||
| 159 | for (j = 1; j < iter; j++) { | 160 | for (j = 1; j < iter; j++) { |
| 160 | EVP_DigestInit_ex(&ctx, md_type, NULL); | 161 | if (!EVP_DigestInit_ex(&ctx, md_type, NULL) |
| 161 | EVP_DigestUpdate(&ctx, Ai, u); | 162 | || !EVP_DigestUpdate(&ctx, Ai, u) |
| 162 | EVP_DigestFinal_ex(&ctx, Ai, NULL); | 163 | || !EVP_DigestFinal_ex(&ctx, Ai, NULL)) |
| 164 | goto err; | ||
| 163 | } | 165 | } |
| 164 | memcpy (out, Ai, min (n, u)); | 166 | memcpy (out, Ai, min (n, u)); |
| 165 | if (u >= n) { | 167 | if (u >= n) { |
