@@ -588,6 +588,11 @@ nf_tables_chain_type_lookup(struct net *net, const struct nlattr *nla,
588588 return ERR_PTR (- ENOENT );
589589}
590590
591+ static __be16 nft_base_seq (const struct net * net )
592+ {
593+ return htons (net -> nft .base_seq & 0xffff );
594+ }
595+
591596static const struct nla_policy nft_table_policy [NFTA_TABLE_MAX + 1 ] = {
592597 [NFTA_TABLE_NAME ] = { .type = NLA_STRING ,
593598 .len = NFT_TABLE_MAXNAMELEN - 1 },
@@ -610,7 +615,7 @@ static int nf_tables_fill_table_info(struct sk_buff *skb, struct net *net,
610615 nfmsg = nlmsg_data (nlh );
611616 nfmsg -> nfgen_family = family ;
612617 nfmsg -> version = NFNETLINK_V0 ;
613- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
618+ nfmsg -> res_id = nft_base_seq (net );
614619
615620 if (nla_put_string (skb , NFTA_TABLE_NAME , table -> name ) ||
616621 nla_put_be32 (skb , NFTA_TABLE_FLAGS , htonl (table -> flags )) ||
@@ -1274,7 +1279,7 @@ static int nf_tables_fill_chain_info(struct sk_buff *skb, struct net *net,
12741279 nfmsg = nlmsg_data (nlh );
12751280 nfmsg -> nfgen_family = family ;
12761281 nfmsg -> version = NFNETLINK_V0 ;
1277- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
1282+ nfmsg -> res_id = nft_base_seq (net );
12781283
12791284 if (nla_put_string (skb , NFTA_CHAIN_TABLE , table -> name ))
12801285 goto nla_put_failure ;
@@ -2366,7 +2371,7 @@ static int nf_tables_fill_rule_info(struct sk_buff *skb, struct net *net,
23662371 nfmsg = nlmsg_data (nlh );
23672372 nfmsg -> nfgen_family = family ;
23682373 nfmsg -> version = NFNETLINK_V0 ;
2369- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
2374+ nfmsg -> res_id = nft_base_seq (net );
23702375
23712376 if (nla_put_string (skb , NFTA_RULE_TABLE , table -> name ))
23722377 goto nla_put_failure ;
@@ -3325,7 +3330,7 @@ static int nf_tables_fill_set(struct sk_buff *skb, const struct nft_ctx *ctx,
33253330 nfmsg = nlmsg_data (nlh );
33263331 nfmsg -> nfgen_family = ctx -> family ;
33273332 nfmsg -> version = NFNETLINK_V0 ;
3328- nfmsg -> res_id = htons (ctx -> net -> nft . base_seq & 0xffff );
3333+ nfmsg -> res_id = nft_base_seq (ctx -> net );
33293334
33303335 if (nla_put_string (skb , NFTA_SET_TABLE , ctx -> table -> name ))
33313336 goto nla_put_failure ;
@@ -4180,7 +4185,7 @@ static int nf_tables_dump_set(struct sk_buff *skb, struct netlink_callback *cb)
41804185 nfmsg = nlmsg_data (nlh );
41814186 nfmsg -> nfgen_family = table -> family ;
41824187 nfmsg -> version = NFNETLINK_V0 ;
4183- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
4188+ nfmsg -> res_id = nft_base_seq (net );
41844189
41854190 if (nla_put_string (skb , NFTA_SET_ELEM_LIST_TABLE , table -> name ))
41864191 goto nla_put_failure ;
@@ -4252,7 +4257,7 @@ static int nf_tables_fill_setelem_info(struct sk_buff *skb,
42524257 nfmsg = nlmsg_data (nlh );
42534258 nfmsg -> nfgen_family = ctx -> family ;
42544259 nfmsg -> version = NFNETLINK_V0 ;
4255- nfmsg -> res_id = htons (ctx -> net -> nft . base_seq & 0xffff );
4260+ nfmsg -> res_id = nft_base_seq (ctx -> net );
42564261
42574262 if (nla_put_string (skb , NFTA_SET_TABLE , ctx -> table -> name ))
42584263 goto nla_put_failure ;
@@ -5383,7 +5388,7 @@ static int nf_tables_fill_obj_info(struct sk_buff *skb, struct net *net,
53835388 nfmsg = nlmsg_data (nlh );
53845389 nfmsg -> nfgen_family = family ;
53855390 nfmsg -> version = NFNETLINK_V0 ;
5386- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
5391+ nfmsg -> res_id = nft_base_seq (net );
53875392
53885393 if (nla_put_string (skb , NFTA_OBJ_TABLE , table -> name ) ||
53895394 nla_put_string (skb , NFTA_OBJ_NAME , obj -> key .name ) ||
@@ -6059,7 +6064,7 @@ static int nf_tables_fill_flowtable_info(struct sk_buff *skb, struct net *net,
60596064 nfmsg = nlmsg_data (nlh );
60606065 nfmsg -> nfgen_family = family ;
60616066 nfmsg -> version = NFNETLINK_V0 ;
6062- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
6067+ nfmsg -> res_id = nft_base_seq (net );
60636068
60646069 if (nla_put_string (skb , NFTA_FLOWTABLE_TABLE , flowtable -> table -> name ) ||
60656070 nla_put_string (skb , NFTA_FLOWTABLE_NAME , flowtable -> name ) ||
@@ -6297,7 +6302,7 @@ static int nf_tables_fill_gen_info(struct sk_buff *skb, struct net *net,
62976302 nfmsg = nlmsg_data (nlh );
62986303 nfmsg -> nfgen_family = AF_UNSPEC ;
62996304 nfmsg -> version = NFNETLINK_V0 ;
6300- nfmsg -> res_id = htons (net -> nft . base_seq & 0xffff );
6305+ nfmsg -> res_id = nft_base_seq (net );
63016306
63026307 if (nla_put_be32 (skb , NFTA_GEN_ID , htonl (net -> nft .base_seq )) ||
63036308 nla_put_be32 (skb , NFTA_GEN_PROC_PID , htonl (task_pid_nr (current ))) ||
0 commit comments