diff options
author | 2007-06-21 19:31:49 +0000 | |
---|---|---|
committer | 2007-06-21 19:31:49 +0000 | |
commit | 41d698f12d7f132e40ff3748838ee97061b2908e (patch) | |
tree | a8f0054c6778b839eee80e487a21d2ac29e81ba8 /sys/net/pf_ioctl.c | |
parent | always initialize logif, from max laier, ok ryan (diff) | |
download | wireguard-openbsd-41d698f12d7f132e40ff3748838ee97061b2908e.tar.xz wireguard-openbsd-41d698f12d7f132e40ff3748838ee97061b2908e.zip |
force logif to zero if no logging is asked for
check the logif when changing a rule
from max laier, ok ryan
Diffstat (limited to 'sys/net/pf_ioctl.c')
-rw-r--r-- | sys/net/pf_ioctl.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/net/pf_ioctl.c b/sys/net/pf_ioctl.c index f1340e7695b..807ef1bf47e 100644 --- a/sys/net/pf_ioctl.c +++ b/sys/net/pf_ioctl.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf_ioctl.c,v 1.180 2007/06/07 13:32:06 henning Exp $ */ +/* $OpenBSD: pf_ioctl.c,v 1.181 2007/06/21 19:31:49 henning Exp $ */ /* * Copyright (c) 2001 Daniel Hartmeier @@ -1207,6 +1207,8 @@ pfioctl(dev_t dev, u_long cmd, caddr_t addr, int flags, struct proc *p) if (rule->rt && !rule->direction) error = EINVAL; #if NPFLOG > 0 + if (!rule->log) + rule->logif = 0; if (rule->logif >= PFLOGIFS_MAX) error = EINVAL; #endif @@ -1448,6 +1450,12 @@ pfioctl(dev_t dev, u_long cmd, caddr_t addr, int flags, struct proc *p) error = EBUSY; if (newrule->rt && !newrule->direction) error = EINVAL; +#if NPFLOG > 0 + if (!newrule->log) + newrule->logif = 0; + if (newrule->logif >= PFLOGIFS_MAX) + error = EINVAL; +#endif if (pf_rtlabel_add(&newrule->src.addr) || pf_rtlabel_add(&newrule->dst.addr)) error = EBUSY; |