summaryrefslogtreecommitdiffstats
path: root/src/netlink_linearize.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2024-02-08 13:20:43 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2024-02-09 16:56:04 +0100
commit8a34cca265a290a0b23cec27d5258bc432cef3d3 (patch)
tree451d370b0c0dfba12ea04b813c255cdfa6653725 /src/netlink_linearize.c
parent9fe58952c45a1643dc7df1a0b1f5d88e8ae1a978 (diff)
netlink_linearize: add assertion to catch for buggy byteorder
Add assertion to catch buggy bytecode where unary expression is present with 1-byte selectors, where no byteorder conversion is required. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/netlink_linearize.c')
-rw-r--r--src/netlink_linearize.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/netlink_linearize.c b/src/netlink_linearize.c
index 50dbd36c..6204d8fd 100644
--- a/src/netlink_linearize.c
+++ b/src/netlink_linearize.c
@@ -797,6 +797,8 @@ static void netlink_gen_unary(struct netlink_linearize_ctx *ctx,
struct nftnl_expr *nle;
int byte_size;
+ assert(div_round_up(expr->arg->len, BITS_PER_BYTE) != 1);
+
if ((expr->arg->len % 64) == 0)
byte_size = 8;
else if ((expr->arg->len % 32) == 0)