summaryrefslogtreecommitdiff
path: root/pkcs11/secret-store
diff options
context:
space:
mode:
authorStef Walter <stefw@collabora.co.uk>2011-10-24 11:18:41 +0200
committerStef Walter <stefw@collabora.co.uk>2011-10-25 13:10:02 +0200
commit71bdb5dc967ec99b3b2fe9d5994de7996b4142c5 (patch)
tree258b5b9bfbd5ff6a6a1e4d75ffc598025bd85324 /pkcs11/secret-store
parentfc922d8d80ec2c1f85e6d6d34583c19b864f9f00 (diff)
downloadgnome-keyring-71bdb5dc967ec99b3b2fe9d5994de7996b4142c5.tar.gz
pkcs11: Use g_random_int_range() for pseudo-random hash iteration count
* Used when hashing passwords into symmetric keys * Previous solution was overflowing https://bugzilla.gnome.org/show_bug.cgi?id=662025
Diffstat (limited to 'pkcs11/secret-store')
-rw-r--r--pkcs11/secret-store/gkm-secret-binary.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pkcs11/secret-store/gkm-secret-binary.c b/pkcs11/secret-store/gkm-secret-binary.c
index 29cd9cdc..9f6569e9 100644
--- a/pkcs11/secret-store/gkm-secret-binary.c
+++ b/pkcs11/secret-store/gkm-secret-binary.c
@@ -584,7 +584,7 @@ gkm_secret_binary_write (GkmSecretCollection *collection, GkmSecretData *sdata,
egg_buffer_init_full (&buffer, 256, g_realloc);
/* Prepare the keyring for encryption */
- hash_iterations = 1000 + (int) (1000.0 * rand() / (RAND_MAX + 1.0));
+ hash_iterations = g_random_int_range (1000, 4096);
gcry_create_nonce (salt, sizeof (salt));
egg_buffer_append (&buffer, (guchar*)KEYRING_FILE_HEADER, KEYRING_FILE_HEADER_LEN);