summaryrefslogtreecommitdiffstats
path: root/patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch')
-rw-r--r--patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch82
1 files changed, 82 insertions, 0 deletions
diff --git a/patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch b/patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch
new file mode 100644
index 000000000..f0e3cc450
--- /dev/null
+++ b/patches/dhcp-4.4.2/0001-Fixed-gcc-10-compilation-issues.patch
@@ -0,0 +1,82 @@
+From: Thomas Markwalder <tmark@isc.org>
+Date: Thu, 30 Jul 2020 10:01:36 -0400
+Subject: [PATCH] Fixed gcc 10 compilation issues
+
+client/dhclient.c
+relay/dhcrelay.c
+ extern'ed local_port,remote_port
+
+common/discover.c
+ init local_port,remote_port to 0
+
+server/mdb.c
+ extern'ed dhcp_type_host
+
+server/mdb6.c
+ create_prefix6() - eliminated memcpy string overflow error
+
+Origin: https://sources.debian.org/patches/isc-dhcp/4.4.1-2.2/Fixed_gcc_10_compilation_issues.patch/
+---
+ client/dhclient.c | 5 +++--
+ relay/dhcrelay.c | 4 ++--
+ server/mdb.c | 2 +-
+ server/mdb6.c | 2 +-
+ 4 files changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/client/dhclient.c b/client/dhclient.c
+index 189e527094e8..7a7837cb8152 100644
+--- a/client/dhclient.c
++++ b/client/dhclient.c
+@@ -83,8 +83,9 @@ static const char message [] = "Internet Systems Consortium DHCP Client";
+ static const char url [] = "For info, please visit https://www.isc.org/software/dhcp/";
+ #endif /* UNIT_TEST */
+
+-u_int16_t local_port = 0;
+-u_int16_t remote_port = 0;
++extern u_int16_t local_port;
++extern u_int16_t remote_port;
++
+ #if defined(DHCPv6) && defined(DHCP4o6)
+ int dhcp4o6_state = -1; /* -1 = stopped, 0 = polling, 1 = started */
+ #endif
+diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c
+index 883d5058f2ee..7211e3bbbec9 100644
+--- a/relay/dhcrelay.c
++++ b/relay/dhcrelay.c
+@@ -95,8 +95,8 @@ enum { forward_and_append, /* Forward and append our own relay option. */
+ forward_untouched, /* Forward without changes. */
+ discard } agent_relay_mode = forward_and_replace;
+
+-u_int16_t local_port;
+-u_int16_t remote_port;
++extern u_int16_t local_port;
++extern u_int16_t remote_port;
+
+ /* Relay agent server list. */
+ struct server_list {
+diff --git a/server/mdb.c b/server/mdb.c
+index ff8a707fac1b..8266d76432b8 100644
+--- a/server/mdb.c
++++ b/server/mdb.c
+@@ -67,7 +67,7 @@ static host_id_info_t *host_id_info = NULL;
+
+ int numclasseswritten;
+
+-omapi_object_type_t *dhcp_type_host;
++extern omapi_object_type_t *dhcp_type_host;
+
+ isc_result_t enter_class(cd, dynamicp, commit)
+ struct class *cd;
+diff --git a/server/mdb6.c b/server/mdb6.c
+index da7baf6e50df..ebe01e5607cb 100644
+--- a/server/mdb6.c
++++ b/server/mdb6.c
+@@ -1945,7 +1945,7 @@ create_prefix6(struct ipv6_pool *pool, struct iasubopt **pref,
+ }
+ new_ds.data = new_ds.buffer->data;
+ memcpy(new_ds.buffer->data, ds.data, ds.len);
+- memcpy(new_ds.buffer->data + ds.len, &tmp, sizeof(tmp));
++ memcpy(&new_ds.buffer->data[0] + ds.len, &tmp, sizeof(tmp));
+ data_string_forget(&ds, MDL);
+ data_string_copy(&ds, &new_ds, MDL);
+ data_string_forget(&new_ds, MDL);