netfilter: nf_tables: allow to change chain policy without hook if it exists
If there's an existing base chain, we have to allow to change the default policy without indicating the hook information. However, if the chain doesn't exists, we have to enforce the presence of the hook attribute. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
@@ -1225,7 +1225,10 @@ static int nf_tables_newchain(struct sock *nlsk, struct sk_buff *skb,
|
||||
|
||||
if (nla[NFTA_CHAIN_POLICY]) {
|
||||
if ((chain != NULL &&
|
||||
!(chain->flags & NFT_BASE_CHAIN)) ||
|
||||
!(chain->flags & NFT_BASE_CHAIN)))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
if (chain == NULL &&
|
||||
nla[NFTA_CHAIN_HOOK] == NULL)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user