netfilter: nft_exthdr: Add support for existence check
If NFT_EXTHDR_F_PRESENT is set, exthdr will not copy any header field data into *dest, but instead set it to 1 if the header is found and 0 otherwise. Signed-off-by: Phil Sutter <phil@nwl.cc> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
6e7bc478c9
commit
c078ca3b0c
2 changed files with 26 additions and 2 deletions
|
|
@ -704,6 +704,10 @@ enum nft_payload_attributes {
|
|||
};
|
||||
#define NFTA_PAYLOAD_MAX (__NFTA_PAYLOAD_MAX - 1)
|
||||
|
||||
enum nft_exthdr_flags {
|
||||
NFT_EXTHDR_F_PRESENT = (1 << 0),
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nft_exthdr_attributes - nf_tables IPv6 extension header expression netlink attributes
|
||||
*
|
||||
|
|
@ -711,6 +715,7 @@ enum nft_payload_attributes {
|
|||
* @NFTA_EXTHDR_TYPE: extension header type (NLA_U8)
|
||||
* @NFTA_EXTHDR_OFFSET: extension header offset (NLA_U32)
|
||||
* @NFTA_EXTHDR_LEN: extension header length (NLA_U32)
|
||||
* @NFTA_EXTHDR_FLAGS: extension header flags (NLA_U32)
|
||||
*/
|
||||
enum nft_exthdr_attributes {
|
||||
NFTA_EXTHDR_UNSPEC,
|
||||
|
|
@ -718,6 +723,7 @@ enum nft_exthdr_attributes {
|
|||
NFTA_EXTHDR_TYPE,
|
||||
NFTA_EXTHDR_OFFSET,
|
||||
NFTA_EXTHDR_LEN,
|
||||
NFTA_EXTHDR_FLAGS,
|
||||
__NFTA_EXTHDR_MAX
|
||||
};
|
||||
#define NFTA_EXTHDR_MAX (__NFTA_EXTHDR_MAX - 1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue