svn commit: r310954 - head/usr.sbin/bsnmpd/tools/libbsnmptools
Ngie Cooper
ngie at FreeBSD.org
Sat Dec 31 12:14:26 UTC 2016
Author: ngie
Date: Sat Dec 31 12:14:25 2016
New Revision: 310954
URL: https://svnweb.freebsd.org/changeset/base/310954
Log:
Set value->v.octetstring.len to a correct value on malloc success/failure
The previous code always set value->v.octetstring.len to len, regardless
of the result from the malloc call. This misleads the caller on malloc
failure. Set .len to len on success and 0 on failure.
MFC after: 1 week
Reported by: Coverity
CID: 1007590
Modified:
head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptc.c
Modified: head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptc.c
==============================================================================
--- head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptc.c Sat Dec 31 12:06:27 2016 (r310953)
+++ head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptc.c Sat Dec 31 12:14:25 2016 (r310954)
@@ -266,13 +266,13 @@ parse_octetstring(struct snmp_value *val
return (-1);
}
- value->v.octetstring.len = len;
-
- if((value->v.octetstring.octets = malloc(len)) == NULL) {
+ if ((value->v.octetstring.octets = malloc(len)) == NULL) {
+ value->v.octetstring.len = 0;
syslog(LOG_ERR, "malloc failed: %s", strerror(errno));
return (-1);
}
+ value->v.octetstring.len = len;
memcpy(value->v.octetstring.octets, val, len);
value->syntax = SNMP_SYNTAX_OCTETSTRING;
More information about the svn-src-head
mailing list