svn commit: r310958 - head/contrib/bsnmp/snmpd
Ngie Cooper
ngie at FreeBSD.org
Sat Dec 31 12:30:16 UTC 2016
Author: ngie
Date: Sat Dec 31 12:30:14 2016
New Revision: 310958
URL: https://svnweb.freebsd.org/changeset/base/310958
Log:
Initialize ret to SNMPD_INPUT_OK at the top of snmp_input_start(..) to
avoid returning an uninitialized value
There are some really complicated, snakey if-statements combined with
switch statements that could result in an invalid value being returned
as `ret`
MFC after: 1 week
Reported by: Coverity
CID: 1006551
Modified:
head/contrib/bsnmp/snmpd/main.c
Modified: head/contrib/bsnmp/snmpd/main.c
==============================================================================
--- head/contrib/bsnmp/snmpd/main.c Sat Dec 31 12:18:17 2016 (r310957)
+++ head/contrib/bsnmp/snmpd/main.c Sat Dec 31 12:30:14 2016 (r310958)
@@ -492,6 +492,8 @@ snmp_input_start(const u_char *buf, size
b.asn_cptr = buf;
b.asn_len = len;
+ ret = SNMPD_INPUT_OK;
+
/* look whether we have enough bytes for the entire PDU. */
switch (sret = snmp_pdu_snoop(&b)) {
@@ -520,8 +522,6 @@ snmp_input_start(const u_char *buf, size
}
code = snmp_pdu_decode_scoped(&b, pdu, ip);
- ret = SNMPD_INPUT_OK;
-
decoded:
snmpd_stats.inPkts++;
More information about the svn-src-all
mailing list