diff options
Diffstat (limited to 'meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch')
-rw-r--r-- | meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch new file mode 100644 index 0000000000..62252826e2 --- /dev/null +++ b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch @@ -0,0 +1,61 @@ +From aff5cded8847f3eee59f5cec22afb8630d401a85 Mon Sep 17 00:00:00 2001 +From: Adrian Freihofer <adrian.freihofer@siemens.com> +Date: Sat, 7 Mar 2020 14:22:36 +0100 +Subject: [PATCH 3/4] Fix build with musl for n-dhcp4 + +--- + shared/n-dhcp4/src/n-dhcp4-c-probe.c | 8 ++++++++ + shared/n-dhcp4/src/n-dhcp4-private.h | 4 ++++ + 2 files changed, 12 insertions(+) + +diff --git a/shared/n-dhcp4/src/n-dhcp4-c-probe.c b/shared/n-dhcp4/src/n-dhcp4-c-probe.c +index e4477a7..75713c8 100644 +--- a/shared/n-dhcp4/src/n-dhcp4-c-probe.c ++++ b/shared/n-dhcp4/src/n-dhcp4-c-probe.c +@@ -360,8 +360,12 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe + seed16v[1] = (u64 >> 16) ^ (u64 >> 0); + seed16v[2] = (u64 >> 32) ^ (u64 >> 16); + ++#ifdef __GLIBC__ + r = seed48_r(seed16v, &config->entropy); + c_assert(!r); ++#else ++ memcpy(config->entropy, seed16v, sizeof seed16v); ++#endif + } + + /** +@@ -375,10 +379,14 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe + */ + uint32_t n_dhcp4_client_probe_config_get_random(NDhcp4ClientProbeConfig *config) { + long int result; ++#ifdef __GLIBC__ + int r; + + r = mrand48_r(&config->entropy, &result); + c_assert(!r); ++#else ++ result = jrand48(config->entropy); ++#endif + + return result; + }; +diff --git a/shared/n-dhcp4/src/n-dhcp4-private.h b/shared/n-dhcp4/src/n-dhcp4-private.h +index 436ee80..ffcb4b2 100644 +--- a/shared/n-dhcp4/src/n-dhcp4-private.h ++++ b/shared/n-dhcp4/src/n-dhcp4-private.h +@@ -267,7 +267,11 @@ struct NDhcp4ClientProbeConfig { + bool inform_only; + bool init_reboot; + struct in_addr requested_ip; ++#ifdef __GLIBC__ + struct drand48_data entropy; /* entropy pool */ ++#else ++ unsigned short entropy[3]; /* entropy pool */ ++#endif + uint64_t ms_start_delay; /* max ms to wait before starting probe */ + NDhcp4ClientProbeOption *options[UINT8_MAX + 1]; + int8_t request_parameters[UINT8_MAX + 1]; +-- +2.24.1 + |