[PATCH nftables 4/4] optimize: do not merge raw payload expressions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Merging raw expressions results in a valid concatenation which throws:

 Error: can not use variable sized data types (integer) in concat expressions

Disable merging raw expressions until this is supported by skipping raw
expressions.

Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
---
 src/optimize.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/optimize.c b/src/optimize.c
index 5882f3bd005d..04523edb795b 100644
--- a/src/optimize.c
+++ b/src/optimize.c
@@ -40,6 +40,9 @@ static bool __expr_cmp(const struct expr *expr_a, const struct expr *expr_b)
 
 	switch (expr_a->etype) {
 	case EXPR_PAYLOAD:
+		/* disable until concatenation with integer works. */
+		if (expr_a->payload.is_raw || expr_b->payload.is_raw)
+			return false;
 		if (expr_a->payload.base != expr_b->payload.base)
 			return false;
 		if (expr_a->payload.offset != expr_b->payload.offset)
-- 
2.30.2




[Index of Archives]     [Netfitler Users]     [Berkeley Packet Filter]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux