diff -uNr netmgmt-1.0.4/tools/netmgr/main.c netmgmt-1.0.4-new/tools/netmgr/main.c
--- netmgmt-1.0.4/tools/netmgr/main.c	2016-07-28 19:22:38.000000000 +0000
+++ netmgmt-1.0.4-new/tools/netmgr/main.c	2016-08-16 23:01:51.304430149 +0000
@@ -470,7 +470,7 @@
     size_t i = 0, count = 0;
     NET_DNS_MODE mode;
     char *s1, *s2, **szDnsServersList = NULL;
-    char szDnsServers[1024];
+    char *szDnsServers = NULL;
 
     if(!pCmdArgs)
     {
@@ -503,7 +503,8 @@
         bail_on_error(err);
     }
 
-    strcpy(szDnsServers, pCmdArgs->ppszCmds[3]);
+    err = netmgr_alloc_string(pCmdArgs->ppszCmds[3], &szDnsServers);
+    bail_on_error(err);
     if (strlen(szDnsServers) > 0)
     {
         s2 = pCmdArgs->ppszCmds[3];
@@ -549,6 +550,7 @@
         }
         netmgr_free(szDnsServersList);
     }
+    netmgr_free(szDnsServers);
     return err;
 
 error:
@@ -648,7 +650,7 @@
     int add_servers = 0;
     NET_DNS_MODE mode = DNS_MODE_INVALID;
     char *s1, *s2, **szDnsServersList = NULL;
-    char szServers[2048];
+    char *szServers = NULL;
 
     if(!pCmdArgs || (pCmdArgs->argc < 3))
     {
@@ -692,7 +694,8 @@
                 break;
             case 0:
                 /* --servers option */
-                strcpy(szServers, optarg);
+                err = netmgr_alloc_string(optarg, &szServers);
+                bail_on_error(err);
                 if (strlen(szServers) > 0)
                 {
                     s2 = szServers;
@@ -794,6 +797,7 @@
         }
         netmgr_free(szDnsServersList);
     }
+    netmgr_free(szServers);
     return err;
 
 error: