netlink_linearize: exthdr op must be u32
Florian Westphal
maintainerPATCH 1/1 netlink_linearize: exthdr op must be u32
libnftnl casts this to u32. Broke exthdr expressions on bigendian.
Signed-off-by Florian Westphal <[email protected]>
--- src/netlink_linearize.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
src/netlink_linearize.c +2 -2
@@ -178,7 +178,7 @@ static void netlink_gen_exthdr(struct netlink_linearize_ctx *ctx,nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_OFFSET , offset /BITS_PER_BYTE );nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_LEN ,div_round_up (expr->len,BITS_PER_BYTE )); -nftnl_expr_set_u8 (nle,NFTNL_EXPR_EXTHDR_OP , expr->exthdr.op); +nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_OP , expr->exthdr.op);nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_FLAGS , expr->exthdr.flags);nftnl_rule_add_expr (ctx->nlr, nle); }
@@ -839,7 +839,7 @@ static void netlink_gen_exthdr_stmt(struct netlink_linearize_ctx *ctx,nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_OFFSET , offset /BITS_PER_BYTE );nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_LEN ,div_round_up (expr->len,BITS_PER_BYTE )); -nftnl_expr_set_u8 (nle,NFTNL_EXPR_EXTHDR_OP , expr->exthdr.op); +nftnl_expr_set_u32 (nle,NFTNL_EXPR_EXTHDR_OP , expr->exthdr.op);nftnl_rule_add_expr (ctx->nlr, nle); }
Signature · 1 line
2.13.6
Quoted 1 line · Florian Westphal
libnftnl casts this to u32. Broke exthdr expressions on bigendian.
Applied, thanks.
Quoted 4 lines · Pablo Neira Ayuso
Quoted 1 line · Florian Westphal
libnftnl casts this to u32. Broke exthdr expressions on bigendian.
Applied, thanks.
Push it out yourself as usual.