summaryrefslogtreecommitdiffstats
path: root/src/ipopt.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2021-12-03 17:07:53 +0100
committerFlorian Westphal <fw@strlen.de>2021-12-07 12:23:21 +0100
commit3a8d3fea54ce6eb922e4bb04e1acf9b995a66607 (patch)
treebf6729561c022b71e17f5ed101112f8c79271b20 /src/ipopt.c
parentcb4b07d0b62836ab860e11e1f50c98656eeb4f9f (diff)
ipopt: drop unused 'ptr' argument
Its always 0, so remove it. Looks like this was intended to support variable options that have array-like members, but so far this isn't implemented, better remove dead code and implement it properly when such support is needed. Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'src/ipopt.c')
-rw-r--r--src/ipopt.c23
1 files changed, 2 insertions, 21 deletions
diff --git a/src/ipopt.c b/src/ipopt.c
index 5f9f908c..42ea41cd 100644
--- a/src/ipopt.c
+++ b/src/ipopt.c
@@ -66,27 +66,8 @@ const struct exthdr_desc *ipopt_protocols[UINT8_MAX] = {
[IPOPT_RA] = &ipopt_ra,
};
-static unsigned int calc_offset(const struct exthdr_desc *desc,
- const struct proto_hdr_template *tmpl,
- unsigned int arg)
-{
- if (!desc || tmpl == &ipopt_unknown_template)
- return 0;
-
- switch (desc->type) {
- case IPOPT_RR:
- case IPOPT_LSRR:
- case IPOPT_SSRR:
- if (tmpl == &desc->templates[IPOPT_FIELD_ADDR_0])
- return (tmpl->offset < 24) ? 0 : arg;
- return 0;
- default:
- return 0;
- }
-}
-
struct expr *ipopt_expr_alloc(const struct location *loc, uint8_t type,
- uint8_t field, uint8_t ptr)
+ uint8_t field)
{
const struct proto_hdr_template *tmpl;
const struct exthdr_desc *desc;
@@ -102,7 +83,7 @@ struct expr *ipopt_expr_alloc(const struct location *loc, uint8_t type,
expr->exthdr.desc = desc;
expr->exthdr.tmpl = tmpl;
expr->exthdr.op = NFT_EXTHDR_OP_IPV4;
- expr->exthdr.offset = tmpl->offset + calc_offset(desc, tmpl, ptr);
+ expr->exthdr.offset = tmpl->offset;
expr->exthdr.raw_type = desc->type;
return expr;