git: 8e496ea1df1f - main - pf: always log nat rule and do it pre-rewrite

Kristof Provost kp at FreeBSD.org
Sat Sep 18 13:50:42 UTC 2021


The branch main has been updated by kp:

URL: https://cgit.FreeBSD.org/src/commit/?id=8e496ea1df1f00ea7832eb41754dbbb56dd244c8

commit 8e496ea1df1f00ea7832eb41754dbbb56dd244c8
Author:     Franco Fichtner <franco at opnsense.org>
AuthorDate: 2021-09-18 11:42:43 +0000
Commit:     Kristof Provost <kp at FreeBSD.org>
CommitDate: 2021-09-18 11:43:41 +0000

    pf: always log nat rule and do it pre-rewrite
    
    See also https://github.com/opnsense/core/issues/5005
    
    Reviewed by:    kp
    Differential Revision:  https://reviews.freebsd.org/D31504
---
 sys/netpfil/pf/pf.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index 221e0c87c11f..1d492370953a 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -3629,6 +3629,11 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm, int direction,
 		KASSERT(sk != NULL, ("%s: null sk", __func__));
 		KASSERT(nk != NULL, ("%s: null nk", __func__));
 
+		if (nr->log) {
+			PFLOG_PACKET(kif, m, af, direction, PFRES_MATCH, nr, a,
+			    ruleset, pd, 1);
+		}
+
 		if (pd->ip_sum)
 			bip_sum = *pd->ip_sum;
 
@@ -3857,10 +3862,10 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm, int direction,
 	/* apply actions for last matching pass/block rule */
 	pf_rule_to_actions(r, &pd->act);
 
-	if (r->log || (nr != NULL && nr->log)) {
+	if (r->log) {
 		if (rewrite)
 			m_copyback(m, off, hdrlen, pd->hdr.any);
-		PFLOG_PACKET(kif, m, af, direction, reason, r->log ? r : nr, a,
+		PFLOG_PACKET(kif, m, af, direction, reason, r, a,
 		    ruleset, pd, 1);
 	}
 


More information about the dev-commits-src-main mailing list