1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _XT_CT_H 3 #define _XT_CT_H 4 5 #include <linux/types.h> 6 7 enum { 8 XT_CT_NOTRACK = 1 << 0, 9 XT_CT_NOTRACK_ALIAS = 1 << 1, 10 XT_CT_ZONE_DIR_ORIG = 1 << 2, 11 XT_CT_ZONE_DIR_REPL = 1 << 3, 12 XT_CT_ZONE_MARK = 1 << 4, 13 14 XT_CT_MASK = XT_CT_NOTRACK | XT_CT_NOTRACK_ALIAS | 15 XT_CT_ZONE_DIR_ORIG | XT_CT_ZONE_DIR_REPL | 16 XT_CT_ZONE_MARK, 17 }; 18 19 struct xt_ct_target_info { 20 __u16 flags; 21 __u16 zone; 22 __u32 ct_events; 23 __u32 exp_events; 24 char helper[16]; 25 26 /* Used internally by the kernel */ 27 struct nf_conn *ct __attribute__((aligned(8))); 28 }; 29 30 struct xt_ct_target_info_v1 { 31 __u16 flags; 32 __u16 zone; 33 __u32 ct_events; 34 __u32 exp_events; 35 char helper[16]; 36 char timeout[32]; 37 38 /* Used internally by the kernel */ 39 struct nf_conn *ct __attribute__((aligned(8))); 40 }; 41 42 #endif /* _XT_CT_H */ 43