138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris/**************************************************************************** 238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris **************************************************************************** 338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** 438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** This header was automatically generated from a Linux kernel header 538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** of the same name, to make information necessary for userspace to 638062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** call into the kernel available to libc. It contains only constants, 738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** structures, and macros generated from the original header, and thus, 838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** contains no copyrightable information. 938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** 1038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** To edit the content of this header, modify the corresponding 1138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** source file (e.g. under external/kernel-headers/original/) then 1238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** run bionic/libc/kernel/tools/update_all.py 1338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** 1438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** Any manual change here will be lost the next time this script will 1538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** be run. You've been warned! 1638062f954c637861348dd8078cefb73554e6f12cChristopher Ferris *** 1738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris **************************************************************************** 1838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris ****************************************************************************/ 1938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#ifndef _LINUX_NF_TABLES_H 2038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define _LINUX_NF_TABLES_H 211308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_NAME_MAXLEN 256 221308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_TABLE_MAXNAMELEN NFT_NAME_MAXLEN 231308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_CHAIN_MAXNAMELEN NFT_NAME_MAXLEN 241308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_SET_MAXNAMELEN NFT_NAME_MAXLEN 251308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_OBJ_MAXNAMELEN NFT_NAME_MAXLEN 2605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFT_USERDATA_MAXLEN 256 27ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferrisenum nft_registers { 2848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG_VERDICT, 29106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_REG_1, 3005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG_2, 31d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REG_3, 3248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG_4, 33106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __NFT_REG_MAX, 3405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_00 = 8, 3549f525c47bd383cd6a87db8f067cddb3ab620d17Christopher Ferris NFT_REG32_01, 3648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG32_02, 37106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_REG32_03, 3805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_04, 3905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_05, 4048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG32_06, 41106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_REG32_07, 4205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_08, 4305d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_09, 4448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG32_10, 45106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_REG32_11, 4605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_12, 4705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_REG32_13, 4848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_REG32_14, 49106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_REG32_15, 5005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 51ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris#define NFT_REG_MAX (__NFT_REG_MAX - 1) 5248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_REG_SIZE 16 53106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define NFT_REG32_SIZE 4 5438062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_verdicts { 55d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CONTINUE = - 1, 5648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_BREAK = - 2, 57106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_JUMP = - 3, 58d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_GOTO = - 4, 59d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_RETURN = - 5, 6048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 61106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum nf_tables_msg_types { 62d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_NEWTABLE, 63d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_GETTABLE, 6448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_DELTABLE, 65106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_MSG_NEWCHAIN, 66d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_GETCHAIN, 67d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_DELCHAIN, 6848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_NEWRULE, 69106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_MSG_GETRULE, 70d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_DELRULE, 71d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_NEWSET, 7248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_GETSET, 73106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_MSG_DELSET, 74d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_NEWSETELEM, 75d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_GETSETELEM, 7648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_DELSETELEM, 77106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_MSG_NEWGEN, 78d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_MSG_GETGEN, 79106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_MSG_TRACE, 8048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_NEWOBJ, 8148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_GETOBJ, 8248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_DELOBJ, 8348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_GETOBJ_RESET, 8448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_MSG_MAX, 8538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 8638062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_list_attributes { 87d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LIST_UNPEC, 8848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_LIST_ELEM, 89d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_LIST_MAX 9038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 9138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_LIST_MAX (__NFTA_LIST_MAX - 1) 9248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_hook_attributes { 93d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_HOOK_UNSPEC, 94d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_HOOK_HOOKNUM, 95d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_HOOK_PRIORITY, 9648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_HOOK_DEV, 97d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_HOOK_MAX 9838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 9938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_HOOK_MAX (__NFTA_HOOK_MAX - 1) 10048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_table_flags { 101d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_TABLE_F_DORMANT = 0x1, 10238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 10338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_table_attributes { 10448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_TABLE_UNSPEC, 105d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_TABLE_NAME, 106d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_TABLE_FLAGS, 107d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_TABLE_USE, 10848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_TABLE_MAX 109ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris}; 11038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_TABLE_MAX (__NFTA_TABLE_MAX - 1) 11138062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_chain_attributes { 11248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_CHAIN_UNSPEC, 113d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_TABLE, 114d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_HANDLE, 115d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_NAME, 11648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_CHAIN_HOOK, 117d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_POLICY, 118d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_USE, 119d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CHAIN_TYPE, 12048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_CHAIN_COUNTERS, 121106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_CHAIN_PAD, 122d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_CHAIN_MAX 12338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 12448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_CHAIN_MAX (__NFTA_CHAIN_MAX - 1) 12538062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_rule_attributes { 126d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_UNSPEC, 127d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_TABLE, 12848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RULE_CHAIN, 129d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_HANDLE, 130d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_EXPRESSIONS, 131d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_COMPAT, 13248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RULE_POSITION, 133d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_USERDATA, 134106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_RULE_PAD, 135525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_RULE_ID, 136d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_RULE_MAX 13748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 13838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_RULE_MAX (__NFTA_RULE_MAX - 1) 13938062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_rule_compat_flags { 140d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_RULE_COMPAT_F_INV = (1 << 1), 14148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_RULE_COMPAT_F_MASK = NFT_RULE_COMPAT_F_INV, 14238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 14338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_rule_compat_attributes { 144d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_COMPAT_UNSPEC, 14548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RULE_COMPAT_PROTO, 146d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_RULE_COMPAT_FLAGS, 147d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_RULE_COMPAT_MAX 14838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 14948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_RULE_COMPAT_MAX (__NFTA_RULE_COMPAT_MAX - 1) 15038062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_set_flags { 151d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_ANONYMOUS = 0x1, 152d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_CONSTANT = 0x2, 15348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_SET_INTERVAL = 0x4, 154d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_MAP = 0x8, 15505d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_SET_TIMEOUT = 0x10, 15605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_SET_EVAL = 0x20, 15748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_SET_OBJECT = 0x40, 15848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 159ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferrisenum nft_set_policies { 160d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_POL_PERFORMANCE, 161d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_POL_MEMORY, 162ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris}; 163ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferrisenum nft_set_desc_attributes { 164d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_DESC_UNSPEC, 165d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_DESC_SIZE, 166d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_SET_DESC_MAX 167ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris}; 168ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris#define NFTA_SET_DESC_MAX (__NFTA_SET_DESC_MAX - 1) 16938062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_set_attributes { 170d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_UNSPEC, 171d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_TABLE, 172d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_NAME, 173d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_FLAGS, 174d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_KEY_TYPE, 175d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_KEY_LEN, 176d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_DATA_TYPE, 177d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_DATA_LEN, 178d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_POLICY, 179d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_DESC, 180d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ID, 18105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_TIMEOUT, 18205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_GC_INTERVAL, 183106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_SET_USERDATA, 184106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_SET_PAD, 18548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_SET_OBJ_TYPE, 186d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_SET_MAX 18738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 18838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_SET_MAX (__NFTA_SET_MAX - 1) 18938062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_set_elem_flags { 190d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_SET_ELEM_INTERVAL_END = 0x1, 19138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 19238062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_set_elem_attributes { 193d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_UNSPEC, 194d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_KEY, 195d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_DATA, 196d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_FLAGS, 19705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_ELEM_TIMEOUT, 19805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_ELEM_EXPIRATION, 19905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_ELEM_USERDATA, 20005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_SET_ELEM_EXPR, 201106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_SET_ELEM_PAD, 20248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_SET_ELEM_OBJREF, 203d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_SET_ELEM_MAX 20438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 20538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_SET_ELEM_MAX (__NFTA_SET_ELEM_MAX - 1) 20638062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_set_elem_list_attributes { 207d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_LIST_UNSPEC, 208d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_LIST_TABLE, 209d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_LIST_SET, 210d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_LIST_ELEMENTS, 211d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_SET_ELEM_LIST_SET_ID, 212d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_SET_ELEM_LIST_MAX 21338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 21438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_SET_ELEM_LIST_MAX (__NFTA_SET_ELEM_LIST_MAX - 1) 21538062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_data_types { 216d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_DATA_VALUE, 217d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_DATA_VERDICT = 0xffffff00U, 21838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 21938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFT_DATA_RESERVED_MASK 0xffffff00U 22038062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_data_attributes { 221d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_DATA_UNSPEC, 222d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_DATA_VALUE, 223d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_DATA_VERDICT, 224d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_DATA_MAX 22538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 22638062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_DATA_MAX (__NFTA_DATA_MAX - 1) 22705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFT_DATA_VALUE_MAXLEN 64 22805d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_verdict_attributes { 229d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_VERDICT_UNSPEC, 230d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_VERDICT_CODE, 231d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_VERDICT_CHAIN, 23205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris __NFTA_VERDICT_MAX 23338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 23438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_VERDICT_MAX (__NFTA_VERDICT_MAX - 1) 23538062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_expr_attributes { 23605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_EXPR_UNSPEC, 237d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXPR_NAME, 238d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXPR_DATA, 239d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_EXPR_MAX 24005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 24138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_EXPR_MAX (__NFTA_EXPR_MAX - 1) 24238062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_immediate_attributes { 243d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_IMMEDIATE_UNSPEC, 24405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_IMMEDIATE_DREG, 245d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_IMMEDIATE_DATA, 246d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_IMMEDIATE_MAX 24738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 24805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_IMMEDIATE_MAX (__NFTA_IMMEDIATE_MAX - 1) 24938062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_bitwise_attributes { 250d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BITWISE_UNSPEC, 251d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BITWISE_SREG, 25205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_BITWISE_DREG, 253d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BITWISE_LEN, 254d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BITWISE_MASK, 255d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BITWISE_XOR, 25605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris __NFTA_BITWISE_MAX 25738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 25838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_BITWISE_MAX (__NFTA_BITWISE_MAX - 1) 25938062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_byteorder_ops { 26005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_BYTEORDER_NTOH, 261d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_BYTEORDER_HTON, 26238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 26338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_byteorder_attributes { 26405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_BYTEORDER_UNSPEC, 265d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BYTEORDER_SREG, 266d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BYTEORDER_DREG, 267d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BYTEORDER_OP, 26805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_BYTEORDER_LEN, 269d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_BYTEORDER_SIZE, 270d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_BYTEORDER_MAX 27138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 27205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_BYTEORDER_MAX (__NFTA_BYTEORDER_MAX - 1) 27338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_cmp_ops { 274d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CMP_EQ, 275d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CMP_NEQ, 27605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_CMP_LT, 277d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CMP_LTE, 278d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CMP_GT, 279d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CMP_GTE, 28005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 28138062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_cmp_attributes { 282d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CMP_UNSPEC, 283d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CMP_SREG, 28405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_CMP_OP, 285d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CMP_DATA, 286d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_CMP_MAX 28738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 28805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_CMP_MAX (__NFTA_CMP_MAX - 1) 2896a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_range_ops { 2906a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_RANGE_EQ, 2916a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_RANGE_NEQ, 2926a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 2936a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_range_attributes { 2946a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_RANGE_UNSPEC, 2956a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_RANGE_SREG, 2966a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_RANGE_OP, 2976a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_RANGE_FROM_DATA, 2986a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_RANGE_TO_DATA, 2996a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris __NFTA_RANGE_MAX 3006a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 3016a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFTA_RANGE_MAX (__NFTA_RANGE_MAX - 1) 30249f525c47bd383cd6a87db8f067cddb3ab620d17Christopher Ferrisenum nft_lookup_flags { 30349f525c47bd383cd6a87db8f067cddb3ab620d17Christopher Ferris NFT_LOOKUP_F_INV = (1 << 0), 30449f525c47bd383cd6a87db8f067cddb3ab620d17Christopher Ferris}; 3056a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_lookup_attributes { 306d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOOKUP_UNSPEC, 307d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOOKUP_SET, 30805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_LOOKUP_SREG, 3096a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_LOOKUP_DREG, 310d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOOKUP_SET_ID, 31149f525c47bd383cd6a87db8f067cddb3ab620d17Christopher Ferris NFTA_LOOKUP_FLAGS, 312d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_LOOKUP_MAX 3136a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 31438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1) 31505d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_dynset_ops { 31605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_DYNSET_OP_ADD, 31705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_DYNSET_OP_UPDATE, 3186a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 3196a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_dynset_flags { 3206a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_DYNSET_F_INV = (1 << 0), 32105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 32205d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_dynset_attributes { 32305d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_UNSPEC, 32405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_SET_NAME, 32505d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_SET_ID, 32605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_OP, 32705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_SREG_KEY, 32805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_SREG_DATA, 32905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_TIMEOUT, 33005d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DYNSET_EXPR, 331106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_DYNSET_PAD, 3326a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_DYNSET_FLAGS, 3336a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris __NFTA_DYNSET_MAX, 33405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 33505d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_DYNSET_MAX (__NFTA_DYNSET_MAX - 1) 33638062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_payload_bases { 3376a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_PAYLOAD_LL_HEADER, 33805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_PAYLOAD_NETWORK_HEADER, 339d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_PAYLOAD_TRANSPORT_HEADER, 34038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 3416a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_payload_csum_types { 342106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_PAYLOAD_CSUM_NONE, 343106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_PAYLOAD_CSUM_INET, 344106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 34548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_payload_csum_flags { 34648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_PAYLOAD_L4CSUM_PSEUDOHDR = (1 << 0), 34748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 3486a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_payload_attributes { 34905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_PAYLOAD_UNSPEC, 350d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_PAYLOAD_DREG, 351d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_PAYLOAD_BASE, 3526a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_PAYLOAD_OFFSET, 35305d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_PAYLOAD_LEN, 354106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_PAYLOAD_SREG, 355106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_PAYLOAD_CSUM_TYPE, 3566a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_PAYLOAD_CSUM_OFFSET, 35748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_PAYLOAD_CSUM_FLAGS, 358d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_PAYLOAD_MAX 35938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 360ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris#define NFTA_PAYLOAD_MAX (__NFTA_PAYLOAD_MAX - 1) 361525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferrisenum nft_exthdr_flags { 362525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_EXTHDR_F_PRESENT = (1 << 0), 363525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris}; 364525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferrisenum nft_exthdr_op { 365525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_EXTHDR_OP_IPV6, 366525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_EXTHDR_OP_TCPOPT, 367525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __NFT_EXTHDR_OP_MAX 368525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris}; 369525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris#define NFT_EXTHDR_OP_MAX (__NFT_EXTHDR_OP_MAX - 1) 3706a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_exthdr_attributes { 371d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXTHDR_UNSPEC, 372d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXTHDR_DREG, 373d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXTHDR_TYPE, 3746a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_EXTHDR_OFFSET, 375d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_EXTHDR_LEN, 376525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_EXTHDR_FLAGS, 377525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_EXTHDR_OP, 3781308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris NFTA_EXTHDR_SREG, 379d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_EXTHDR_MAX 380ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris}; 3816a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFTA_EXTHDR_MAX (__NFTA_EXTHDR_MAX - 1) 38238062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_meta_keys { 383d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_LEN, 384d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_PROTOCOL, 3856a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_PRIORITY, 386d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_MARK, 387d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_IIF, 388d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_OIF, 3896a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_IIFNAME, 390d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_OIFNAME, 391d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_IIFTYPE, 392d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_OIFTYPE, 3936a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_SKUID, 394d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_SKGID, 395d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_NFTRACE, 396d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_RTCLASSID, 3976a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_SECMARK, 398d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_NFPROTO, 399d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_L4PROTO, 400d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_BRI_IIFNAME, 4016a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_BRI_OIFNAME, 402d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_PKTTYPE, 403d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_CPU, 404d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_META_IIFGROUP, 4056a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_META_OIFGROUP, 40605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_META_CGROUP, 407106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_META_PRANDOM, 408ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris}; 40948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_rt_keys { 41048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_RT_CLASSID, 41148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_RT_NEXTHOP4, 41248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_RT_NEXTHOP6, 4131308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris NFT_RT_TCPMSS, 41448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 415525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferrisenum nft_hash_types { 416525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_HASH_JENKINS, 417525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_HASH_SYM, 418525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris}; 4196a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_hash_attributes { 4206a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_HASH_UNSPEC, 4216a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_HASH_SREG, 42248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_HASH_DREG, 4236a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_HASH_LEN, 4246a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_HASH_MODULUS, 4256a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_HASH_SEED, 42648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_HASH_OFFSET, 427525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_HASH_TYPE, 4286a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris __NFTA_HASH_MAX, 4296a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 4306a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFTA_HASH_MAX (__NFTA_HASH_MAX - 1) 43148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_meta_attributes { 432d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_META_UNSPEC, 433d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_META_DREG, 434d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_META_KEY, 43548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_META_SREG, 436d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_META_MAX 43738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 43838062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_META_MAX (__NFTA_META_MAX - 1) 43948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_rt_attributes { 44048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RT_UNSPEC, 44148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RT_DREG, 44248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_RT_KEY, 44348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_RT_MAX 44448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 44548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_RT_MAX (__NFTA_RT_MAX - 1) 44638062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_ct_keys { 447d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_STATE, 448d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_DIRECTION, 449d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_STATUS, 450d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_MARK, 451d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_SECMARK, 452d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_EXPIRATION, 453d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_HELPER, 454d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_L3PROTOCOL, 455d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_SRC, 456d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_DST, 457d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_PROTOCOL, 458d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_PROTO_SRC, 459d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_PROTO_DST, 460d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_CT_LABELS, 461106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_CT_PKTS, 462106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_CT_BYTES, 463525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_CT_AVGPKT, 464525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_CT_ZONE, 465525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFT_CT_EVENTMASK, 46638062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 46738062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_ct_attributes { 468d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CT_UNSPEC, 469d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CT_DREG, 470d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CT_KEY, 471d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CT_DIRECTION, 472d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_CT_SREG, 473d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_CT_MAX 47438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 47538062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_CT_MAX (__NFTA_CT_MAX - 1) 47605d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_limit_type { 47705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_LIMIT_PKTS, 47805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFT_LIMIT_PKT_BYTES 47905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 480106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum nft_limit_flags { 481106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_LIMIT_F_INV = (1 << 0), 482106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 48338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_limit_attributes { 484d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LIMIT_UNSPEC, 485d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LIMIT_RATE, 486106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_LIMIT_UNIT, 48705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_LIMIT_BURST, 48805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_LIMIT_TYPE, 489106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_LIMIT_FLAGS, 490106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_LIMIT_PAD, 491d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_LIMIT_MAX 49238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 49338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_LIMIT_MAX (__NFTA_LIMIT_MAX - 1) 49438062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_counter_attributes { 495d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_COUNTER_UNSPEC, 496d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_COUNTER_BYTES, 497d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_COUNTER_PACKETS, 498106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_COUNTER_PAD, 499d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_COUNTER_MAX 50038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 50138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_COUNTER_MAX (__NFTA_COUNTER_MAX - 1) 50238062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_log_attributes { 503d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_UNSPEC, 504d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_GROUP, 505d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_PREFIX, 506d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_SNAPLEN, 507d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_QTHRESHOLD, 508d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_LEVEL, 509d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_LOG_FLAGS, 510d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_LOG_MAX 51138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 51238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_LOG_MAX (__NFTA_LOG_MAX - 1) 51338062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_queue_attributes { 514d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_QUEUE_UNSPEC, 515d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_QUEUE_NUM, 516d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_QUEUE_TOTAL, 517d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_QUEUE_FLAGS, 5186a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_QUEUE_SREG_QNUM, 519d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_QUEUE_MAX 52038062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 52138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_QUEUE_MAX (__NFTA_QUEUE_MAX - 1) 5226a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFT_QUEUE_FLAG_BYPASS 0x01 52338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFT_QUEUE_FLAG_CPU_FANOUT 0x02 52438062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFT_QUEUE_FLAG_MASK 0x03 5256a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_quota_flags { 5266a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_QUOTA_F_INV = (1 << 0), 52748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_QUOTA_F_DEPLETED = (1 << 1), 5286a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 5296a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_quota_attributes { 53048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_QUOTA_UNSPEC, 5316a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_QUOTA_BYTES, 5326a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_QUOTA_FLAGS, 5336a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_QUOTA_PAD, 53448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_QUOTA_CONSUMED, 53548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_QUOTA_MAX 5366a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 5376a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFTA_QUOTA_MAX (__NFTA_QUOTA_MAX - 1) 53838062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_reject_types { 539d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMP_UNREACH, 540d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_TCP_RST, 541d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMPX_UNREACH, 54282d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 54382d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisenum nft_reject_inet_code { 544d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMPX_NO_ROUTE = 0, 545d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMPX_PORT_UNREACH, 546d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMPX_HOST_UNREACH, 547d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_REJECT_ICMPX_ADMIN_PROHIBITED, 548d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFT_REJECT_ICMPX_MAX 54938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 55082d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris#define NFT_REJECT_ICMPX_MAX (__NFT_REJECT_ICMPX_MAX - 1) 55138062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_reject_attributes { 552d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_REJECT_UNSPEC, 553d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_REJECT_TYPE, 554d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_REJECT_ICMP_CODE, 555d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_REJECT_MAX 55682d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 55738062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_REJECT_MAX (__NFTA_REJECT_MAX - 1) 55838062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_nat_types { 559d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_NAT_SNAT, 560d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFT_NAT_DNAT, 56138062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 56238062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum nft_nat_attributes { 563d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_UNSPEC, 564d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_TYPE, 565d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_FAMILY, 566d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_REG_ADDR_MIN, 567d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_REG_ADDR_MAX, 568d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_REG_PROTO_MIN, 569d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_REG_PROTO_MAX, 570d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_NAT_FLAGS, 571d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_NAT_MAX 57238062f954c637861348dd8078cefb73554e6f12cChristopher Ferris}; 57338062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define NFTA_NAT_MAX (__NFTA_NAT_MAX - 1) 57482d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisenum nft_masq_attributes { 575d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_MASQ_UNSPEC, 576d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_MASQ_FLAGS, 577106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_MASQ_REG_PROTO_MIN, 578106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_MASQ_REG_PROTO_MAX, 579d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_MASQ_MAX 58082d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 58182d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris#define NFTA_MASQ_MAX (__NFTA_MASQ_MAX - 1) 58205d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_redir_attributes { 58305d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_REDIR_UNSPEC, 58405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_REDIR_REG_PROTO_MIN, 58505d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_REDIR_REG_PROTO_MAX, 58605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_REDIR_FLAGS, 58705d08e9716b5974d6ed08973f44930804890b902Christopher Ferris __NFTA_REDIR_MAX 58805d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 58905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_REDIR_MAX (__NFTA_REDIR_MAX - 1) 59005d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisenum nft_dup_attributes { 59105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DUP_UNSPEC, 59205d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DUP_SREG_ADDR, 59305d08e9716b5974d6ed08973f44930804890b902Christopher Ferris NFTA_DUP_SREG_DEV, 59405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris __NFTA_DUP_MAX 59505d08e9716b5974d6ed08973f44930804890b902Christopher Ferris}; 59605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define NFTA_DUP_MAX (__NFTA_DUP_MAX - 1) 597106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum nft_fwd_attributes { 598106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_FWD_UNSPEC, 599106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_FWD_SREG_DEV, 600106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __NFTA_FWD_MAX 601106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 602106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define NFTA_FWD_MAX (__NFTA_FWD_MAX - 1) 60348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_objref_attributes { 60448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_UNSPEC, 60548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_IMM_TYPE, 60648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_IMM_NAME, 60748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_SET_SREG, 60848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_SET_NAME, 60948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJREF_SET_ID, 61048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_OBJREF_MAX 61148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 61248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_OBJREF_MAX (__NFTA_OBJREF_MAX - 1) 61382d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisenum nft_gen_attributes { 614d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_GEN_UNSPEC, 615d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao NFTA_GEN_ID, 6161308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris NFTA_GEN_PROC_PID, 6171308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris NFTA_GEN_PROC_NAME, 618d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __NFTA_GEN_MAX 61982d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 62082d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris#define NFTA_GEN_MAX (__NFTA_GEN_MAX - 1) 62148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_fib_attributes { 62248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_UNSPEC, 62348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_DREG, 62448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_RESULT, 62548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_FLAGS, 62648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_FIB_MAX 62748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 62848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_FIB_MAX (__NFTA_FIB_MAX - 1) 62948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_fib_result { 63048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_FIB_RESULT_UNSPEC, 63148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_FIB_RESULT_OIF, 63248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_FIB_RESULT_OIFNAME, 63348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFT_FIB_RESULT_ADDRTYPE, 63448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFT_FIB_RESULT_MAX 63548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 63648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_FIB_RESULT_MAX (__NFT_FIB_RESULT_MAX - 1) 63748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_fib_flags { 63848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_F_SADDR = 1 << 0, 63948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_F_DADDR = 1 << 1, 64048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_F_MARK = 1 << 2, 64148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_F_IIF = 1 << 3, 64248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_FIB_F_OIF = 1 << 4, 643525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_FIB_F_PRESENT = 1 << 5, 644525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris}; 645525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferrisenum nft_ct_helper_attributes { 646525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_CT_HELPER_UNSPEC, 647525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_CT_HELPER_NAME, 648525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_CT_HELPER_L3PROTO, 649525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris NFTA_CT_HELPER_L4PROTO, 650525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __NFTA_CT_HELPER_MAX, 65148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 652525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris#define NFTA_CT_HELPER_MAX (__NFTA_CT_HELPER_MAX - 1) 65348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_OBJECT_UNSPEC 0 65448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_OBJECT_COUNTER 1 65548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_OBJECT_QUOTA 2 656525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris#define NFT_OBJECT_CT_HELPER 3 6571308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define NFT_OBJECT_LIMIT 4 6581308ad3ab33294c3abfd96da12b6df58b381ce52Christopher Ferris#define __NFT_OBJECT_MAX 5 65948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFT_OBJECT_MAX (__NFT_OBJECT_MAX - 1) 66048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferrisenum nft_object_attributes { 66148af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_UNSPEC, 66248af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_TABLE, 66348af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_NAME, 66448af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_TYPE, 66548af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_DATA, 66648af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris NFTA_OBJ_USE, 66748af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris __NFTA_OBJ_MAX 66848af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris}; 66948af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define NFTA_OBJ_MAX (__NFTA_OBJ_MAX - 1) 6706a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_trace_attributes { 671106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_UNSPEC, 672106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_TABLE, 673106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_CHAIN, 674106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_RULE_HANDLE, 675106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_TYPE, 676106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_VERDICT, 677106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_ID, 678106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_LL_HEADER, 679106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_NETWORK_HEADER, 680106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_TRANSPORT_HEADER, 681106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_IIF, 682106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_IIFTYPE, 683106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_OIF, 684106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_OIFTYPE, 685106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_MARK, 686106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_NFPROTO, 687106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_POLICY, 688106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFTA_TRACE_PAD, 689106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __NFTA_TRACE_MAX 690106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 691106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define NFTA_TRACE_MAX (__NFTA_TRACE_MAX - 1) 692106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum nft_trace_types { 693106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_TRACETYPE_UNSPEC, 694106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_TRACETYPE_POLICY, 695106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_TRACETYPE_RETURN, 696106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris NFT_TRACETYPE_RULE, 697106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __NFT_TRACETYPE_MAX 698106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 699106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define NFT_TRACETYPE_MAX (__NFT_TRACETYPE_MAX - 1) 7006a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_ng_attributes { 7016a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_NG_UNSPEC, 7026a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_NG_DREG, 7036a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_NG_MODULUS, 7046a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_NG_TYPE, 7056a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFTA_NG_OFFSET, 7066a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris __NFTA_NG_MAX 7076a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 7086a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFTA_NG_MAX (__NFTA_NG_MAX - 1) 7096a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferrisenum nft_ng_types { 7106a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_NG_INCREMENTAL, 7116a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris NFT_NG_RANDOM, 7126a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris __NFT_NG_MAX 7136a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris}; 7146a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#define NFT_NG_MAX (__NFT_NG_MAX - 1) 7156a9755d20a995756487bb1aafb7e954f4fd868a7Christopher Ferris#endif 716