@@ -158,21 +158,21 @@ static int nft_immediate_validate(const struct nft_ctx *ctx,
return 0;
data = &priv->data;
-
+ err = 0;
switch (data->verdict.code) {
case NFT_JUMP:
- case NFT_GOTO:
pctx->level++;
err = nft_chain_validate(ctx, data->verdict.chain);
- if (err < 0)
- return err;
pctx->level--;
break;
+ case NFT_GOTO:
+ err = nft_chain_validate(ctx, data->verdict.chain);
+ break;
default:
break;
}
- return 0;
+ return err;
}
static int nft_immediate_offload_verdict(struct nft_offload_ctx *ctx,