--- ./common/discover.c	2018-02-21 09:30:46.000000000 -0500
+++ ./common/discover.c	2018-09-30 22:46:19.546912869 -0400
@@ -643,7 +643,7 @@
 				log_fatal("Error allocating interface %s: %s",
 					  info.name, isc_result_totext(status));
 			}
-			strncpy(tmp->name, info.name, sizeof(tmp->name) - 1);
+			memcpy(tmp->name, info.name, sizeof(tmp->name) -1 );
 			interface_snorf(tmp, ir);
 			interface_dereference(&tmp, MDL);
 			tmp = interfaces; /* XXX */


--- ./common/parse.c	2018-02-21 09:30:46.000000000 -0500
+++ ./common/parse.c	2018-09-30 22:46:19.550913309 -0400
@@ -5567,7 +5567,7 @@
 	va_list list;
 	char lexbuf [256];
 	char mbuf [1024];
-	char fbuf [1024];
+	char fbuf [1024*2];
 	unsigned i, lix;
 	
 	do_percentm (mbuf, fmt);


--- ./relay/dhcrelay.c	2018-02-21 09:30:46.000000000 -0500
+++ ./relay/dhcrelay.c	2018-09-30 22:46:19.570915509 -0400
@@ -2119,7 +2119,7 @@
 		  (flags & INTERFACE_UPSTREAM ? 'Y' : 'N'),
 		  (flags & INTERFACE_DOWNSTREAM ? 'Y' : 'N'));
 
-        strncpy(tmp->name, name, len);
+        memcpy(tmp->name, name, len);
         interface_snorf(tmp, (INTERFACE_REQUESTED | flags));
         interface_dereference(&tmp, MDL);
 }
