summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormaxim <maxim@FreeBSD.org>2003-01-20 11:58:34 +0000
committermaxim <maxim@FreeBSD.org>2003-01-20 11:58:34 +0000
commitb222781a3d7a2ebc9d8dadaf47aecae9a8582200 (patch)
treeb31910445a113179f137634028ada9e1378fe819
parentaeb9b9c73e3d6aae29bf7413209bbb66c0cf5d44 (diff)
downloadFreeBSD-src-b222781a3d7a2ebc9d8dadaf47aecae9a8582200.zip
FreeBSD-src-b222781a3d7a2ebc9d8dadaf47aecae9a8582200.tar.gz
If the first action is O_LOG adjust a pointer to the real one, unbreaks
skipto + log rules. Reported by: Wiktor Niesiobedzki <w@evip.pl> MFC after: 1 week
-rw-r--r--sys/netinet/ip_fw2.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/netinet/ip_fw2.c b/sys/netinet/ip_fw2.c
index 6759bd0..7a425ed 100644
--- a/sys/netinet/ip_fw2.c
+++ b/sys/netinet/ip_fw2.c
@@ -1180,6 +1180,8 @@ lookup_next_rule(struct ip_fw *me)
/* look for action, in case it is a skipto */
cmd = ACTION_PTR(me);
+ if (cmd->opcode == O_LOG)
+ cmd += F_LEN(cmd);
if ( cmd->opcode == O_SKIPTO )
for (rule = me->next; rule ; rule = rule->next)
if (rule->rulenum >= cmd->arg1)
OpenPOWER on IntegriCloud