Home | History | Annotate | Download | only in netfilter
      1 #ifndef _IPCONNTRACK_NETLINK_H
      2 #define _IPCONNTRACK_NETLINK_H
      3 #include <linux/netfilter/nfnetlink.h>
      4 
      5 enum cntl_msg_types {
      6 	IPCTNL_MSG_CT_NEW,
      7 	IPCTNL_MSG_CT_GET,
      8 	IPCTNL_MSG_CT_DELETE,
      9 	IPCTNL_MSG_CT_GET_CTRZERO,
     10 	IPCTNL_MSG_CT_GET_STATS_CPU,
     11 	IPCTNL_MSG_CT_GET_STATS,
     12 
     13 	IPCTNL_MSG_MAX
     14 };
     15 
     16 enum ctnl_exp_msg_types {
     17 	IPCTNL_MSG_EXP_NEW,
     18 	IPCTNL_MSG_EXP_GET,
     19 	IPCTNL_MSG_EXP_DELETE,
     20 	IPCTNL_MSG_EXP_GET_STATS_CPU,
     21 
     22 	IPCTNL_MSG_EXP_MAX
     23 };
     24 
     25 
     26 enum ctattr_type {
     27 	CTA_UNSPEC,
     28 	CTA_TUPLE_ORIG,
     29 	CTA_TUPLE_REPLY,
     30 	CTA_STATUS,
     31 	CTA_PROTOINFO,
     32 	CTA_HELP,
     33 	CTA_NAT_SRC,
     34 #define CTA_NAT	CTA_NAT_SRC	/* backwards compatibility */
     35 	CTA_TIMEOUT,
     36 	CTA_MARK,
     37 	CTA_COUNTERS_ORIG,
     38 	CTA_COUNTERS_REPLY,
     39 	CTA_USE,
     40 	CTA_ID,
     41 	CTA_NAT_DST,
     42 	CTA_TUPLE_MASTER,
     43 	CTA_NAT_SEQ_ADJ_ORIG,
     44 	CTA_NAT_SEQ_ADJ_REPLY,
     45 	CTA_SECMARK,		/* obsolete */
     46 	CTA_ZONE,
     47 	CTA_SECCTX,
     48 	CTA_TIMESTAMP,
     49 	CTA_MARK_MASK,
     50 	__CTA_MAX
     51 };
     52 #define CTA_MAX (__CTA_MAX - 1)
     53 
     54 enum ctattr_tuple {
     55 	CTA_TUPLE_UNSPEC,
     56 	CTA_TUPLE_IP,
     57 	CTA_TUPLE_PROTO,
     58 	__CTA_TUPLE_MAX
     59 };
     60 #define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1)
     61 
     62 enum ctattr_ip {
     63 	CTA_IP_UNSPEC,
     64 	CTA_IP_V4_SRC,
     65 	CTA_IP_V4_DST,
     66 	CTA_IP_V6_SRC,
     67 	CTA_IP_V6_DST,
     68 	__CTA_IP_MAX
     69 };
     70 #define CTA_IP_MAX (__CTA_IP_MAX - 1)
     71 
     72 enum ctattr_l4proto {
     73 	CTA_PROTO_UNSPEC,
     74 	CTA_PROTO_NUM,
     75 	CTA_PROTO_SRC_PORT,
     76 	CTA_PROTO_DST_PORT,
     77 	CTA_PROTO_ICMP_ID,
     78 	CTA_PROTO_ICMP_TYPE,
     79 	CTA_PROTO_ICMP_CODE,
     80 	CTA_PROTO_ICMPV6_ID,
     81 	CTA_PROTO_ICMPV6_TYPE,
     82 	CTA_PROTO_ICMPV6_CODE,
     83 	__CTA_PROTO_MAX
     84 };
     85 #define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1)
     86 
     87 enum ctattr_protoinfo {
     88 	CTA_PROTOINFO_UNSPEC,
     89 	CTA_PROTOINFO_TCP,
     90 	CTA_PROTOINFO_DCCP,
     91 	CTA_PROTOINFO_SCTP,
     92 	__CTA_PROTOINFO_MAX
     93 };
     94 #define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1)
     95 
     96 enum ctattr_protoinfo_tcp {
     97 	CTA_PROTOINFO_TCP_UNSPEC,
     98 	CTA_PROTOINFO_TCP_STATE,
     99 	CTA_PROTOINFO_TCP_WSCALE_ORIGINAL,
    100 	CTA_PROTOINFO_TCP_WSCALE_REPLY,
    101 	CTA_PROTOINFO_TCP_FLAGS_ORIGINAL,
    102 	CTA_PROTOINFO_TCP_FLAGS_REPLY,
    103 	__CTA_PROTOINFO_TCP_MAX
    104 };
    105 #define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1)
    106 
    107 enum ctattr_protoinfo_dccp {
    108 	CTA_PROTOINFO_DCCP_UNSPEC,
    109 	CTA_PROTOINFO_DCCP_STATE,
    110 	CTA_PROTOINFO_DCCP_ROLE,
    111 	CTA_PROTOINFO_DCCP_HANDSHAKE_SEQ,
    112 	__CTA_PROTOINFO_DCCP_MAX,
    113 };
    114 #define CTA_PROTOINFO_DCCP_MAX (__CTA_PROTOINFO_DCCP_MAX - 1)
    115 
    116 enum ctattr_protoinfo_sctp {
    117 	CTA_PROTOINFO_SCTP_UNSPEC,
    118 	CTA_PROTOINFO_SCTP_STATE,
    119 	CTA_PROTOINFO_SCTP_VTAG_ORIGINAL,
    120 	CTA_PROTOINFO_SCTP_VTAG_REPLY,
    121 	__CTA_PROTOINFO_SCTP_MAX
    122 };
    123 #define CTA_PROTOINFO_SCTP_MAX (__CTA_PROTOINFO_SCTP_MAX - 1)
    124 
    125 enum ctattr_counters {
    126 	CTA_COUNTERS_UNSPEC,
    127 	CTA_COUNTERS_PACKETS,		/* 64bit counters */
    128 	CTA_COUNTERS_BYTES,		/* 64bit counters */
    129 	CTA_COUNTERS32_PACKETS,		/* old 32bit counters, unused */
    130 	CTA_COUNTERS32_BYTES,		/* old 32bit counters, unused */
    131 	__CTA_COUNTERS_MAX
    132 };
    133 #define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1)
    134 
    135 enum ctattr_tstamp {
    136 	CTA_TIMESTAMP_UNSPEC,
    137 	CTA_TIMESTAMP_START,
    138 	CTA_TIMESTAMP_STOP,
    139 	__CTA_TIMESTAMP_MAX
    140 };
    141 #define CTA_TIMESTAMP_MAX (__CTA_TIMESTAMP_MAX - 1)
    142 
    143 enum ctattr_nat {
    144 	CTA_NAT_UNSPEC,
    145 	CTA_NAT_V4_MINIP,
    146 #define CTA_NAT_MINIP CTA_NAT_V4_MINIP
    147 	CTA_NAT_V4_MAXIP,
    148 #define CTA_NAT_MAXIP CTA_NAT_V4_MAXIP
    149 	CTA_NAT_PROTO,
    150 	CTA_NAT_V6_MINIP,
    151 	CTA_NAT_V6_MAXIP,
    152 	__CTA_NAT_MAX
    153 };
    154 #define CTA_NAT_MAX (__CTA_NAT_MAX - 1)
    155 
    156 enum ctattr_protonat {
    157 	CTA_PROTONAT_UNSPEC,
    158 	CTA_PROTONAT_PORT_MIN,
    159 	CTA_PROTONAT_PORT_MAX,
    160 	__CTA_PROTONAT_MAX
    161 };
    162 #define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1)
    163 
    164 enum ctattr_natseq {
    165 	CTA_NAT_SEQ_UNSPEC,
    166 	CTA_NAT_SEQ_CORRECTION_POS,
    167 	CTA_NAT_SEQ_OFFSET_BEFORE,
    168 	CTA_NAT_SEQ_OFFSET_AFTER,
    169 	__CTA_NAT_SEQ_MAX
    170 };
    171 #define CTA_NAT_SEQ_MAX (__CTA_NAT_SEQ_MAX - 1)
    172 
    173 enum ctattr_expect {
    174 	CTA_EXPECT_UNSPEC,
    175 	CTA_EXPECT_MASTER,
    176 	CTA_EXPECT_TUPLE,
    177 	CTA_EXPECT_MASK,
    178 	CTA_EXPECT_TIMEOUT,
    179 	CTA_EXPECT_ID,
    180 	CTA_EXPECT_HELP_NAME,
    181 	CTA_EXPECT_ZONE,
    182 	CTA_EXPECT_FLAGS,
    183 	CTA_EXPECT_CLASS,
    184 	CTA_EXPECT_NAT,
    185 	CTA_EXPECT_FN,
    186 	__CTA_EXPECT_MAX
    187 };
    188 #define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1)
    189 
    190 enum ctattr_expect_nat {
    191 	CTA_EXPECT_NAT_UNSPEC,
    192 	CTA_EXPECT_NAT_DIR,
    193 	CTA_EXPECT_NAT_TUPLE,
    194 	__CTA_EXPECT_NAT_MAX
    195 };
    196 #define CTA_EXPECT_NAT_MAX (__CTA_EXPECT_NAT_MAX - 1)
    197 
    198 enum ctattr_help {
    199 	CTA_HELP_UNSPEC,
    200 	CTA_HELP_NAME,
    201 	CTA_HELP_INFO,
    202 	__CTA_HELP_MAX
    203 };
    204 #define CTA_HELP_MAX (__CTA_HELP_MAX - 1)
    205 
    206 enum ctattr_secctx {
    207 	CTA_SECCTX_UNSPEC,
    208 	CTA_SECCTX_NAME,
    209 	__CTA_SECCTX_MAX
    210 };
    211 #define CTA_SECCTX_MAX (__CTA_SECCTX_MAX - 1)
    212 
    213 enum ctattr_stats_cpu {
    214 	CTA_STATS_UNSPEC,
    215 	CTA_STATS_SEARCHED,
    216 	CTA_STATS_FOUND,
    217 	CTA_STATS_NEW,
    218 	CTA_STATS_INVALID,
    219 	CTA_STATS_IGNORE,
    220 	CTA_STATS_DELETE,
    221 	CTA_STATS_DELETE_LIST,
    222 	CTA_STATS_INSERT,
    223 	CTA_STATS_INSERT_FAILED,
    224 	CTA_STATS_DROP,
    225 	CTA_STATS_EARLY_DROP,
    226 	CTA_STATS_ERROR,
    227 	CTA_STATS_SEARCH_RESTART,
    228 	__CTA_STATS_MAX,
    229 };
    230 #define CTA_STATS_MAX (__CTA_STATS_MAX - 1)
    231 
    232 enum ctattr_stats_global {
    233 	CTA_STATS_GLOBAL_UNSPEC,
    234 	CTA_STATS_GLOBAL_ENTRIES,
    235 	__CTA_STATS_GLOBAL_MAX,
    236 };
    237 #define CTA_STATS_GLOBAL_MAX (__CTA_STATS_GLOBAL_MAX - 1)
    238 
    239 enum ctattr_expect_stats {
    240 	CTA_STATS_EXP_UNSPEC,
    241 	CTA_STATS_EXP_NEW,
    242 	CTA_STATS_EXP_CREATE,
    243 	CTA_STATS_EXP_DELETE,
    244 	__CTA_STATS_EXP_MAX,
    245 };
    246 #define CTA_STATS_EXP_MAX (__CTA_STATS_EXP_MAX - 1)
    247 
    248 #endif /* _IPCONNTRACK_NETLINK_H */
    249