]> git.ipfire.org Git - thirdparty/libnftnl.git/commitdiff
expr: payload: print inner header base offset
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 17 Nov 2021 10:05:11 +0000 (11:05 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 17 Nov 2021 10:05:11 +0000 (11:05 +0100)
Update string array to print the "inner" header string, instead of
printing "unknown".

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/linux/netfilter/nf_tables.h
src/expr/payload.c

index e94d1fa554cb224da089742468739b7f36f38395..0ae912054cf1e4b8099e563926cc502522d3525c 100644 (file)
@@ -753,11 +753,13 @@ enum nft_dynset_attributes {
  * @NFT_PAYLOAD_LL_HEADER: link layer header
  * @NFT_PAYLOAD_NETWORK_HEADER: network header
  * @NFT_PAYLOAD_TRANSPORT_HEADER: transport header
+ * @NFT_PAYLOAD_INNER_HEADER: inner header
  */
 enum nft_payload_bases {
        NFT_PAYLOAD_LL_HEADER,
        NFT_PAYLOAD_NETWORK_HEADER,
        NFT_PAYLOAD_TRANSPORT_HEADER,
+       NFT_PAYLOAD_INNER_HEADER,
 };
 
 /**
index 9ccb78e6b5352e82c00c7c240d9ed593751abe82..82747ec8994f7f73f3613865f67fa800427078dd 100644 (file)
@@ -203,15 +203,16 @@ nftnl_expr_payload_parse(struct nftnl_expr *e, struct nlattr *attr)
        return 0;
 }
 
-static const char *base2str_array[NFT_PAYLOAD_TRANSPORT_HEADER+1] = {
+static const char *base2str_array[NFT_PAYLOAD_INNER_HEADER + 1] = {
        [NFT_PAYLOAD_LL_HEADER]         = "link",
        [NFT_PAYLOAD_NETWORK_HEADER]    = "network",
        [NFT_PAYLOAD_TRANSPORT_HEADER]  = "transport",
+       [NFT_PAYLOAD_INNER_HEADER]      = "inner",
 };
 
 static const char *base2str(enum nft_payload_bases base)
 {
-       if (base > NFT_PAYLOAD_TRANSPORT_HEADER)
+       if (base > NFT_PAYLOAD_INNER_HEADER)
                return "unknown";
 
        return base2str_array[base];