summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c')
-rw-r--r--usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c b/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c
index dfcd1f9..6a13bca 100644
--- a/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c
+++ b/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.c
@@ -119,8 +119,10 @@ bridge_set_default_name(const char *bif_name, uint len)
bcopy(bif_name, bif_default_name, len);
bif_default_name[len] = '\0';
- if ((bif = bridge_if_find_ifname(bif_default_name)) == NULL)
+ if ((bif = bridge_if_find_ifname(bif_default_name)) == NULL) {
+ bif_default = NULL;
return (0);
+ }
bif_default = bif;
return (1);
@@ -197,10 +199,16 @@ op_begemot_bridge_config(struct snmp_context *ctx, struct snmp_value *val,
return (SNMP_ERR_BADVALUE);
break;
case LEAF_begemotBridgeDataUpdate:
+ if (val->v.integer < SNMP_BRIDGE_DATA_MAXAGE_MIN ||
+ val->v.integer > SNMP_BRIDGE_DATA_MAXAGE_MAX)
+ return (SNMP_ERR_WRONG_VALUE);
ctx->scratch->int1 = bridge_data_maxage;
bridge_data_maxage = val->v.integer;
break;
case LEAF_begemotBridgeDataPoll:
+ if (val->v.integer < SNMP_BRIDGE_POLL_INTERVAL_MIN ||
+ val->v.integer > SNMP_BRIDGE_POLL_INTERVAL_MAX)
+ return (SNMP_ERR_WRONG_VALUE);
ctx->scratch->int1 = val->v.integer;
break;
}
OpenPOWER on IntegriCloud