1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-22 16:18:48 -05:00

darwinssl: don't use arc4random_buf

Re-wrote Curl_darwinssl_random() to not use arc4random_buf() because the
function is not available prior to iOS 4.3 and OS X 10.7.
This commit is contained in:
Nick Zitzmann 2012-07-07 16:03:16 -06:00 committed by Daniel Stenberg
parent bce8bc203f
commit 59c88da74d

View File

@ -835,8 +835,19 @@ void Curl_darwinssl_random(struct SessionHandle *data,
unsigned char *entropy,
size_t length)
{
/* arc4random_buf() isn't available on cats older than Lion, so let's
do this manually for the benefit of the older cats. */
size_t i;
u_int32_t random = 0;
for(i = 0 ; i < length ; i++) {
if(i % sizeof(u_int32_t) == 0)
random = arc4random();
entropy[i] = random & 0xFF;
random >>= 8;
}
i = random = 0;
(void)data;
arc4random_buf(entropy, length);
}
void Curl_darwinssl_md5sum(unsigned char *tmp, /* input */