diff options
author | ngie <ngie@FreeBSD.org> | 2016-05-15 00:05:28 +0000 |
---|---|---|
committer | ngie <ngie@FreeBSD.org> | 2016-05-15 00:05:28 +0000 |
commit | c06a1172705e1835990ad6329b2421a6634a8037 (patch) | |
tree | b72470c56f5ba6526508f1077dac85573041d282 /usr.sbin/bsnmpd | |
parent | 850d53b85cff3278b3f4f0649500800fa6389fe3 (diff) | |
download | FreeBSD-src-c06a1172705e1835990ad6329b2421a6634a8037.zip FreeBSD-src-c06a1172705e1835990ad6329b2421a6634a8037.tar.gz |
Fix up r299769
Similar to r299802, it was noted that using nitems on scalar pointers is
invalid.
Use strdup instead of malloc + strlcpy (which is what the old code was doing
anyhow).
MFC after: 1 week
Pointyhat to: ngie
Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'usr.sbin/bsnmpd')
-rw-r--r-- | usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpmap.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpmap.c b/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpmap.c index dc24783..7bfa07b 100644 --- a/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpmap.c +++ b/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpmap.c @@ -273,14 +273,13 @@ enum_pair_insert(struct enum_pairs *headp, int32_t enum_val, char *enum_str) return (-1); } - if ((e_new->enum_str = malloc(strlen(enum_str) + 1)) == NULL) { + if ((e_new->enum_str = strdup(enum_str)) == NULL) { syslog(LOG_ERR, "malloc() failed: %s", strerror(errno)); free(e_new); return (-1); } e_new->enum_val = enum_val; - strlcpy(e_new->enum_str, enum_str, nitems(e_new->enum_str)); STAILQ_INSERT_TAIL(headp, e_new, link); return (1); @@ -560,12 +559,11 @@ snmp_enumtc_init(char *name) return (NULL); } - if ((enum_tc->name = malloc(strlen(name) + 1)) == NULL) { + if ((enum_tc->name = strdup(name)) == NULL) { syslog(LOG_ERR, "malloc() failed: %s", strerror(errno)); free(enum_tc); return (NULL); } - strlcpy(enum_tc->name, name, nitems(enum_tc->name)); return (enum_tc); } |