netfilter: nft_osf: usage from output path is not valid
[ Upstream commit 4a3e71b7b7dbaf3562be9d508260935aa13cb48b ]
The nft_osf extension, like xt_osf, is not supported from the output
path.
Fixes: b96af92d6e
("netfilter: nf_tables: implement Passive OS fingerprint module in nft_osf")
Signed-off-by: Fernando Fernandez Mancera <ffmancera@riseup.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
634322efa2
commit
d2c06876e7
1 changed files with 10 additions and 0 deletions
|
@ -69,6 +69,15 @@ static int nft_osf_dump(struct sk_buff *skb, const struct nft_expr *expr)
|
|||
return -1;
|
||||
}
|
||||
|
||||
static int nft_osf_validate(const struct nft_ctx *ctx,
|
||||
const struct nft_expr *expr,
|
||||
const struct nft_data **data)
|
||||
{
|
||||
return nft_chain_validate_hooks(ctx->chain, (1 << NF_INET_LOCAL_IN) |
|
||||
(1 << NF_INET_PRE_ROUTING) |
|
||||
(1 << NF_INET_FORWARD));
|
||||
}
|
||||
|
||||
static struct nft_expr_type nft_osf_type;
|
||||
static const struct nft_expr_ops nft_osf_op = {
|
||||
.eval = nft_osf_eval,
|
||||
|
@ -76,6 +85,7 @@ static const struct nft_expr_ops nft_osf_op = {
|
|||
.init = nft_osf_init,
|
||||
.dump = nft_osf_dump,
|
||||
.type = &nft_osf_type,
|
||||
.validate = nft_osf_validate,
|
||||
};
|
||||
|
||||
static struct nft_expr_type nft_osf_type __read_mostly = {
|
||||
|
|
Loading…
Reference in a new issue