diff options
author | Thomas Haller <thaller@redhat.com> | 2020-07-07 11:14:46 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2020-07-07 11:14:46 +0200 |
commit | 082aab5452bc22532afc9d2f4030d0c4d4683df7 (patch) | |
tree | 9edf063b231afc223a2ad790e619e5f31cc97dc6 | |
parent | cc3e23d2e522b37d468122fcb1951226534d91d6 (diff) | |
download | NetworkManager-082aab5452bc22532afc9d2f4030d0c4d4683df7.tar.gz |
Squashed 'shared/n-dhcp4/' changes from 6876b73ec113..5aeb53d149b4
5aeb53d149b4 client: use jrand48 instead of mrand48_r
git-subtree-dir: shared/n-dhcp4
git-subtree-split: 5aeb53d149b4a6108cae49c73c2308a7c5d52175
-rw-r--r-- | src/n-dhcp4-c-probe.c | 14 | ||||
-rw-r--r-- | src/n-dhcp4-private.h | 2 |
2 files changed, 4 insertions, 12 deletions
diff --git a/src/n-dhcp4-c-probe.c b/src/n-dhcp4-c-probe.c index f3d4f265c6..80169688cf 100644 --- a/src/n-dhcp4-c-probe.c +++ b/src/n-dhcp4-c-probe.c @@ -316,10 +316,9 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe unsigned short int seed16v[3]; const uint8_t *p; uint64_t u64; - int r; /* - * Initialize seed48_r(3) + * Initialize config's entropy buffer for successive jrand48(3) calls. * * We need random jitter for all timeouts and delays, used to reduce * network traffic during bursts. This is not meant as security measure @@ -360,8 +359,7 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe seed16v[1] = (u64 >> 16) ^ (u64 >> 0); seed16v[2] = (u64 >> 32) ^ (u64 >> 16); - r = seed48_r(seed16v, &config->entropy); - c_assert(!r); + memcpy(config->entropy, seed16v, sizeof(seed16v)); } /** @@ -374,13 +372,7 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe * Return: the random data. */ uint32_t n_dhcp4_client_probe_config_get_random(NDhcp4ClientProbeConfig *config) { - long int result; - int r; - - r = mrand48_r(&config->entropy, &result); - c_assert(!r); - - return result; + return jrand48(config->entropy); }; /** diff --git a/src/n-dhcp4-private.h b/src/n-dhcp4-private.h index 90f8f0c355..db7b24ff7d 100644 --- a/src/n-dhcp4-private.h +++ b/src/n-dhcp4-private.h @@ -263,7 +263,7 @@ struct NDhcp4ClientProbeConfig { bool inform_only; bool init_reboot; struct in_addr requested_ip; - struct drand48_data entropy; /* entropy pool */ + unsigned short int entropy[3]; uint64_t ms_start_delay; /* max ms to wait before starting probe */ NDhcp4ClientProbeOption *options[UINT8_MAX + 1]; int8_t request_parameters[UINT8_MAX + 1]; |