summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2020-07-07 11:14:46 +0200
committerThomas Haller <thaller@redhat.com>2020-07-07 11:14:46 +0200
commit082aab5452bc22532afc9d2f4030d0c4d4683df7 (patch)
tree9edf063b231afc223a2ad790e619e5f31cc97dc6
parentcc3e23d2e522b37d468122fcb1951226534d91d6 (diff)
downloadNetworkManager-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.c14
-rw-r--r--src/n-dhcp4-private.h2
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];