aboutsummaryrefslogtreecommitdiff
path: root/sys/netpfil/pf/pf.h
diff options
context:
space:
mode:
authorKristof Provost <kp@FreeBSD.org>2020-12-12 14:14:56 +0000
committerKristof Provost <kp@FreeBSD.org>2021-01-05 22:35:37 +0000
commit320c11165b6b1113b34f9e156cbf85b5ed0aa5eb (patch)
tree8ed0c6ee66d85ad36f96e0c75d34617e8568bb7a /sys/netpfil/pf/pf.h
parentc3adacdad4d72b045058cd932351b94579cdd543 (diff)
downloadsrc-320c11165b6b1113b34f9e156cbf85b5ed0aa5eb.tar.gz
src-320c11165b6b1113b34f9e156cbf85b5ed0aa5eb.zip
pf: Split pfi_kif into a user and kernel space structure
No functional change. MFC after: 2 weeks Sponsored by: Orange Business Services Differential Revision: https://reviews.freebsd.org/D27761
Diffstat (limited to 'sys/netpfil/pf/pf.h')
-rw-r--r--sys/netpfil/pf/pf.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/sys/netpfil/pf/pf.h b/sys/netpfil/pf/pf.h
index 4e73d815aece..511c60f5abd1 100644
--- a/sys/netpfil/pf/pf.h
+++ b/sys/netpfil/pf/pf.h
@@ -189,6 +189,29 @@ enum { PF_ADDR_ADDRMASK, PF_ADDR_NOROUTE, PF_ADDR_DYNIFTL,
struct pf_rule;
+/* keep synced with pfi_kif, used in RB_FIND */
+struct pfi_kif_cmp {
+ char pfik_name[IFNAMSIZ];
+};
+
+struct pfi_kif {
+ char pfik_name[IFNAMSIZ];
+ union {
+ RB_ENTRY(pfi_kif) _pfik_tree;
+ LIST_ENTRY(pfi_kif) _pfik_list;
+ } _pfik_glue;
+#define pfik_tree _pfik_glue._pfik_tree
+#define pfik_list _pfik_glue._pfik_list
+ u_int64_t pfik_packets[2][2][2];
+ u_int64_t pfik_bytes[2][2][2];
+ u_int32_t pfik_tzero;
+ u_int pfik_flags;
+ struct ifnet *pfik_ifp;
+ struct ifg_group *pfik_group;
+ u_int pfik_rulerefs;
+ TAILQ_HEAD(, pfi_dynaddr) pfik_dynaddrs;
+};
+
struct pf_status {
uint64_t counters[PFRES_MAX];
uint64_t lcounters[LCNT_MAX];