diff options
author | melifaro <melifaro@FreeBSD.org> | 2015-11-08 12:24:19 +0000 |
---|---|---|
committer | melifaro <melifaro@FreeBSD.org> | 2015-11-08 12:24:19 +0000 |
commit | 2eab7c29cab0fcd0fa8a02daa940044177f5c421 (patch) | |
tree | b73e0d31c412e93f377e546551ba921fc7380577 /sys/netpfil | |
parent | 6017eab6e97ce7575fd474a6230601263d745751 (diff) | |
download | FreeBSD-src-2eab7c29cab0fcd0fa8a02daa940044177f5c421.zip FreeBSD-src-2eab7c29cab0fcd0fa8a02daa940044177f5c421.tar.gz |
Fix setfib target.
Problem was introduced in r272840 when converting tablearg value to 0.
Submitted by: Denis Schneider <v1ne2go at gmail>
Diffstat (limited to 'sys/netpfil')
-rw-r--r-- | sys/netpfil/ipfw/ip_fw2.c | 2 | ||||
-rw-r--r-- | sys/netpfil/ipfw/ip_fw_sockopt.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sys/netpfil/ipfw/ip_fw2.c b/sys/netpfil/ipfw/ip_fw2.c index e32c7cc..73a27df 100644 --- a/sys/netpfil/ipfw/ip_fw2.c +++ b/sys/netpfil/ipfw/ip_fw2.c @@ -2476,7 +2476,7 @@ do { \ uint32_t fib; IPFW_INC_RULE_COUNTER(f, pktlen); - fib = TARG(cmd->arg1, fib) & 0x7FFFF; + fib = TARG(cmd->arg1, fib) & 0x7FFF; if (fib >= rt_numfibs) fib = 0; M_SETFIB(m, fib); diff --git a/sys/netpfil/ipfw/ip_fw_sockopt.c b/sys/netpfil/ipfw/ip_fw_sockopt.c index 4ae8961..e1caa14 100644 --- a/sys/netpfil/ipfw/ip_fw_sockopt.c +++ b/sys/netpfil/ipfw/ip_fw_sockopt.c @@ -1497,9 +1497,9 @@ check_ipfw_rule_body(ipfw_insn *cmd, int cmd_len, struct rule_check_info *ci) if (cmdlen != F_INSN_SIZE(ipfw_insn)) goto bad_size; if ((cmd->arg1 != IP_FW_TARG) && - ((cmd->arg1 & 0x7FFFF) >= rt_numfibs)) { + ((cmd->arg1 & 0x7FFF) >= rt_numfibs)) { printf("ipfw: invalid fib number %d\n", - cmd->arg1 & 0x7FFFF); + cmd->arg1 & 0x7FFF); return EINVAL; } goto check_action; |