diff options
author | jpeeler <jpeeler@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2008-02-18 17:32:26 +0000 |
---|---|---|
committer | jpeeler <jpeeler@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2008-02-18 17:32:26 +0000 |
commit | 23a324c0a98aba6d1bd13718d0d49d503c5987e0 (patch) | |
tree | 726099eee04498d137f1d9a3da25c8bd6067a10f /ztcfg.c | |
parent | 517b95c8dd353100be49168eee07fc8966db23c2 (diff) |
Closes issue #11471. Replaced instances of strncpy with zap_copy_string (added to zaptel.h) to fix any off by one errors and ensure destination string is NULL terminated.
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.4@3846 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'ztcfg.c')
-rw-r--r-- | ztcfg.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -268,8 +268,8 @@ int dspanconfig(char *keyword, char *args) } - strncpy(zds[numdynamic].driver, realargs[0], sizeof(zds[numdynamic].driver)); - strncpy(zds[numdynamic].addr, realargs[1], sizeof(zds[numdynamic].addr)); + zap_copy_string(zds[numdynamic].driver, realargs[0], sizeof(zds[numdynamic].driver)); + zap_copy_string(zds[numdynamic].addr, realargs[1], sizeof(zds[numdynamic].addr)); zds[numdynamic].numchans = chans; zds[numdynamic].timing = timing; @@ -377,7 +377,7 @@ int apply_channels(int chans[], char *argstr) for (x=0;x<res;x++) { if (strchr(args[x], '-')) { /* It's a range */ - strncpy(argcopy, args[x], sizeof(argcopy)); + zap_copy_string(argcopy, args[x], sizeof(argcopy)); res2 = parseargs(argcopy, range, 2, '-'); if (res2 != 2) { error("Syntax error in range '%s'. Should be <val1>-<val2>.\n", args[x]); @@ -571,7 +571,7 @@ static int chanconfig(char *keyword, char *args) } else { cc[x].sigtype = ZT_SIG_HDLCNET; if (idle) { - strncpy(cc[x].netdev_name, idle, sizeof(cc[x].netdev_name) - 1); + zap_copy_string(cc[x].netdev_name, idle, sizeof(cc[x].netdev_name)); } master = x; } @@ -631,7 +631,7 @@ static int registerzone(char *keyword, char *args) error("Too many tone zones specified\n"); return 0; } - strncpy(zonestoload[numzones++], args, sizeof(zonestoload[0])); + zap_copy_string(zonestoload[numzones++], args, sizeof(zonestoload[0])); return 0; } @@ -967,7 +967,7 @@ int rad_apply_channels(int chans[], char *argstr) for (x=0;x<res;x++) { if (strchr(args[x], '-')) { /* It's a range */ - strncpy(argcopy, args[x], sizeof(argcopy)); + zap_copy_string(argcopy, args[x], sizeof(argcopy)); res2 = parseargs(argcopy, range, 2, '-'); if (res2 != 2) { error("Syntax error in range '%s'. Should be <val1>-<val2>.\n", args[x]); |