commit f658f34
default
·
2023-04-16 18:19:25 +0000 UTC
parent 8205159
Replaced random() with arc4random().
3 files changed,
+8,
-9
+4,
-4
1@@ -21,10 +21,10 @@ static xs_str *random_str(void)
2 fclose(f);
3 }
4 else {
5- data[0] = random() % 0xffffffff;
6- data[1] = random() % 0xffffffff;
7- data[2] = random() % 0xffffffff;
8- data[3] = random() % 0xffffffff;
9+ data[0] = arc4random();
10+ data[1] = arc4random();
11+ data[2] = arc4random();
12+ data[3] = arc4random();
13 }
14
15 return xs_hex_enc((char *)data, sizeof(data));
M
snac.c
+1,
-1
1@@ -123,7 +123,7 @@ d_char *hash_password(const char *uid, const char *passwd, const char *nonce)
2 xs *hash;
3
4 if (nonce == NULL) {
5- d_nonce = xs_fmt("%08x", random());
6+ d_nonce = xs_fmt("%08x", arc4random());
7 nonce = d_nonce;
8 }
9
M
utils.c
+3,
-4
1@@ -198,10 +198,9 @@ void new_password(const char *uid, d_char **clear_pwd, d_char **hashed_pwd)
2 {
3 int rndbuf[3];
4
5- srandom(time(NULL) ^ getpid());
6- rndbuf[0] = random() & 0xffffffff;
7- rndbuf[1] = random() & 0xffffffff;
8- rndbuf[2] = random() & 0xffffffff;
9+ rndbuf[0] = arc4random();
10+ rndbuf[1] = arc4random();
11+ rndbuf[2] = arc4random();
12
13 *clear_pwd = xs_base64_enc((char *)rndbuf, sizeof(rndbuf));
14 *hashed_pwd = hash_password(uid, *clear_pwd, NULL);