DragonFlyBSD Kernel Audit
DF-0277 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/net/pf/pf_ioctl.c b/sys/net/pf/pf_ioctl.c
--- a/sys/net/pf/pf_ioctl.c
+++ b/sys/net/pf/pf_ioctl.c
@@ -1334,6 +1334,11 @@
 			break;
 		}
 		bcopy(rule, &pr->rule, sizeof(struct pf_rule));
+		bzero(&pr->rule.entries, sizeof(pr->rule.entries));
+		pr->rule.rpool.cur = NULL;
+		pr->rule.kif = NULL;
+		pr->rule.anchor = NULL;
+		pr->rule.overload_tbl = NULL;
 		if (pf_anchor_copyout(ruleset, rule, pr)) {
 			error = EBUSY;
 			break;