From 90d4ee087171e75d5313359ad6b6f1341e51ddc5 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 29 Aug 2018 16:23:27 +0200 Subject: JSON: Make match op mandatory, introduce 'in' operator This special operator is required for cases where missing operator does not lead to same results as equal operator, i.e. with bitmasks on RHS. Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- doc/libnftables-json.adoc | 13 +++++- src/json.c | 17 ++----- src/parser_json.c | 24 +++++----- tests/py/any/ct.t.json | 35 +++++++++++++++ tests/py/any/ct.t.json.output | 15 +++++++ tests/py/any/meta.t.json | 83 +++++++++++++++++++++++++++++++++++ tests/py/any/meta.t.json.output | 17 +++++++ tests/py/any/rawpayload.t.json | 8 ++++ tests/py/any/rawpayload.t.json.output | 3 ++ tests/py/any/rt.t.json | 1 + tests/py/arp/arp.t.json | 29 ++++++++++++ tests/py/arp/arp.t.json.output | 8 ++++ tests/py/bridge/ether.t.json | 13 ++++++ tests/py/bridge/ether.t.json.output | 6 +++ tests/py/bridge/icmpX.t.json | 6 +++ tests/py/bridge/icmpX.t.json.output | 4 ++ tests/py/bridge/meta.t.json | 2 + tests/py/bridge/reject.t.json | 4 ++ tests/py/bridge/reject.t.json.output | 13 ++++++ tests/py/bridge/vlan.t.json | 33 ++++++++++++++ tests/py/inet/ah.t.json | 15 +++++++ tests/py/inet/comp.t.json | 8 ++++ tests/py/inet/comp.t.json.output | 4 ++ tests/py/inet/ct.t.json | 3 ++ tests/py/inet/ct.t.json.output | 1 + tests/py/inet/dccp.t.json | 10 +++++ tests/py/inet/dccp.t.json.output | 1 + tests/py/inet/esp.t.json | 8 ++++ tests/py/inet/ether-ip.t.json | 7 +++ tests/py/inet/ether-ip.t.json.output | 3 ++ tests/py/inet/ether.t.json | 6 +++ tests/py/inet/ether.t.json.output | 2 + tests/py/inet/fib.t.json | 4 ++ tests/py/inet/icmp.t.json | 10 +++++ tests/py/inet/icmp.t.json.output | 2 + tests/py/inet/icmpX.t.json | 9 ++++ tests/py/inet/icmpX.t.json.output | 7 +++ tests/py/inet/ip.t.json | 1 + tests/py/inet/ip_tcp.t.json | 12 +++++ tests/py/inet/ip_tcp.t.json.output | 9 ++++ tests/py/inet/meta.t.json | 15 +++++++ tests/py/inet/meta.t.json.output | 3 ++ tests/py/inet/reject.t.json | 5 +++ tests/py/inet/reject.t.json.output | 13 ++++++ tests/py/inet/rt.t.json | 3 ++ tests/py/inet/rt.t.json.output | 2 + tests/py/inet/sctp.t.json | 16 +++++++ tests/py/inet/sets.t.json | 1 + tests/py/inet/socket.t.json | 2 + tests/py/inet/tcp.t.json | 48 ++++++++++++++++++++ tests/py/inet/tcp.t.json.output | 7 +++ tests/py/inet/tcpopt.t.json | 27 ++++++++++++ tests/py/inet/tcpopt.t.json.output | 2 + tests/py/inet/udp.t.json | 19 ++++++++ tests/py/inet/udplite.t.json | 13 ++++++ tests/py/ip/ct.t.json | 13 ++++++ tests/py/ip/ct.t.json.output | 2 + tests/py/ip/dnat.t.json | 9 ++++ tests/py/ip/ether.t.json | 12 +++++ tests/py/ip/ether.t.json.output | 3 ++ tests/py/ip/icmp.t.json | 44 +++++++++++++++++++ tests/py/ip/icmp.t.json.output | 2 + tests/py/ip/ip.t.json | 57 ++++++++++++++++++++++++ tests/py/ip/ip.t.json.output | 6 +++ tests/py/ip/ip_tcp.t.json | 4 ++ tests/py/ip/ip_tcp.t.json.output | 3 ++ tests/py/ip/masquerade.t.json | 18 ++++++++ tests/py/ip/masquerade.t.json.output | 5 +++ tests/py/ip/meta.t.json | 8 ++++ tests/py/ip/meta.t.json.output | 3 ++ tests/py/ip/objects.t.json | 3 ++ tests/py/ip/redirect.t.json | 27 ++++++++++++ tests/py/ip/redirect.t.json.output | 6 +++ tests/py/ip/reject.t.json | 1 + tests/py/ip/reject.t.json.output | 1 + tests/py/ip/rt.t.json | 1 + tests/py/ip/sets.t.json | 5 +++ tests/py/ip/snat.t.json | 7 +++ tests/py/ip/snat.t.json.output | 3 ++ tests/py/ip/tcp.t.json | 3 ++ tests/py/ip/tcp.t.json.output | 2 + tests/py/ip/tcpopt.t.json | 26 +++++++++++ tests/py/ip/tcpopt.t.json.output | 1 + tests/py/ip6/dnat.t.json | 3 ++ tests/py/ip6/dst.t.json | 10 +++++ tests/py/ip6/dst.t.json.output | 2 + tests/py/ip6/ether.t.json | 12 +++++ tests/py/ip6/ether.t.json.output | 3 ++ tests/py/ip6/exthdr.t.json | 8 ++++ tests/py/ip6/exthdr.t.json.output | 4 ++ tests/py/ip6/frag.t.json | 20 +++++++++ tests/py/ip6/frag.t.json.output | 4 ++ tests/py/ip6/hbh.t.json | 10 +++++ tests/py/ip6/hbh.t.json.output | 2 + tests/py/ip6/icmpv6.t.json | 45 +++++++++++++++++++ tests/py/ip6/icmpv6.t.json.output | 3 ++ tests/py/ip6/ip6.t.json | 68 ++++++++++++++++++++++++++++ tests/py/ip6/ip6.t.json.output | 13 ++++++ tests/py/ip6/masquerade.t.json | 18 ++++++++ tests/py/ip6/masquerade.t.json.output | 4 ++ tests/py/ip6/meta.t.json | 8 ++++ tests/py/ip6/meta.t.json.output | 3 ++ tests/py/ip6/mh.t.json | 21 +++++++++ tests/py/ip6/mh.t.json.output | 2 + tests/py/ip6/redirect.t.json | 25 +++++++++++ tests/py/ip6/redirect.t.json.output | 6 +++ tests/py/ip6/reject.t.json | 1 + tests/py/ip6/reject.t.json.output | 1 + tests/py/ip6/rt.t.json | 19 ++++++++ tests/py/ip6/rt.t.json.output | 2 + tests/py/ip6/rt0.t.json | 1 + tests/py/ip6/sets.t.json | 2 + tests/py/ip6/snat.t.json | 2 + tests/py/ip6/srh.t.json | 11 +++++ tests/py/ip6/srh.t.json.output | 1 + tests/py/ip6/tcpopt.t.json | 26 +++++++++++ tests/py/ip6/tcpopt.t.json.output | 1 + 117 files changed, 1241 insertions(+), 27 deletions(-) diff --git a/doc/libnftables-json.adoc b/doc/libnftables-json.adoc index 309988bc..c174a354 100644 --- a/doc/libnftables-json.adoc +++ b/doc/libnftables-json.adoc @@ -577,8 +577,6 @@ processing continues with the next rule in the same chain. Operator indicating the type of comparison. ==== OPERATORS -The operator is usually optional and if omitted usually defaults to "==". -Allowed operators are: [horizontal] *&*:: Binary AND @@ -592,6 +590,17 @@ Allowed operators are: *>*:: Greater than *<=*:: Less than or equal to *>=*:: Greater than or equal to +*in*:: Perform a lookup, i.e. test if bits on RHS are contained in LHS value + +Unlike with standard API, the operator is mandatory here. In standard API, +missing operator may be resolved in two ways depending on the type of expression +on RHS: + +- If RHS is a bitmask or a list of bitmasks, the expression resolves into a + binary operation with not equal operator, like this: '+LHS & RHS != 0+'. +- In any other case, equal operator is simply inserted. + +For the non-trivial first case, JSON API supports *in* operator. === COUNTER [verse] diff --git a/src/json.c b/src/json.c index 4af8ee8e..2a13dfe7 100644 --- a/src/json.c +++ b/src/json.c @@ -385,19 +385,10 @@ json_t *binop_expr_json(const struct expr *expr, struct output_ctx *octx) json_t *relational_expr_json(const struct expr *expr, struct output_ctx *octx) { - json_t *tmp; - - tmp = json_pack("{s:o, s:o}", - "left", expr_print_json(expr->left, octx), - "right", expr_print_json(expr->right, octx)); - /* XXX: check taken from binop_expr_print() - * if right is range, op is OP_EQ which in turn crashes nft if fed with it */ - if (expr_op_symbols[expr->op] && - (expr->op != OP_EQ || must_print_eq_op(expr))) - json_object_set_new(tmp, "op", - json_string(expr_op_symbols[expr->op])); - - return json_pack("{s:o}", "match", tmp); + return json_pack("{s:{s:s, s:o, s:o}}", "match", + "op", expr_op_symbols[expr->op] ? : "in", + "left", expr_print_json(expr->left, octx), + "right", expr_print_json(expr->right, octx)); } json_t *range_expr_json(const struct expr *expr, struct output_ctx *octx) diff --git a/src/parser_json.c b/src/parser_json.c index 2f7e0a3e..6870434e 100644 --- a/src/parser_json.c +++ b/src/parser_json.c @@ -1363,24 +1363,24 @@ static struct stmt *json_parse_match_stmt(struct json_ctx *ctx, const char *opstr = NULL; enum ops op; - if (json_unpack_err(ctx, value, "{s:o, s:o}", + if (json_unpack_err(ctx, value, "{s:o, s:o, s:s}", "left", &jleft, - "right", &jright)) + "right", &jright, + "op", &opstr)) return NULL; - json_unpack(value, "{s:s}", "op", &opstr); - if (opstr) { - for (op = OP_INVALID; op < __OP_MAX; op++) { - if (expr_op_symbols[op] && - !strcmp(opstr, expr_op_symbols[op])) - break; - } - if (op == __OP_MAX) { + for (op = OP_INVALID; op < __OP_MAX; op++) { + if (expr_op_symbols[op] && + !strcmp(opstr, expr_op_symbols[op])) + break; + } + if (op == __OP_MAX) { + if (!strcmp(opstr, "in")) { + op = OP_IMPLICIT; + } else { json_error(ctx, "Unknown relational op '%s'.", opstr); return NULL; } - } else { - op = OP_IMPLICIT; } left = json_parse_expr(ctx, jleft); diff --git a/tests/py/any/ct.t.json b/tests/py/any/ct.t.json index 2fb4e727..45e48f22 100644 --- a/tests/py/any/ct.t.json +++ b/tests/py/any/ct.t.json @@ -7,6 +7,7 @@ "key": "state" } }, + "op": "in", "right": [ "new", "established", @@ -41,6 +42,7 @@ "key": "state" } }, + "op": "in", "right": { "set": [ "new", @@ -84,6 +86,7 @@ "key": "state" } }, + "op": "in", "right": "invalid" } }, @@ -101,6 +104,7 @@ "key": "state" } }, + "op": "in", "right": "established" } }, @@ -118,6 +122,7 @@ "key": "state" } }, + "op": "in", "right": 8 } } @@ -132,6 +137,7 @@ "key": "direction" } }, + "op": "==", "right": "original" } } @@ -161,6 +167,7 @@ "key": "direction" } }, + "op": "==", "right": "reply" } } @@ -190,6 +197,7 @@ "key": "direction" } }, + "op": "in", "right": { "set": [ "reply", @@ -229,6 +237,7 @@ "key": "status" } }, + "op": "in", "right": "expected" } } @@ -258,6 +267,7 @@ "key": "status" } }, + "op": "in", "right": "seen-reply" } } @@ -287,6 +297,7 @@ "key": "status" } }, + "op": "==", "right": { "set": [ "expected", @@ -309,6 +320,7 @@ "key": "status" } }, + "op": "in", "right": [ "expected", "seen-reply", @@ -331,6 +343,7 @@ "key": "status" } }, + "op": "in", "right": "snat" } } @@ -345,6 +358,7 @@ "key": "status" } }, + "op": "in", "right": "dnat" } } @@ -359,6 +373,7 @@ "key": "mark" } }, + "op": "==", "right": 0 } } @@ -458,6 +473,7 @@ "0x23" ] }, + "op": "==", "right": "0x11" } } @@ -492,6 +508,7 @@ "key": "mark" } }, + "op": "==", "right": "0x00000032" } } @@ -521,6 +538,7 @@ "key": "mark" } }, + "op": "==", "right": { "range": [ "0x00000032", "0x00000045" ] } @@ -554,6 +572,7 @@ "key": "mark" } }, + "op": "in", "right": { "set": [ "0x32", @@ -574,6 +593,7 @@ "key": "mark" } }, + "op": "in", "right": { "set": [ { @@ -717,6 +737,7 @@ "key": "expiration" } }, + "op": "==", "right": "30s" } } @@ -731,6 +752,7 @@ "key": "expiration" } }, + "op": "==", "right": "30000ms" } } @@ -745,6 +767,7 @@ "key": "expiration" } }, + "op": "==", "right": { "range": [ "1m", "1h" ] } @@ -791,6 +814,7 @@ "key": "expiration" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -824,6 +848,7 @@ "key": "expiration" } }, + "op": "==", "right": { "set": [ 33, @@ -867,6 +892,7 @@ "key": "expiration" } }, + "op": "==", "right": { "set": [ { @@ -908,6 +934,7 @@ "key": "helper" } }, + "op": "==", "right": "ftp" } } @@ -931,6 +958,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -963,6 +991,7 @@ } ] }, + "op": "==", "right": { "set": [ { "concat": [ "new", "0x12345678" ] }, @@ -992,6 +1021,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -1227,6 +1257,7 @@ "key": "label" } }, + "op": "in", "right": 127 } } @@ -1255,6 +1286,7 @@ "key": "zone" } }, + "op": "==", "right": 0 } } @@ -1269,6 +1301,7 @@ "key": "zone" } }, + "op": "==", "right": 23 } } @@ -1284,6 +1317,7 @@ "key": "zone" } }, + "op": "==", "right": 1 } } @@ -1299,6 +1333,7 @@ "key": "zone" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/any/ct.t.json.output b/tests/py/any/ct.t.json.output index 8f0ca93c..49d51771 100644 --- a/tests/py/any/ct.t.json.output +++ b/tests/py/any/ct.t.json.output @@ -7,6 +7,7 @@ "key": "state" } }, + "op": "in", "right": [ "established", "related", @@ -26,6 +27,7 @@ "key": "state" } }, + "op": "==", "right": { "set": [ "established", @@ -69,6 +71,7 @@ "key": "state" } }, + "op": "in", "right": "new" } } @@ -83,6 +86,7 @@ "key": "direction" } }, + "op": "==", "right": { "set": [ "original", @@ -202,6 +206,7 @@ "key": "mark" } }, + "op": "==", "right": 50 } } @@ -231,6 +236,7 @@ "key": "mark" } }, + "op": "==", "right": 50 } } @@ -260,6 +266,7 @@ "key": "mark" } }, + "op": "==", "right": { "range": [ 50, 69 ] } @@ -293,6 +300,7 @@ "key": "mark" } }, + "op": "==", "right": { "set": [ 50, @@ -313,6 +321,7 @@ "key": "mark" } }, + "op": "==", "right": { "set": [ { "range": [ 50, 8738 ] }, @@ -409,6 +418,7 @@ "key": "expiration" } }, + "op": "==", "right": 30 } } @@ -423,6 +433,7 @@ "key": "expiration" } }, + "op": "==", "right": 30 } } @@ -437,6 +448,7 @@ "key": "expiration" } }, + "op": "==", "right": { "range": [ 60, 3600 ] } @@ -477,6 +489,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -509,6 +522,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -553,6 +567,7 @@ } ] }, + "op": "==", "right": { "set": [ { diff --git a/tests/py/any/meta.t.json b/tests/py/any/meta.t.json index 00a4f237..2cf91cda 100644 --- a/tests/py/any/meta.t.json +++ b/tests/py/any/meta.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": 1000 } } @@ -17,6 +18,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": 22 } } @@ -42,6 +44,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -71,6 +74,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": { "set": [ 33, @@ -90,6 +94,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] }, @@ -107,6 +112,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 88 ] }, @@ -144,6 +150,7 @@ "left": { "meta": { "key": "length" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -177,6 +184,7 @@ "left": { "meta": { "key": "protocol" } }, + "op": "==", "right": { "set": [ "ip", @@ -216,6 +224,7 @@ "left": { "meta": { "key": "protocol" } }, + "op": "==", "right": "ip" } } @@ -241,6 +250,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 22 } } @@ -266,6 +276,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -295,6 +306,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": { "set": [ 33, @@ -334,6 +346,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -367,6 +380,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "root" } } @@ -379,6 +393,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "none" } } @@ -391,6 +406,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "0x87654321" } } @@ -403,6 +419,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": 2271560481 } } @@ -415,6 +432,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "1:1234" } } @@ -427,6 +445,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "bcad:dadc" } } @@ -439,6 +458,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "aabb:0" } } @@ -477,6 +497,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": { "range": [ "bcad:dada", "bcad:dadc" ] } @@ -506,6 +527,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": { "set": [ "bcad:dada", @@ -555,6 +577,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": "0x4" } } @@ -567,6 +590,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": "0x32" } } @@ -615,6 +639,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": "0x10" } } @@ -681,6 +706,7 @@ "0x03" ] }, + "op": "==", "right": "0x01" } } @@ -711,6 +737,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -742,6 +769,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "dummy0" } } @@ -767,6 +795,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": { "set": [ "dummy0", @@ -802,6 +831,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "dummy*" } } @@ -814,6 +844,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "dummy\\*" } } @@ -826,6 +857,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": { "set": [ "ether", @@ -884,6 +916,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } } @@ -909,6 +942,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ppp" } } @@ -921,6 +955,7 @@ "left": { "meta": { "key": "oif" } }, + "op": "==", "right": "lo" } }, @@ -952,6 +987,7 @@ "left": { "meta": { "key": "oif" } }, + "op": "==", "right": { "set": [ "lo" @@ -991,6 +1027,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": "dummy0" } } @@ -1016,6 +1053,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": { "set": [ "dummy0", @@ -1033,6 +1071,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": "dummy*" } } @@ -1045,6 +1084,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": "dummy\\*" } } @@ -1057,6 +1097,7 @@ "left": { "meta": { "key": "oiftype" } }, + "op": "==", "right": { "set": [ "ether", @@ -1115,6 +1156,7 @@ "left": { "meta": { "key": "oiftype" } }, + "op": "==", "right": "ether" } } @@ -1127,6 +1169,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": { "set": [ "bin", @@ -1170,6 +1213,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": "root" } } @@ -1227,6 +1271,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": 3000 } }, @@ -1242,6 +1287,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": { "range": [ 3001, 3005 ] } @@ -1277,6 +1323,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": { "set": [ { "range": [ 2001, 2005 ] } @@ -1316,6 +1363,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": { "set": [ "bin", @@ -1359,6 +1407,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": "root" } } @@ -1416,6 +1465,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": 3000 } }, @@ -1431,6 +1481,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": { "range": [ 2001, 2005 ] } @@ -1466,6 +1517,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": { "set": [ { "range": [ 2001, 2005 ] } @@ -1601,6 +1653,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } } @@ -1613,6 +1666,7 @@ "left": { "meta": { "key": "oif" } }, + "op": "==", "right": "lo" } } @@ -1625,6 +1679,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": "dummy2" } }, @@ -1640,6 +1695,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": 3000 } } @@ -1652,6 +1708,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": 3000 } } @@ -1664,6 +1721,7 @@ "left": { "meta": { "key": "rtclassid" } }, + "op": "==", "right": "cosmos" } } @@ -1676,6 +1734,7 @@ "left": { "meta": { "key": "pkttype" } }, + "op": "==", "right": "broadcast" } } @@ -1688,6 +1747,7 @@ "left": { "meta": { "key": "pkttype" } }, + "op": "==", "right": "host" } } @@ -1700,6 +1760,7 @@ "left": { "meta": { "key": "pkttype" } }, + "op": "==", "right": "multicast" } } @@ -1751,6 +1812,7 @@ "left": { "meta": { "key": "pkttype" } }, + "op": "==", "right": { "set": [ "broadcast", @@ -1771,6 +1833,7 @@ "left": { "meta": { "key": "cpu" } }, + "op": "==", "right": 1 } } @@ -1796,6 +1859,7 @@ "left": { "meta": { "key": "cpu" } }, + "op": "==", "right": { "range": [ 1, 3 ] } @@ -1825,6 +1889,7 @@ "left": { "meta": { "key": "cpu" } }, + "op": "==", "right": { "set": [ 2, @@ -1842,6 +1907,7 @@ "left": { "meta": { "key": "cpu" } }, + "op": "==", "right": { "set": [ { "range": [ 2, 3 ] }, @@ -1877,6 +1943,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": 0 } } @@ -1902,6 +1969,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": "default" } } @@ -1927,6 +1995,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": { "set": [ "default" @@ -1960,6 +2029,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": { "set": [ 11, @@ -1977,6 +2047,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": { "set": [ { "range": [ 11, 33 ] } @@ -2028,6 +2099,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": 0 } } @@ -2053,6 +2125,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": "default" } } @@ -2078,6 +2151,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": { "set": [ "default" @@ -2111,6 +2185,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": { "set": [ 11, @@ -2128,6 +2203,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": { "set": [ { "range": [ 11, 33 ] } @@ -2179,6 +2255,7 @@ "left": { "meta": { "key": "cgroup" } }, + "op": "==", "right": 1048577 } } @@ -2204,6 +2281,7 @@ "left": { "meta": { "key": "cgroup" } }, + "op": "==", "right": { "set": [ 1048577, @@ -2239,6 +2317,7 @@ "left": { "meta": { "key": "cgroup" } }, + "op": "==", "right": { "range": [ 1048577, 1048578 ] } @@ -2268,6 +2347,7 @@ "left": { "meta": { "key": "cgroup" } }, + "op": "==", "right": { "set": [ { @@ -2312,6 +2392,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -2343,6 +2424,7 @@ } ] }, + "op": "==", "right": { "set": [ { @@ -2398,6 +2480,7 @@ "left": { "meta": { "key": "random" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/any/meta.t.json.output b/tests/py/any/meta.t.json.output index 398583f4..3c0c6c8c 100644 --- a/tests/py/any/meta.t.json.output +++ b/tests/py/any/meta.t.json.output @@ -5,6 +5,7 @@ "left": { "meta": { "key": "protocol" } }, + "op": "==", "right": { "set": [ "ip", @@ -44,6 +45,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "8765:4321" } } @@ -56,6 +58,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": "8765:4321" } } @@ -68,6 +71,7 @@ "left": { "meta": { "key": "priority" } }, + "op": "==", "right": { "set": [ "aaaa:bbbb", @@ -86,6 +90,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 4 } } @@ -98,6 +103,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 50 } } @@ -146,6 +152,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 16 } } @@ -207,6 +214,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 2 } } @@ -232,6 +240,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": { "set": [ "lo", @@ -267,6 +276,7 @@ "left": { "meta": { "key": "oifname" } }, + "op": "==", "right": { "set": [ "lo", @@ -284,6 +294,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": { "set": [ 0, 1, 2 ] } @@ -319,6 +330,7 @@ "left": { "meta": { "key": "skuid" } }, + "op": "==", "right": 0 } } @@ -344,6 +356,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": { "set": [ 0, 1, 2 ] } @@ -379,6 +392,7 @@ "left": { "meta": { "key": "skgid" } }, + "op": "==", "right": 0 } } @@ -500,6 +514,7 @@ "left": { "meta": { "key": "iifgroup" } }, + "op": "==", "right": "default" } } @@ -525,6 +540,7 @@ "left": { "meta": { "key": "oifgroup" } }, + "op": "==", "right": "default" } } @@ -560,6 +576,7 @@ } ] }, + "op": "==", "right": { "set": [ { diff --git a/tests/py/any/rawpayload.t.json b/tests/py/any/rawpayload.t.json index 9c513cba..22028ad8 100644 --- a/tests/py/any/rawpayload.t.json +++ b/tests/py/any/rawpayload.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": { "set": [ "tcp", @@ -23,6 +24,7 @@ "offset": 16 } }, + "op": "==", "right": { "set": [ 22, @@ -39,6 +41,7 @@ { "match": { "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "tcp" } }, @@ -51,6 +54,7 @@ "offset": 16 } }, + "op": "==", "right": { "set": [ 22, @@ -73,6 +77,7 @@ "offset": 8 } }, + "op": "==", "right": 255 } } @@ -89,6 +94,7 @@ "offset": 8 } }, + "op": "==", "right": 0 } } @@ -105,6 +111,7 @@ "offset": 0 } }, + "op": "==", "right": 1 } } @@ -143,6 +150,7 @@ "offset": 0 } }, + "op": "==", "right": "0xfedcba987654321001234567890abcde" } } diff --git a/tests/py/any/rawpayload.t.json.output b/tests/py/any/rawpayload.t.json.output index 699d9ece..a234e99a 100644 --- a/tests/py/any/rawpayload.t.json.output +++ b/tests/py/any/rawpayload.t.json.output @@ -5,6 +5,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": { "set": [ 6, @@ -23,6 +24,7 @@ "offset": 16 } }, + "op": "==", "right": { "set": [ 22, @@ -44,6 +46,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 22, diff --git a/tests/py/any/rt.t.json b/tests/py/any/rt.t.json index 146a8a01..955d12a3 100644 --- a/tests/py/any/rt.t.json +++ b/tests/py/any/rt.t.json @@ -7,6 +7,7 @@ "key": "classid" } }, + "op": "==", "right": "cosmos" } } diff --git a/tests/py/arp/arp.t.json b/tests/py/arp/arp.t.json index 7f5c3ca2..4b0439e6 100644 --- a/tests/py/arp/arp.t.json +++ b/tests/py/arp/arp.t.json @@ -8,6 +8,7 @@ "protocol": "arp" } }, + "op": "==", "right": 1 } } @@ -39,6 +40,7 @@ "protocol": "arp" } }, + "op": "==", "right": 22 } } @@ -70,6 +72,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -105,6 +108,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ 33, @@ -150,6 +154,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -189,6 +194,7 @@ "protocol": "arp" } }, + "op": "==", "right": "0x0800" } } @@ -204,6 +210,7 @@ "protocol": "arp" } }, + "op": "==", "right": 22 } } @@ -235,6 +242,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -270,6 +278,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ 33, @@ -315,6 +324,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -354,6 +364,7 @@ "protocol": "arp" } }, + "op": "==", "right": 22 } } @@ -385,6 +396,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -420,6 +432,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ 33, @@ -465,6 +478,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -504,6 +518,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ "nak", @@ -555,6 +570,7 @@ "protocol": "arp" } }, + "op": "==", "right": "request" } } @@ -570,6 +586,7 @@ "protocol": "arp" } }, + "op": "==", "right": "reply" } } @@ -585,6 +602,7 @@ "protocol": "arp" } }, + "op": "==", "right": "rrequest" } } @@ -600,6 +618,7 @@ "protocol": "arp" } }, + "op": "==", "right": "rreply" } } @@ -615,6 +634,7 @@ "protocol": "arp" } }, + "op": "==", "right": "inrequest" } } @@ -630,6 +650,7 @@ "protocol": "arp" } }, + "op": "==", "right": "inreply" } } @@ -645,6 +666,7 @@ "protocol": "arp" } }, + "op": "==", "right": "nak" } } @@ -660,6 +682,7 @@ "protocol": "arp" } }, + "op": "==", "right": "reply" } } @@ -800,6 +823,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "invalid" } }, @@ -811,6 +835,7 @@ "protocol": "arp" } }, + "op": "==", "right": "0x0800" } }, @@ -822,6 +847,7 @@ "protocol": "arp" } }, + "op": "==", "right": 1 } }, @@ -833,6 +859,7 @@ "protocol": "arp" } }, + "op": "==", "right": 6 } }, @@ -844,6 +871,7 @@ "protocol": "arp" } }, + "op": "==", "right": 4 } }, @@ -856,6 +884,7 @@ "offset": 192 } }, + "op": "==", "right": "0xc0a88f10" } }, diff --git a/tests/py/arp/arp.t.json.output b/tests/py/arp/arp.t.json.output index 7ee4dbfa..4053d947 100644 --- a/tests/py/arp/arp.t.json.output +++ b/tests/py/arp/arp.t.json.output @@ -8,6 +8,7 @@ "protocol": "arp" } }, + "op": "==", "right": "ip" } } @@ -23,6 +24,7 @@ "protocol": "arp" } }, + "op": "==", "right": { "set": [ "request", @@ -71,6 +73,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "invalid" } }, @@ -82,6 +85,7 @@ "protocol": "arp" } }, + "op": "==", "right": 1 } }, @@ -93,6 +97,7 @@ "protocol": "arp" } }, + "op": "==", "right": "ip" } }, @@ -104,6 +109,7 @@ "protocol": "arp" } }, + "op": "==", "right": 6 } }, @@ -115,6 +121,7 @@ "protocol": "arp" } }, + "op": "==", "right": 4 } }, @@ -127,6 +134,7 @@ "offset": 192 } }, + "op": "==", "right": 3232272144 } }, diff --git a/tests/py/bridge/ether.t.json b/tests/py/bridge/ether.t.json index d9a0066b..485ceee4 100644 --- a/tests/py/bridge/ether.t.json +++ b/tests/py/bridge/ether.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -16,6 +17,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } }, @@ -27,6 +29,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -38,6 +41,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -56,6 +60,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -67,6 +72,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -78,6 +84,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } } @@ -93,6 +100,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -104,6 +112,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -115,6 +124,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } @@ -130,6 +140,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -141,6 +152,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -159,6 +171,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:01:02:03:04:05" } }, diff --git a/tests/py/bridge/ether.t.json.output b/tests/py/bridge/ether.t.json.output index 1c3cb8dc..05e568f6 100644 --- a/tests/py/bridge/ether.t.json.output +++ b/tests/py/bridge/ether.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -19,6 +20,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -30,6 +32,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -48,6 +51,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -59,6 +63,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -70,6 +75,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } diff --git a/tests/py/bridge/icmpX.t.json b/tests/py/bridge/icmpX.t.json index 830bb799..2dd341ec 100644 --- a/tests/py/bridge/icmpX.t.json +++ b/tests/py/bridge/icmpX.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "icmp" } }, @@ -19,6 +20,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -34,6 +36,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -49,6 +52,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "icmpv6" } }, @@ -60,6 +64,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -75,6 +80,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/bridge/icmpX.t.json.output b/tests/py/bridge/icmpX.t.json.output index ecfaa62f..8cf46791 100644 --- a/tests/py/bridge/icmpX.t.json.output +++ b/tests/py/bridge/icmpX.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": 1 } }, @@ -19,6 +20,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -34,6 +36,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 58 } }, @@ -45,6 +48,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/bridge/meta.t.json b/tests/py/bridge/meta.t.json index 0c63e26e..5df4773a 100644 --- a/tests/py/bridge/meta.t.json +++ b/tests/py/bridge/meta.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "obrname" } }, + "op": "==", "right": "br0" } } @@ -17,6 +18,7 @@ "left": { "meta": { "key": "ibrname" } }, + "op": "==", "right": "br0" } } diff --git a/tests/py/bridge/reject.t.json b/tests/py/bridge/reject.t.json index 0ced129c..d20a1d8b 100644 --- a/tests/py/bridge/reject.t.json +++ b/tests/py/bridge/reject.t.json @@ -115,6 +115,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 12345 } }, @@ -126,6 +127,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -153,6 +155,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -171,6 +174,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip6" } }, diff --git a/tests/py/bridge/reject.t.json.output b/tests/py/bridge/reject.t.json.output index a83feabc..08dfaf6a 100644 --- a/tests/py/bridge/reject.t.json.output +++ b/tests/py/bridge/reject.t.json.output @@ -8,6 +8,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -29,6 +30,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -50,6 +52,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -71,6 +74,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -89,6 +93,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -110,6 +115,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -131,6 +137,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -152,6 +159,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip6" } }, @@ -173,6 +181,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip6" } }, @@ -194,6 +203,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip6" } }, @@ -215,6 +225,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip6" } }, @@ -230,6 +241,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 12345 } }, @@ -241,6 +253,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, diff --git a/tests/py/bridge/vlan.t.json b/tests/py/bridge/vlan.t.json index 7facb61b..1a654640 100644 --- a/tests/py/bridge/vlan.t.json +++ b/tests/py/bridge/vlan.t.json @@ -8,6 +8,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } } @@ -23,6 +24,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 0 } } @@ -38,6 +40,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -49,6 +52,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 0 } } @@ -64,6 +68,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -91,6 +96,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -102,6 +108,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } } @@ -117,6 +124,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -128,6 +136,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -139,6 +148,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 7 } } @@ -154,6 +164,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -165,6 +176,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -176,6 +188,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 3 } } @@ -191,6 +204,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } } @@ -206,6 +220,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 0 } } @@ -221,6 +236,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -232,6 +248,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 0 } } @@ -247,6 +264,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -258,6 +276,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } } @@ -273,6 +292,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 4094 } }, @@ -284,6 +304,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -299,6 +320,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -310,6 +332,7 @@ "protocol": "ip" } }, + "op": "==", "right": "10.0.0.1" } } @@ -325,6 +348,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -336,6 +360,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "prefix": { "addr": "10.0.0.0", @@ -356,6 +381,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -367,6 +393,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "prefix": { "addr": "10.0.0.0", @@ -383,6 +410,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } } @@ -398,6 +426,7 @@ "protocol": "vlan" } }, + "op": "==", "right": 1 } }, @@ -409,6 +438,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "prefix": { "addr": "10.0.0.0", @@ -425,6 +455,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } } @@ -440,6 +471,7 @@ "protocol": "vlan" } }, + "op": "==", "right": { "set": [ 1, @@ -459,6 +491,7 @@ "protocol": "vlan" } }, + "op": "==", "right": { "range": [ 1, 3 ] } diff --git a/tests/py/inet/ah.t.json b/tests/py/inet/ah.t.json index 4f3fd743..4efdb0dd 100644 --- a/tests/py/inet/ah.t.json +++ b/tests/py/inet/ah.t.json @@ -8,6 +8,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "range": [ 11, 23 ] } @@ -43,6 +44,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ { "range": [ 11, 23 ] } @@ -82,6 +84,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ 11, @@ -125,6 +128,7 @@ "protocol": "ah" } }, + "op": "==", "right": 22 } } @@ -156,6 +160,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -191,6 +196,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ 23, @@ -232,6 +238,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -271,6 +278,7 @@ "protocol": "ah" } }, + "op": "==", "right": 111 } } @@ -302,6 +310,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "range": [ 111, 222 ] } @@ -337,6 +346,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ 111, @@ -378,6 +388,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ { "range": [ 111, 122 ] } @@ -417,6 +428,7 @@ "protocol": "ah" } }, + "op": "==", "right": 123 } } @@ -448,6 +460,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ 23, @@ -491,6 +504,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "set": [ { "range": [ 23, 33 ] } @@ -530,6 +544,7 @@ "protocol": "ah" } }, + "op": "==", "right": { "range": [ 23, 33 ] } diff --git a/tests/py/inet/comp.t.json b/tests/py/inet/comp.t.json index 56fccafb..b9b24f98 100644 --- a/tests/py/inet/comp.t.json +++ b/tests/py/inet/comp.t.json @@ -24,6 +24,7 @@ "protocol": "comp" } }, + "op": "==", "right": "0x0" } } @@ -55,6 +56,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "range": [ "0x33", "0x45" ] } @@ -90,6 +92,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ "0x33", @@ -135,6 +138,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ { "range": [ "0x33", "0x55" ] } @@ -174,6 +178,7 @@ "protocol": "comp" } }, + "op": "==", "right": 22 } } @@ -205,6 +210,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -240,6 +246,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ 33, @@ -285,6 +292,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/inet/comp.t.json.output b/tests/py/inet/comp.t.json.output index 21517998..435c3de4 100644 --- a/tests/py/inet/comp.t.json.output +++ b/tests/py/inet/comp.t.json.output @@ -24,6 +24,7 @@ "protocol": "comp" } }, + "op": "==", "right": 0 } } @@ -55,6 +56,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "range": [ 51, 69 ] } @@ -90,6 +92,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ 51, @@ -135,6 +138,7 @@ "protocol": "comp" } }, + "op": "==", "right": { "set": [ { "range": [ 51, 85 ] } diff --git a/tests/py/inet/ct.t.json b/tests/py/inet/ct.t.json index 9b54e1d0..02bb2d27 100644 --- a/tests/py/inet/ct.t.json +++ b/tests/py/inet/ct.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -16,6 +17,7 @@ "key": "saddr" } }, + "op": "==", "right": "1.2.3.4" } } @@ -32,6 +34,7 @@ "key": "saddr" } }, + "op": "==", "right": "::1" } } diff --git a/tests/py/inet/ct.t.json.output b/tests/py/inet/ct.t.json.output index 5605ebcf..8b71519e 100644 --- a/tests/py/inet/ct.t.json.output +++ b/tests/py/inet/ct.t.json.output @@ -9,6 +9,7 @@ "key": "saddr" } }, + "op": "==", "right": "1.2.3.4" } } diff --git a/tests/py/inet/dccp.t.json b/tests/py/inet/dccp.t.json index 7d87966f..9260fbc5 100644 --- a/tests/py/inet/dccp.t.json +++ b/tests/py/inet/dccp.t.json @@ -8,6 +8,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "range": [ 21, 35 ] } @@ -43,6 +44,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ 23, @@ -86,6 +88,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ { "range": [ 20, 50 ] } @@ -105,6 +108,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "range": [ "ftp-data", "re-mail-ck" ] } @@ -122,6 +126,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "range": [ 20, 50 ] } @@ -139,6 +144,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ { "range": [ 20, 50 ] } @@ -178,6 +184,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ 23, @@ -221,6 +228,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ { "range": [ 20, 50 ] } @@ -260,6 +268,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "set": [ "request", @@ -317,6 +326,7 @@ "protocol": "dccp" } }, + "op": "==", "right": "request" } } diff --git a/tests/py/inet/dccp.t.json.output b/tests/py/inet/dccp.t.json.output index 889e4209..146741dd 100644 --- a/tests/py/inet/dccp.t.json.output +++ b/tests/py/inet/dccp.t.json.output @@ -8,6 +8,7 @@ "protocol": "dccp" } }, + "op": "==", "right": { "range": [ 20, 50 ] } diff --git a/tests/py/inet/esp.t.json b/tests/py/inet/esp.t.json index e6f59a65..84ea9eea 100644 --- a/tests/py/inet/esp.t.json +++ b/tests/py/inet/esp.t.json @@ -8,6 +8,7 @@ "protocol": "esp" } }, + "op": "==", "right": 100 } } @@ -39,6 +40,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "range": [ 111, 222 ] } @@ -74,6 +76,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "set": [ 100, @@ -115,6 +118,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "set": [ { "range": [ 100, 102 ] } @@ -134,6 +138,7 @@ "protocol": "esp" } }, + "op": "==", "right": 22 } } @@ -149,6 +154,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "range": [ 22, 24 ] } @@ -184,6 +190,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "set": [ 22, @@ -225,6 +232,7 @@ "protocol": "esp" } }, + "op": "==", "right": { "set": [ { "range": [ 22, 25 ] } diff --git a/tests/py/inet/ether-ip.t.json b/tests/py/inet/ether-ip.t.json index b5356bb3..8f35b3d0 100644 --- a/tests/py/inet/ether-ip.t.json +++ b/tests/py/inet/ether-ip.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -16,6 +17,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } }, @@ -27,6 +29,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -38,6 +41,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -56,6 +60,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -67,6 +72,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -78,6 +84,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } } diff --git a/tests/py/inet/ether-ip.t.json.output b/tests/py/inet/ether-ip.t.json.output index 2ae5655a..f659113d 100644 --- a/tests/py/inet/ether-ip.t.json.output +++ b/tests/py/inet/ether-ip.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -19,6 +20,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -30,6 +32,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, diff --git a/tests/py/inet/ether.t.json b/tests/py/inet/ether.t.json index 69b75ac0..84b184c7 100644 --- a/tests/py/inet/ether.t.json +++ b/tests/py/inet/ether.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -16,6 +17,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } }, @@ -27,6 +29,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -45,6 +48,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -56,6 +60,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -74,6 +79,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, diff --git a/tests/py/inet/ether.t.json.output b/tests/py/inet/ether.t.json.output index 19e3865b..9ae8c442 100644 --- a/tests/py/inet/ether.t.json.output +++ b/tests/py/inet/ether.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -19,6 +20,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, diff --git a/tests/py/inet/fib.t.json b/tests/py/inet/fib.t.json index 92bb5ec0..c2989156 100644 --- a/tests/py/inet/fib.t.json +++ b/tests/py/inet/fib.t.json @@ -30,6 +30,7 @@ "result": "oifname" } }, + "op": "==", "right": "lo" } } @@ -48,6 +49,7 @@ "result": "type" } }, + "op": "==", "right": "local" } } @@ -104,6 +106,7 @@ "result": "oif" } }, + "op": "==", "right": true } } @@ -121,6 +124,7 @@ "result": "oif" } }, + "op": "==", "right": false } } diff --git a/tests/py/inet/icmp.t.json b/tests/py/inet/icmp.t.json index efc40428..64be2b36 100644 --- a/tests/py/inet/icmp.t.json +++ b/tests/py/inet/icmp.t.json @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -23,6 +24,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -33,6 +35,7 @@ { "match": { "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -44,6 +47,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -54,6 +58,7 @@ { "match": { "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -65,6 +70,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -75,6 +81,7 @@ { "match": { "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -86,6 +93,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -96,6 +104,7 @@ { "match": { "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -107,6 +116,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/inet/icmp.t.json.output b/tests/py/inet/icmp.t.json.output index a5ee48be..062c82f5 100644 --- a/tests/py/inet/icmp.t.json.output +++ b/tests/py/inet/icmp.t.json.output @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -23,6 +24,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/inet/icmpX.t.json b/tests/py/inet/icmpX.t.json index b9905e9d..8e130917 100644 --- a/tests/py/inet/icmpX.t.json +++ b/tests/py/inet/icmpX.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "icmp" } }, @@ -19,6 +20,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -34,6 +36,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -49,6 +52,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "icmpv6" } }, @@ -60,6 +64,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -75,6 +80,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -90,6 +96,7 @@ "protocol": "ip" } }, + "op": "==", "right": "ipv6-icmp" } }, @@ -98,6 +105,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "ipv6-icmp" } }, @@ -109,6 +117,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/inet/icmpX.t.json.output b/tests/py/inet/icmpX.t.json.output index 15fdd15a..9b0bf9f7 100644 --- a/tests/py/inet/icmpX.t.json.output +++ b/tests/py/inet/icmpX.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": 1 } }, @@ -19,6 +20,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -34,6 +36,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 58 } }, @@ -45,6 +48,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } } @@ -60,6 +64,7 @@ "protocol": "ip" } }, + "op": "==", "right": 58 } }, @@ -68,6 +73,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 58 } }, @@ -79,6 +85,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "destination-unreachable" } } diff --git a/tests/py/inet/ip.t.json b/tests/py/inet/ip.t.json index 4b2efd54..638fb7d8 100644 --- a/tests/py/inet/ip.t.json +++ b/tests/py/inet/ip.t.json @@ -24,6 +24,7 @@ } ] }, + "op": "==", "right": { "set": [ { diff --git a/tests/py/inet/ip_tcp.t.json b/tests/py/inet/ip_tcp.t.json index e2f918aa..87cb9bff 100644 --- a/tests/py/inet/ip_tcp.t.json +++ b/tests/py/inet/ip_tcp.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -19,6 +20,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -34,6 +36,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -45,6 +48,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -56,6 +60,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -71,6 +76,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -85,6 +91,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -96,6 +103,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -111,6 +119,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -125,6 +134,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -140,6 +150,7 @@ "protocol": "ether" } }, + "op": "==", "right": "ip" } }, @@ -151,6 +162,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } diff --git a/tests/py/inet/ip_tcp.t.json.output b/tests/py/inet/ip_tcp.t.json.output index bd6a8620..4a6a05d7 100644 --- a/tests/py/inet/ip_tcp.t.json.output +++ b/tests/py/inet/ip_tcp.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -19,6 +20,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -34,6 +36,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -45,6 +48,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -60,6 +64,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -74,6 +79,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -85,6 +91,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -100,6 +107,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -114,6 +122,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } diff --git a/tests/py/inet/meta.t.json b/tests/py/inet/meta.t.json index 5bf8a547..77f46ab6 100644 --- a/tests/py/inet/meta.t.json +++ b/tests/py/inet/meta.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } } @@ -17,6 +18,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } } @@ -29,6 +31,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": { "set": [ "ipv4", @@ -64,6 +67,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -75,6 +79,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -87,6 +92,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -98,6 +104,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -110,6 +117,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -121,6 +129,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } @@ -133,6 +142,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -141,6 +151,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "tcp" } } @@ -153,6 +164,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -167,6 +179,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } @@ -179,6 +192,7 @@ "left": { "meta": { "key": "secpath" } }, + "op": "==", "right": true } } @@ -191,6 +205,7 @@ "left": { "meta": { "key": "secpath" } }, + "op": "==", "right": false } } diff --git a/tests/py/inet/meta.t.json.output b/tests/py/inet/meta.t.json.output index 565e2fa0..d0bb0a61 100644 --- a/tests/py/inet/meta.t.json.output +++ b/tests/py/inet/meta.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } @@ -20,6 +21,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -28,6 +30,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 6 } } diff --git a/tests/py/inet/reject.t.json b/tests/py/inet/reject.t.json index b63cb7df..bfa94f84 100644 --- a/tests/py/inet/reject.t.json +++ b/tests/py/inet/reject.t.json @@ -115,6 +115,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 12345 } }, @@ -139,6 +140,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -154,6 +156,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -209,6 +212,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -227,6 +231,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, diff --git a/tests/py/inet/reject.t.json.output b/tests/py/inet/reject.t.json.output index 46875434..73846fb0 100644 --- a/tests/py/inet/reject.t.json.output +++ b/tests/py/inet/reject.t.json.output @@ -5,6 +5,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -23,6 +24,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -41,6 +43,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -59,6 +62,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -74,6 +78,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -92,6 +97,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -110,6 +116,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -128,6 +135,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -146,6 +154,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -164,6 +173,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -182,6 +192,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv6" } }, @@ -197,6 +208,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 6 } }, @@ -205,6 +217,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 12345 } }, diff --git a/tests/py/inet/rt.t.json b/tests/py/inet/rt.t.json index e81bcfd8..6dbea413 100644 --- a/tests/py/inet/rt.t.json +++ b/tests/py/inet/rt.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -15,6 +16,7 @@ "key": "nexthop" } }, + "op": "==", "right": "192.168.0.1" } } @@ -30,6 +32,7 @@ "key": "nexthop" } }, + "op": "==", "right": "fd00::1" } } diff --git a/tests/py/inet/rt.t.json.output b/tests/py/inet/rt.t.json.output index de765bd9..382ef87e 100644 --- a/tests/py/inet/rt.t.json.output +++ b/tests/py/inet/rt.t.json.output @@ -5,6 +5,7 @@ "left": { "meta": { "key": "nfproto" } }, + "op": "==", "right": "ipv4" } }, @@ -16,6 +17,7 @@ "key": "nexthop" } }, + "op": "==", "right": "192.168.0.1" } } diff --git a/tests/py/inet/sctp.t.json b/tests/py/inet/sctp.t.json index f382c6d2..2684b034 100644 --- a/tests/py/inet/sctp.t.json +++ b/tests/py/inet/sctp.t.json @@ -8,6 +8,7 @@ "protocol": "sctp" } }, + "op": "==", "right": 23 } } @@ -39,6 +40,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "range": [ 23, 44 ] } @@ -74,6 +76,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ 23, @@ -117,6 +120,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ { "range": [ 23, 44 ] } @@ -156,6 +160,7 @@ "protocol": "sctp" } }, + "op": "==", "right": 23 } } @@ -187,6 +192,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "range": [ 23, 44 ] } @@ -222,6 +228,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ 23, @@ -265,6 +272,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ { "range": [ 23, 44 ] } @@ -304,6 +312,7 @@ "protocol": "sctp" } }, + "op": "==", "right": 1111 } } @@ -335,6 +344,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "range": [ 21, 333 ] } @@ -370,6 +380,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ 22, @@ -413,6 +424,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ { "range": [ 22, 44 ] } @@ -452,6 +464,7 @@ "protocol": "sctp" } }, + "op": "==", "right": 22 } } @@ -483,6 +496,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -518,6 +532,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ 33, @@ -563,6 +578,7 @@ "protocol": "sctp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/inet/sets.t.json b/tests/py/inet/sets.t.json index 34f37588..bcb638f2 100644 --- a/tests/py/inet/sets.t.json +++ b/tests/py/inet/sets.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "@set1" } }, diff --git a/tests/py/inet/socket.t.json b/tests/py/inet/socket.t.json index 235c3e94..d672c500 100644 --- a/tests/py/inet/socket.t.json +++ b/tests/py/inet/socket.t.json @@ -7,6 +7,7 @@ "key": "transparent" } }, + "op": "==", "right": 0 } } @@ -21,6 +22,7 @@ "key": "transparent" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/inet/tcp.t.json b/tests/py/inet/tcp.t.json index 0b30fbcf..5744e594 100644 --- a/tests/py/inet/tcp.t.json +++ b/tests/py/inet/tcp.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -39,6 +40,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -74,6 +76,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -119,6 +122,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -158,6 +162,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ "telnet", @@ -242,6 +247,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 22, @@ -287,6 +293,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -318,6 +325,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -353,6 +361,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -398,6 +407,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -467,6 +477,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 8080 } }, @@ -485,6 +496,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 1024 } }, @@ -496,6 +508,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -511,6 +524,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 1024 } }, @@ -522,6 +536,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -533,6 +548,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 0 } } @@ -548,6 +564,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 0 } }, @@ -559,6 +576,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 1024 } }, @@ -570,6 +588,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -585,6 +604,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 0 } }, @@ -596,6 +616,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1024, @@ -612,6 +633,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -627,6 +649,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -658,6 +681,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -693,6 +717,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -738,6 +763,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -777,6 +803,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 42949672 } }, @@ -795,6 +822,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -826,6 +854,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -861,6 +890,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -906,6 +936,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -945,6 +976,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ "fin", @@ -1000,6 +1032,7 @@ "protocol": "tcp" } }, + "op": "in", "right": "cwr" } } @@ -1078,6 +1111,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22222 } } @@ -1093,6 +1127,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -1124,6 +1159,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1159,6 +1195,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -1204,6 +1241,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -1243,6 +1281,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -1274,6 +1313,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1309,6 +1349,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -1354,6 +1395,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -1393,6 +1435,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 1234 } }, @@ -1411,6 +1454,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -1442,6 +1486,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1477,6 +1522,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 33, @@ -1522,6 +1568,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -1561,6 +1608,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 8 } } diff --git a/tests/py/inet/tcp.t.json.output b/tests/py/inet/tcp.t.json.output index e840169a..50282ec5 100644 --- a/tests/py/inet/tcp.t.json.output +++ b/tests/py/inet/tcp.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 23, @@ -32,6 +33,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 1024 } }, @@ -43,6 +45,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -54,6 +57,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 0 } } @@ -69,6 +73,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1022, @@ -85,6 +90,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -96,6 +102,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 0 } } diff --git a/tests/py/inet/tcpopt.t.json b/tests/py/inet/tcpopt.t.json index 431ee021..45e9c293 100644 --- a/tests/py/inet/tcpopt.t.json +++ b/tests/py/inet/tcpopt.t.json @@ -8,6 +8,7 @@ "name": "eol" } }, + "op": "==", "right": 1 } } @@ -23,6 +24,7 @@ "name": "noop" } }, + "op": "==", "right": 1 } } @@ -38,6 +40,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -53,6 +56,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -68,6 +72,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -83,6 +88,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -98,6 +104,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -113,6 +120,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -128,6 +136,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -143,6 +152,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -158,6 +168,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -173,6 +184,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -188,6 +200,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -203,6 +216,7 @@ "name": "sack0" } }, + "op": "==", "right": 1 } } @@ -218,6 +232,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -233,6 +248,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -248,6 +264,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -263,6 +280,7 @@ "name": "sack0" } }, + "op": "==", "right": 1 } } @@ -278,6 +296,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -293,6 +312,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -308,6 +328,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -323,6 +344,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -338,6 +360,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -353,6 +376,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -368,6 +392,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -382,6 +407,7 @@ "name": "window" } }, + "op": "==", "right": true } } @@ -396,6 +422,7 @@ "name": "window" } }, + "op": "==", "right": false } } diff --git a/tests/py/inet/tcpopt.t.json.output b/tests/py/inet/tcpopt.t.json.output index 302108c2..ad0d25f4 100644 --- a/tests/py/inet/tcpopt.t.json.output +++ b/tests/py/inet/tcpopt.t.json.output @@ -8,6 +8,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -23,6 +24,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/inet/udp.t.json b/tests/py/inet/udp.t.json index 5ea073d7..f8826640 100644 --- a/tests/py/inet/udp.t.json +++ b/tests/py/inet/udp.t.json @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 80 } }, @@ -45,6 +46,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "range": [ 50, 70 ] } @@ -86,6 +88,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ 49, @@ -133,6 +136,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ { "range": [ 12, 40 ] } @@ -172,6 +176,7 @@ "protocol": "udp" } }, + "op": "==", "right": 80 } }, @@ -209,6 +214,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "range": [ 70, 75 ] } @@ -250,6 +256,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ 49, @@ -297,6 +304,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ { "range": [ 70, 75 ] } @@ -342,6 +350,7 @@ "protocol": "udp" } }, + "op": "==", "right": 6666 } } @@ -373,6 +382,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "range": [ 50, 65 ] } @@ -414,6 +424,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ 50, @@ -461,6 +472,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ { "range": [ 35, 50 ] } @@ -500,6 +512,7 @@ "protocol": "udp" } }, + "op": "==", "right": 6666 } }, @@ -542,6 +555,7 @@ "protocol": "udp" } }, + "op": "==", "right": 22 } } @@ -573,6 +587,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -608,6 +623,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ 33, @@ -653,6 +669,7 @@ "protocol": "udp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -689,6 +706,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -712,6 +730,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, diff --git a/tests/py/inet/udplite.t.json b/tests/py/inet/udplite.t.json index 75e72579..f56bee47 100644 --- a/tests/py/inet/udplite.t.json +++ b/tests/py/inet/udplite.t.json @@ -8,6 +8,7 @@ "protocol": "udplite" } }, + "op": "==", "right": 80 } }, @@ -45,6 +46,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "range": [ 50, 70 ] } @@ -86,6 +88,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ 49, @@ -133,6 +136,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ { "range": [ 12, 40 ] } @@ -172,6 +176,7 @@ "protocol": "udplite" } }, + "op": "==", "right": 80 } }, @@ -209,6 +214,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "range": [ 70, 75 ] } @@ -250,6 +256,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ 49, @@ -297,6 +304,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ { "range": [ 70, 75 ] } @@ -342,6 +350,7 @@ "protocol": "udplite" } }, + "op": "==", "right": 6666 } }, @@ -384,6 +393,7 @@ "protocol": "udplite" } }, + "op": "==", "right": 22 } } @@ -415,6 +425,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -450,6 +461,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ 33, @@ -495,6 +507,7 @@ "protocol": "udplite" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip/ct.t.json b/tests/py/ip/ct.t.json index 6314d5b2..cc3ab692 100644 --- a/tests/py/ip/ct.t.json +++ b/tests/py/ip/ct.t.json @@ -9,6 +9,7 @@ "key": "saddr" } }, + "op": "==", "right": "192.168.0.1" } } @@ -25,6 +26,7 @@ "key": "saddr" } }, + "op": "==", "right": "192.168.0.1" } } @@ -41,6 +43,7 @@ "key": "daddr" } }, + "op": "==", "right": "192.168.0.1" } } @@ -57,6 +60,7 @@ "key": "daddr" } }, + "op": "==", "right": "192.168.0.1" } } @@ -73,6 +77,7 @@ "key": "saddr" } }, + "op": "==", "right": { "prefix": { "addr": "192.168.1.0", @@ -94,6 +99,7 @@ "key": "saddr" } }, + "op": "==", "right": { "prefix": { "addr": "192.168.1.0", @@ -115,6 +121,7 @@ "key": "daddr" } }, + "op": "==", "right": { "prefix": { "addr": "192.168.1.0", @@ -136,6 +143,7 @@ "key": "daddr" } }, + "op": "==", "right": { "prefix": { "addr": "192.168.1.0", @@ -155,6 +163,7 @@ "key": "l3proto" } }, + "op": "==", "right": "ipv4" } } @@ -169,6 +178,7 @@ "key": "protocol" } }, + "op": "==", "right": 6 } }, @@ -180,6 +190,7 @@ "key": "proto-dst" } }, + "op": "==", "right": 22 } } @@ -195,6 +206,7 @@ "key": "protocol" } }, + "op": "==", "right": 17 } }, @@ -206,6 +218,7 @@ "key": "proto-src" } }, + "op": "==", "right": 53 } } diff --git a/tests/py/ip/ct.t.json.output b/tests/py/ip/ct.t.json.output index 2429ec69..cf4abaec 100644 --- a/tests/py/ip/ct.t.json.output +++ b/tests/py/ip/ct.t.json.output @@ -7,6 +7,7 @@ "key": "protocol" } }, + "op": "==", "right": 17 } }, @@ -18,6 +19,7 @@ "key": "proto-src" } }, + "op": "==", "right": 53 } } diff --git a/tests/py/ip/dnat.t.json b/tests/py/ip/dnat.t.json index c4ae8302..0481a368 100644 --- a/tests/py/ip/dnat.t.json +++ b/tests/py/ip/dnat.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -16,6 +17,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } @@ -35,6 +37,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -66,6 +69,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -77,6 +81,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 23, @@ -100,6 +105,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -135,6 +141,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -166,6 +173,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -177,6 +185,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 81 } }, diff --git a/tests/py/ip/ether.t.json b/tests/py/ip/ether.t.json index 8890f153..355c7fc5 100644 --- a/tests/py/ip/ether.t.json +++ b/tests/py/ip/ether.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -16,6 +17,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } }, @@ -27,6 +29,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -38,6 +41,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -56,6 +60,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -67,6 +72,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -78,6 +84,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } } @@ -93,6 +100,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -104,6 +112,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -115,6 +124,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } } @@ -130,6 +140,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -141,6 +152,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, diff --git a/tests/py/ip/ether.t.json.output b/tests/py/ip/ether.t.json.output index 811604e5..1e5dd50d 100644 --- a/tests/py/ip/ether.t.json.output +++ b/tests/py/ip/ether.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -19,6 +20,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.2.3.4" } }, @@ -30,6 +32,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, diff --git a/tests/py/ip/icmp.t.json b/tests/py/ip/icmp.t.json index 89fe754c..918621cb 100644 --- a/tests/py/ip/icmp.t.json +++ b/tests/py/ip/icmp.t.json @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-reply" } }, @@ -26,6 +27,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "destination-unreachable" } }, @@ -44,6 +46,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "source-quench" } }, @@ -62,6 +65,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "redirect" } }, @@ -80,6 +84,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } }, @@ -98,6 +103,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "time-exceeded" } }, @@ -116,6 +122,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "parameter-problem" } }, @@ -134,6 +141,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "timestamp-request" } }, @@ -152,6 +160,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "timestamp-reply" } }, @@ -170,6 +179,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "info-request" } }, @@ -188,6 +198,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "info-reply" } }, @@ -206,6 +217,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "address-mask-request" } }, @@ -224,6 +236,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "address-mask-reply" } }, @@ -242,6 +255,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "router-advertisement" } }, @@ -260,6 +274,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "router-solicitation" } }, @@ -278,6 +293,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ "echo-reply", @@ -336,6 +352,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 111 } }, @@ -373,6 +390,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 33, 55 ] } @@ -408,6 +426,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -447,6 +466,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 2, @@ -494,6 +514,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 12343 } }, @@ -531,6 +552,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 11, 343 ] } @@ -572,6 +594,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 11, 343 ] } @@ -617,6 +640,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 1111, @@ -666,6 +690,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 1245 } }, @@ -684,6 +709,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 22 } } @@ -715,6 +741,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -750,6 +777,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -789,6 +817,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 22, @@ -832,6 +861,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 22 } } @@ -863,6 +893,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -898,6 +929,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 33, @@ -943,6 +975,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -982,6 +1015,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 33 } } @@ -997,6 +1031,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 22, 33 ] } @@ -1014,6 +1049,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 22, 33 ] } @@ -1053,6 +1089,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 22 } } @@ -1084,6 +1121,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1119,6 +1157,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 33, @@ -1164,6 +1203,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -1203,6 +1243,7 @@ "protocol": "icmp" } }, + "op": "==", "right": 22 } } @@ -1234,6 +1275,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1269,6 +1311,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 33, @@ -1314,6 +1357,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip/icmp.t.json.output b/tests/py/ip/icmp.t.json.output index 31857262..30637a13 100644 --- a/tests/py/ip/icmp.t.json.output +++ b/tests/py/ip/icmp.t.json.output @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ "echo-reply", @@ -44,6 +45,7 @@ "protocol": "icmp" } }, + "op": "==", "right": { "set": [ 222, diff --git a/tests/py/ip/ip.t.json b/tests/py/ip/ip.t.json index c8b2bf83..3131ab79 100644 --- a/tests/py/ip/ip.t.json +++ b/tests/py/ip/ip.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "cs1" } } @@ -39,6 +40,7 @@ "protocol": "ip" } }, + "op": "==", "right": "0x38" } } @@ -70,6 +72,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ "cs0", @@ -163,6 +166,7 @@ "protocol": "ip" } }, + "op": "==", "right": 232 } } @@ -194,6 +198,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ 333, 435 ] } @@ -229,6 +234,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 333, @@ -274,6 +280,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ 333, 535 ] } @@ -313,6 +320,7 @@ "protocol": "ip" } }, + "op": "==", "right": 22 } } @@ -344,6 +352,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -379,6 +388,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 33, @@ -424,6 +434,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -463,6 +474,7 @@ "protocol": "ip" } }, + "op": "==", "right": 222 } }, @@ -497,6 +509,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -532,6 +545,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 33, @@ -577,6 +591,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -616,6 +631,7 @@ "protocol": "ip" } }, + "op": "==", "right": 0 } }, @@ -634,6 +650,7 @@ "protocol": "ip" } }, + "op": "==", "right": 233 } } @@ -649,6 +666,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ 33, 55 ] } @@ -684,6 +702,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 43, @@ -727,6 +746,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -766,6 +786,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } } @@ -797,6 +818,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ "icmp", @@ -858,6 +880,7 @@ "protocol": "ip" } }, + "op": "==", "right": 255 } } @@ -873,6 +896,7 @@ "protocol": "ip" } }, + "op": "==", "right": 13172 } }, @@ -891,6 +915,7 @@ "protocol": "ip" } }, + "op": "==", "right": 22 } } @@ -922,6 +947,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -957,6 +983,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 33, @@ -1002,6 +1029,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -1041,6 +1069,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "prefix": { "addr": "192.168.2.0", @@ -1082,6 +1111,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.3.1" } }, @@ -1093,6 +1123,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.3.100" } } @@ -1124,6 +1155,7 @@ "protocol": "ip" } }, + "op": "==", "right": "1.1.1.1" } } @@ -1139,6 +1171,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "192.168.0.1", "192.168.0.250" ] } @@ -1156,6 +1189,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "10.0.0.0", "10.255.255.255" ] } @@ -1173,6 +1207,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "172.16.0.0", "172.31.255.255" ] } @@ -1190,6 +1225,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "192.168.3.1", "192.168.4.250" ] } @@ -1225,6 +1261,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { "range": [ "192.168.0.1", "192.168.0.250" ] } @@ -1264,6 +1301,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ "192.168.5.1", @@ -1313,6 +1351,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "192.168.1.2", "192.168.1.55" ] } @@ -1348,6 +1387,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "192.168.1.3", "192.168.33.55" ] } @@ -1383,6 +1423,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.0.1" } } @@ -1398,6 +1439,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.0.1" } }, @@ -1416,6 +1458,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.0.2" } } @@ -1478,6 +1521,7 @@ "0xffff0000" ] }, + "op": "==", "right": "0xffff0000" } } @@ -1493,6 +1537,7 @@ "protocol": "ip" } }, + "op": "==", "right": 4 } }, @@ -1504,6 +1549,7 @@ "protocol": "ip" } }, + "op": "==", "right": 5 } } @@ -1519,6 +1565,7 @@ "protocol": "ip" } }, + "op": "==", "right": 0 } } @@ -1534,6 +1581,7 @@ "protocol": "ip" } }, + "op": "==", "right": 15 } } @@ -1579,6 +1627,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1602,6 +1651,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1625,6 +1675,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1648,6 +1699,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1671,6 +1723,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1694,6 +1747,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1717,6 +1771,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1740,6 +1795,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1763,6 +1819,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, diff --git a/tests/py/ip/ip.t.json.output b/tests/py/ip/ip.t.json.output index 0378c00f..b201cdaa 100644 --- a/tests/py/ip/ip.t.json.output +++ b/tests/py/ip/ip.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "cs7" } } @@ -39,6 +40,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ "cs0", @@ -78,6 +80,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } } @@ -109,6 +112,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ 1, @@ -191,6 +195,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "prefix": { "addr": "255.255.0.0", @@ -208,6 +213,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, diff --git a/tests/py/ip/ip_tcp.t.json b/tests/py/ip/ip_tcp.t.json index 15b5f386..3757d6ee 100644 --- a/tests/py/ip/ip_tcp.t.json +++ b/tests/py/ip/ip_tcp.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -19,6 +20,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -34,6 +36,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -53,6 +56,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } diff --git a/tests/py/ip/ip_tcp.t.json.output b/tests/py/ip/ip_tcp.t.json.output index 63cdfe0b..2d671df5 100644 --- a/tests/py/ip/ip_tcp.t.json.output +++ b/tests/py/ip/ip_tcp.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } @@ -23,6 +24,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -42,6 +44,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } } diff --git a/tests/py/ip/masquerade.t.json b/tests/py/ip/masquerade.t.json index 79c80804..4a90c706 100644 --- a/tests/py/ip/masquerade.t.json +++ b/tests/py/ip/masquerade.t.json @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -26,6 +27,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -46,6 +48,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -69,6 +72,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -93,6 +97,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -116,6 +121,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -140,6 +146,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -160,6 +167,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -183,6 +191,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -207,6 +216,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -230,6 +240,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -254,6 +265,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -274,6 +286,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, @@ -296,6 +309,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1, @@ -331,6 +345,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "10.0.0.0", "10.2.3.4" ] } @@ -344,6 +359,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -362,6 +378,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -372,6 +389,7 @@ "key": "state" } }, + "op": "in", "right": [ "established", "new" diff --git a/tests/py/ip/masquerade.t.json.output b/tests/py/ip/masquerade.t.json.output index 8feac1dd..58e7e290 100644 --- a/tests/py/ip/masquerade.t.json.output +++ b/tests/py/ip/masquerade.t.json.output @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -32,6 +33,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -55,6 +57,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -79,6 +82,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -102,6 +106,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, diff --git a/tests/py/ip/meta.t.json b/tests/py/ip/meta.t.json index 59d97187..f873aa88 100644 --- a/tests/py/ip/meta.t.json +++ b/tests/py/ip/meta.t.json @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -20,6 +21,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "icmp" } }, @@ -31,6 +33,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -43,6 +46,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "ipv6-icmp" } }, @@ -54,6 +58,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -66,6 +71,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 58 } }, @@ -77,6 +83,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -92,6 +99,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } diff --git a/tests/py/ip/meta.t.json.output b/tests/py/ip/meta.t.json.output index 93cede88..091282b3 100644 --- a/tests/py/ip/meta.t.json.output +++ b/tests/py/ip/meta.t.json.output @@ -8,6 +8,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -23,6 +24,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -38,6 +40,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } diff --git a/tests/py/ip/objects.t.json b/tests/py/ip/objects.t.json index 953e5570..8e838cf4 100644 --- a/tests/py/ip/objects.t.json +++ b/tests/py/ip/objects.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.1.3" } }, @@ -58,6 +59,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.1.3" } }, @@ -143,6 +145,7 @@ "protocol": "ip" } }, + "op": "==", "right": "192.168.1.3" } }, diff --git a/tests/py/ip/redirect.t.json b/tests/py/ip/redirect.t.json index 7ee3a516..3544e7f1 100644 --- a/tests/py/ip/redirect.t.json +++ b/tests/py/ip/redirect.t.json @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -26,6 +27,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -46,6 +48,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -69,6 +72,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -93,6 +97,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -116,6 +121,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -140,6 +146,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -160,6 +167,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -183,6 +191,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -207,6 +216,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -230,6 +240,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -254,6 +265,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -274,6 +286,7 @@ "protocol": "udp" } }, + "op": "==", "right": 1234 } }, @@ -294,6 +307,7 @@ "protocol": "ip" } }, + "op": "==", "right": "172.16.0.1" } }, @@ -305,6 +319,7 @@ "protocol": "udp" } }, + "op": "==", "right": 9998 } }, @@ -325,6 +340,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 39128 } }, @@ -345,6 +361,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -367,6 +384,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -388,6 +406,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -409,6 +428,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -430,6 +450,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -454,6 +475,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1, @@ -489,6 +511,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "range": [ "10.0.0.0", "10.2.3.4" ] } @@ -502,6 +525,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -520,6 +544,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -530,6 +555,7 @@ "key": "state" } }, + "op": "in", "right": [ "established", "new" @@ -577,6 +603,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, diff --git a/tests/py/ip/redirect.t.json.output b/tests/py/ip/redirect.t.json.output index 2a3398b0..4646c60a 100644 --- a/tests/py/ip/redirect.t.json.output +++ b/tests/py/ip/redirect.t.json.output @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -32,6 +33,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -55,6 +57,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -79,6 +82,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -102,6 +106,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -126,6 +131,7 @@ "protocol": "ip" } }, + "op": "==", "right": 6 } }, diff --git a/tests/py/ip/reject.t.json b/tests/py/ip/reject.t.json index e1886fa3..d120b9f1 100644 --- a/tests/py/ip/reject.t.json +++ b/tests/py/ip/reject.t.json @@ -82,6 +82,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": "0x80000000" } }, diff --git a/tests/py/ip/reject.t.json.output b/tests/py/ip/reject.t.json.output index 6829792c..b2529dd7 100644 --- a/tests/py/ip/reject.t.json.output +++ b/tests/py/ip/reject.t.json.output @@ -12,6 +12,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 2147483648 } }, diff --git a/tests/py/ip/rt.t.json b/tests/py/ip/rt.t.json index 565427cf..41dbe341 100644 --- a/tests/py/ip/rt.t.json +++ b/tests/py/ip/rt.t.json @@ -8,6 +8,7 @@ "key": "nexthop" } }, + "op": "==", "right": "192.168.0.1" } } diff --git a/tests/py/ip/sets.t.json b/tests/py/ip/sets.t.json index 97ea1541..65d2df87 100644 --- a/tests/py/ip/sets.t.json +++ b/tests/py/ip/sets.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "@set1" } }, @@ -45,6 +46,7 @@ "protocol": "ip" } }, + "op": "==", "right": "@set2" } }, @@ -92,6 +94,7 @@ } ] }, + "op": "==", "right": "@set5" } }, @@ -136,6 +139,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ "1.1.1.0", @@ -157,6 +161,7 @@ "protocol": "ip" } }, + "op": "==", "right": { "set": [ { diff --git a/tests/py/ip/snat.t.json b/tests/py/ip/snat.t.json index 9cb85f85..e87b524e 100644 --- a/tests/py/ip/snat.t.json +++ b/tests/py/ip/snat.t.json @@ -5,6 +5,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -16,6 +17,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } @@ -35,6 +37,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -66,6 +69,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -77,6 +81,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 80, @@ -100,6 +105,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -135,6 +141,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, diff --git a/tests/py/ip/snat.t.json.output b/tests/py/ip/snat.t.json.output index 46901ba0..1365316c 100644 --- a/tests/py/ip/snat.t.json.output +++ b/tests/py/ip/snat.t.json.output @@ -5,6 +5,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -16,6 +17,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 23, @@ -39,6 +41,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, diff --git a/tests/py/ip/tcp.t.json b/tests/py/ip/tcp.t.json index 33172f60..d2c09150 100644 --- a/tests/py/ip/tcp.t.json +++ b/tests/py/ip/tcp.t.json @@ -8,6 +8,7 @@ "protocol": "ip" } }, + "op": "==", "right": "tcp" } }, @@ -19,6 +20,7 @@ "protocol": "tcp" } }, + "op": "==", "right": "ssh" } }, @@ -49,6 +51,7 @@ "protocol": "udp" } }, + "op": "==", "right": "ssh" } }, diff --git a/tests/py/ip/tcp.t.json.output b/tests/py/ip/tcp.t.json.output index 9dd51de6..7e898544 100644 --- a/tests/py/ip/tcp.t.json.output +++ b/tests/py/ip/tcp.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -38,6 +39,7 @@ "protocol": "udp" } }, + "op": "==", "right": 22 } }, diff --git a/tests/py/ip/tcpopt.t.json b/tests/py/ip/tcpopt.t.json index 8bb79917..d573dd1c 100644 --- a/tests/py/ip/tcpopt.t.json +++ b/tests/py/ip/tcpopt.t.json @@ -8,6 +8,7 @@ "name": "eol" } }, + "op": "==", "right": 1 } } @@ -23,6 +24,7 @@ "name": "noop" } }, + "op": "==", "right": 1 } } @@ -38,6 +40,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -53,6 +56,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -68,6 +72,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -83,6 +88,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -98,6 +104,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -113,6 +120,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -128,6 +136,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -143,6 +152,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -158,6 +168,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -173,6 +184,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -188,6 +200,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -203,6 +216,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -218,6 +232,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -233,6 +248,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -248,6 +264,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -263,6 +280,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -278,6 +296,7 @@ "name": "sack0" } }, + "op": "==", "right": 1 } } @@ -293,6 +312,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -308,6 +328,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -323,6 +344,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -338,6 +360,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -353,6 +376,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -368,6 +392,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -383,6 +408,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip/tcpopt.t.json.output b/tests/py/ip/tcpopt.t.json.output index ca6714b7..81dd8ad8 100644 --- a/tests/py/ip/tcpopt.t.json.output +++ b/tests/py/ip/tcpopt.t.json.output @@ -8,6 +8,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip6/dnat.t.json b/tests/py/ip6/dnat.t.json index 4139d645..a5c01fd2 100644 --- a/tests/py/ip6/dnat.t.json +++ b/tests/py/ip6/dnat.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } @@ -35,6 +36,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } @@ -60,6 +62,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } diff --git a/tests/py/ip6/dst.t.json b/tests/py/ip6/dst.t.json index aba15b23..1373e177 100644 --- a/tests/py/ip6/dst.t.json +++ b/tests/py/ip6/dst.t.json @@ -8,6 +8,7 @@ "name": "dst" } }, + "op": "==", "right": 22 } } @@ -39,6 +40,7 @@ "name": "dst" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -74,6 +76,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ 33, @@ -119,6 +122,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -158,6 +162,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ "udplite", @@ -213,6 +218,7 @@ "name": "dst" } }, + "op": "==", "right": "icmp" } } @@ -244,6 +250,7 @@ "name": "dst" } }, + "op": "==", "right": 22 } } @@ -275,6 +282,7 @@ "name": "dst" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -310,6 +318,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ 33, @@ -355,6 +364,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip6/dst.t.json.output b/tests/py/ip6/dst.t.json.output index c856ec9a..69d8f685 100644 --- a/tests/py/ip6/dst.t.json.output +++ b/tests/py/ip6/dst.t.json.output @@ -8,6 +8,7 @@ "name": "dst" } }, + "op": "==", "right": { "set": [ 6, @@ -63,6 +64,7 @@ "name": "dst" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip6/ether.t.json b/tests/py/ip6/ether.t.json index 1a349215..5e4b43bc 100644 --- a/tests/py/ip6/ether.t.json +++ b/tests/py/ip6/ether.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -16,6 +17,7 @@ "left": { "meta": { "key": "iiftype" } }, + "op": "==", "right": "ether" } }, @@ -27,6 +29,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1::2" } }, @@ -38,6 +41,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -56,6 +60,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -67,6 +72,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1::2" } }, @@ -78,6 +84,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } } @@ -93,6 +100,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -104,6 +112,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -115,6 +124,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1::2" } } @@ -130,6 +140,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, @@ -141,6 +152,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1::2" } }, diff --git a/tests/py/ip6/ether.t.json.output b/tests/py/ip6/ether.t.json.output index 556ce919..7ace6273 100644 --- a/tests/py/ip6/ether.t.json.output +++ b/tests/py/ip6/ether.t.json.output @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 22 } }, @@ -19,6 +20,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1::2" } }, @@ -30,6 +32,7 @@ "protocol": "ether" } }, + "op": "==", "right": "00:0f:54:0c:11:04" } }, diff --git a/tests/py/ip6/exthdr.t.json b/tests/py/ip6/exthdr.t.json index 8289a39e..4ca77d6c 100644 --- a/tests/py/ip6/exthdr.t.json +++ b/tests/py/ip6/exthdr.t.json @@ -7,6 +7,7 @@ "name": "hbh" } }, + "op": "==", "right": true } } @@ -21,6 +22,7 @@ "name": "rt" } }, + "op": "==", "right": true } } @@ -35,6 +37,7 @@ "name": "frag" } }, + "op": "==", "right": true } } @@ -49,6 +52,7 @@ "name": "dst" } }, + "op": "==", "right": true } } @@ -63,6 +67,7 @@ "name": "mh" } }, + "op": "==", "right": true } } @@ -77,6 +82,7 @@ "name": "hbh" } }, + "op": "==", "right": false } } @@ -151,6 +157,7 @@ "name": "hbh" } }, + "op": "==", "right": 1 } } @@ -165,6 +172,7 @@ "name": "hbh" } }, + "op": "==", "right": 0 } } diff --git a/tests/py/ip6/exthdr.t.json.output b/tests/py/ip6/exthdr.t.json.output index 6bdbae2f..c9f5b49b 100644 --- a/tests/py/ip6/exthdr.t.json.output +++ b/tests/py/ip6/exthdr.t.json.output @@ -7,6 +7,7 @@ "name": "hbh" } }, + "op": "==", "right": true } } @@ -21,6 +22,7 @@ "name": "hbh" } }, + "op": "==", "right": false } } @@ -35,6 +37,7 @@ "name": "hbh" } }, + "op": "==", "right": true } } @@ -49,6 +52,7 @@ "name": "hbh" } }, + "op": "==", "right": false } } diff --git a/tests/py/ip6/frag.t.json b/tests/py/ip6/frag.t.json index abea39dd..b8c06dfb 100644 --- a/tests/py/ip6/frag.t.json +++ b/tests/py/ip6/frag.t.json @@ -8,6 +8,7 @@ "name": "frag" } }, + "op": "==", "right": "tcp" } } @@ -39,6 +40,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ "esp", @@ -92,6 +94,7 @@ "name": "frag" } }, + "op": "==", "right": "esp" } } @@ -107,6 +110,7 @@ "name": "frag" } }, + "op": "==", "right": "ah" } } @@ -122,6 +126,7 @@ "name": "frag" } }, + "op": "==", "right": 22 } } @@ -153,6 +158,7 @@ "name": "frag" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -188,6 +194,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ 33, @@ -233,6 +240,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -272,6 +280,7 @@ "name": "frag" } }, + "op": "==", "right": 22 } } @@ -303,6 +312,7 @@ "name": "frag" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -338,6 +348,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ 33, @@ -383,6 +394,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -422,6 +434,7 @@ "name": "frag" } }, + "op": "==", "right": 1 } } @@ -437,6 +450,7 @@ "name": "frag" } }, + "op": "==", "right": 0 } } @@ -452,6 +466,7 @@ "name": "frag" } }, + "op": "==", "right": 1 } } @@ -467,6 +482,7 @@ "name": "frag" } }, + "op": "==", "right": 1 } } @@ -482,6 +498,7 @@ "name": "frag" } }, + "op": "==", "right": 22 } } @@ -513,6 +530,7 @@ "name": "frag" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -548,6 +566,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ 33, @@ -593,6 +612,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip6/frag.t.json.output b/tests/py/ip6/frag.t.json.output index 12579de5..68d382b3 100644 --- a/tests/py/ip6/frag.t.json.output +++ b/tests/py/ip6/frag.t.json.output @@ -8,6 +8,7 @@ "name": "frag" } }, + "op": "==", "right": 6 } } @@ -39,6 +40,7 @@ "name": "frag" } }, + "op": "==", "right": { "set": [ 6, @@ -92,6 +94,7 @@ "name": "frag" } }, + "op": "==", "right": 50 } } @@ -107,6 +110,7 @@ "name": "frag" } }, + "op": "==", "right": 51 } } diff --git a/tests/py/ip6/hbh.t.json b/tests/py/ip6/hbh.t.json index e8116061..441d3bfe 100644 --- a/tests/py/ip6/hbh.t.json +++ b/tests/py/ip6/hbh.t.json @@ -8,6 +8,7 @@ "name": "hbh" } }, + "op": "==", "right": 22 } } @@ -39,6 +40,7 @@ "name": "hbh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -74,6 +76,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ 33, @@ -119,6 +122,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -158,6 +162,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ "esp", @@ -213,6 +218,7 @@ "name": "hbh" } }, + "op": "==", "right": 22 } } @@ -244,6 +250,7 @@ "name": "hbh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -279,6 +286,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ 33, @@ -324,6 +332,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -363,6 +372,7 @@ "name": "hbh" } }, + "op": "==", "right": "ip" } } diff --git a/tests/py/ip6/hbh.t.json.output b/tests/py/ip6/hbh.t.json.output index 933efbd6..190f0fc6 100644 --- a/tests/py/ip6/hbh.t.json.output +++ b/tests/py/ip6/hbh.t.json.output @@ -8,6 +8,7 @@ "name": "hbh" } }, + "op": "==", "right": { "set": [ 6, 17, 33, 50, 51, 58, 108, 132, 136 ] } @@ -43,6 +44,7 @@ "name": "hbh" } }, + "op": "==", "right": 0 } } diff --git a/tests/py/ip6/icmpv6.t.json b/tests/py/ip6/icmpv6.t.json index c953ee25..73b9277a 100644 --- a/tests/py/ip6/icmpv6.t.json +++ b/tests/py/ip6/icmpv6.t.json @@ -8,6 +8,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "destination-unreachable" } }, @@ -26,6 +27,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "packet-too-big" } }, @@ -44,6 +46,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "time-exceeded" } }, @@ -62,6 +65,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-request" } }, @@ -80,6 +84,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "echo-reply" } }, @@ -98,6 +103,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld-listener-query" } }, @@ -116,6 +122,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld-listener-report" } }, @@ -134,6 +141,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld-listener-done" } }, @@ -152,6 +160,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld-listener-reduction" } }, @@ -170,6 +179,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-solicit" } }, @@ -188,6 +198,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } }, @@ -206,6 +217,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-neighbor-solicit" } }, @@ -224,6 +236,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-neighbor-advert" } }, @@ -242,6 +255,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-redirect" } }, @@ -260,6 +274,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "parameter-problem" } }, @@ -278,6 +293,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "router-renumbering" } }, @@ -296,6 +312,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "ind-neighbor-solicit" } }, @@ -314,6 +331,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "ind-neighbor-advert" } }, @@ -332,6 +350,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld2-listener-report" } }, @@ -350,6 +369,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ "destination-unreachable", @@ -374,6 +394,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ "router-renumbering", @@ -399,6 +420,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ "mld-listener-query", @@ -448,6 +470,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": 4 } } @@ -463,6 +486,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "range": [ 3, 66 ] } @@ -480,6 +504,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 5, @@ -529,6 +554,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 3, 66 ] } @@ -568,6 +594,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": 2222 } }, @@ -605,6 +632,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "range": [ 222, 226 ] } @@ -641,6 +669,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 222, @@ -682,6 +711,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 222, 226 ] } @@ -721,6 +751,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": 22 } } @@ -752,6 +783,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -787,6 +819,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 33, @@ -832,6 +865,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -871,6 +905,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -906,6 +941,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 33, @@ -951,6 +987,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -990,6 +1027,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": 2 } } @@ -1005,6 +1043,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 3, @@ -1031,6 +1070,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ 2, @@ -1072,6 +1112,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "range": [ 2, 4 ] } @@ -1107,6 +1148,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 2, 4 ] } @@ -1146,6 +1188,7 @@ "name": "icmpv6" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -1181,6 +1224,7 @@ "name": "icmpv6" } }, + "op": "==", "right": { "set": [ 33, @@ -1226,6 +1270,7 @@ "name": "icmpv6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip6/icmpv6.t.json.output b/tests/py/ip6/icmpv6.t.json.output index 36f1b04a..472b2ce7 100644 --- a/tests/py/ip6/icmpv6.t.json.output +++ b/tests/py/ip6/icmpv6.t.json.output @@ -8,6 +8,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "mld-listener-done" } }, @@ -26,6 +27,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ "time-exceeded", @@ -51,6 +53,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": { "set": [ "time-exceeded", diff --git a/tests/py/ip6/ip6.t.json b/tests/py/ip6/ip6.t.json index d6acaa3b..f898240f 100644 --- a/tests/py/ip6/ip6.t.json +++ b/tests/py/ip6/ip6.t.json @@ -8,6 +8,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "cs1" } } @@ -39,6 +40,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "0x38" } } @@ -70,6 +72,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ "cs0", @@ -142,6 +145,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 22 } } @@ -173,6 +177,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ 33, @@ -218,6 +223,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -287,6 +293,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 22 } } @@ -318,6 +325,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -353,6 +361,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ 33, @@ -398,6 +407,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ { @@ -439,6 +449,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ "udp", @@ -464,6 +475,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ "esp", @@ -519,6 +531,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "esp" } } @@ -550,6 +563,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 44 ] } @@ -589,6 +603,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "range": [ 33, 44 ] } @@ -624,6 +639,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 1 } } @@ -655,6 +671,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -690,6 +707,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ 33, @@ -735,6 +753,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -774,6 +793,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:1234:1234:1234" } } @@ -789,6 +809,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234:1234:1234:1234:1234:1234" } } @@ -804,6 +825,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234:1234:1234:1234:1234:1234" } } @@ -819,6 +841,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::1234:1234:1234:1234:1234" } } @@ -834,6 +857,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:0:1234:1234:1234:1234:1234" } } @@ -849,6 +873,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234::1234:1234:1234:1234" } } @@ -864,6 +889,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:0:1234:1234:1234" } } @@ -879,6 +905,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234::1234:1234" } } @@ -894,6 +921,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:1234:0:1234" } } @@ -909,6 +937,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:1234:1234::" } } @@ -924,6 +953,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234:1234:1234:1234:1234" } } @@ -939,6 +969,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234:1234:1234:1234:1234" } } @@ -954,6 +985,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::1234:1234:1234:1234" } } @@ -969,6 +1001,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234::1234:1234:1234" } } @@ -984,6 +1017,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234::1234:1234" } } @@ -999,6 +1033,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234::1234" } } @@ -1014,6 +1049,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:1234::" } } @@ -1029,6 +1065,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234:1234:1234:1234" } } @@ -1044,6 +1081,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234:1234:1234:1234" } } @@ -1059,6 +1097,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::1234:1234:1234" } } @@ -1074,6 +1113,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234::1234:1234" } } @@ -1089,6 +1129,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234::1234" } } @@ -1104,6 +1145,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234::" } } @@ -1119,6 +1161,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234:1234:1234" } } @@ -1134,6 +1177,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234:1234:1234" } } @@ -1149,6 +1193,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::1234:1234" } } @@ -1164,6 +1209,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234::1234" } } @@ -1179,6 +1225,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234::" } } @@ -1194,6 +1241,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234:1234" } } @@ -1209,6 +1257,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234:1234" } } @@ -1224,6 +1273,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::1234" } } @@ -1239,6 +1289,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234::" } } @@ -1254,6 +1305,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234:1234" } } @@ -1269,6 +1321,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::1234" } } @@ -1284,6 +1337,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234::" } } @@ -1299,6 +1353,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1234" } } @@ -1314,6 +1369,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234::" } } @@ -1329,6 +1385,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "prefix": { "addr": "::", @@ -1349,6 +1406,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::1" } }, @@ -1360,6 +1418,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::2" } } @@ -1411,6 +1470,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1434,6 +1494,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1457,6 +1518,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1480,6 +1542,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1503,6 +1566,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1526,6 +1590,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1549,6 +1614,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1572,6 +1638,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, @@ -1595,6 +1662,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, diff --git a/tests/py/ip6/ip6.t.json.output b/tests/py/ip6/ip6.t.json.output index 48f28b3d..6c20939f 100644 --- a/tests/py/ip6/ip6.t.json.output +++ b/tests/py/ip6/ip6.t.json.output @@ -8,6 +8,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "cs7" } } @@ -39,6 +40,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ "cs0", @@ -111,6 +113,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ 6, @@ -136,6 +139,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "set": [ 6, 17, 33, 50, 51, 58, 108, 132, 136 ] } @@ -171,6 +175,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 50 } } @@ -202,6 +207,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "0:1234:1234:1234:1234:1234:1234:1234" } } @@ -217,6 +223,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:0:1234:1234:1234:1234:1234:1234" } } @@ -232,6 +239,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:0:1234:1234:1234:1234:1234" } } @@ -247,6 +255,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:0:1234:1234:1234:1234" } } @@ -262,6 +271,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:0:1234:1234" } } @@ -277,6 +287,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "1234:1234:1234:1234:1234:1234:1234:0" } } @@ -292,6 +303,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "::18.52.18.52" } } @@ -343,6 +355,7 @@ "left": { "meta": { "key": "iif" } }, + "op": "==", "right": "lo" } }, diff --git a/tests/py/ip6/masquerade.t.json b/tests/py/ip6/masquerade.t.json index ae006510..824b44f8 100644 --- a/tests/py/ip6/masquerade.t.json +++ b/tests/py/ip6/masquerade.t.json @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -26,6 +27,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -46,6 +48,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -69,6 +72,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -93,6 +97,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -116,6 +121,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -140,6 +146,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -160,6 +167,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -183,6 +191,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -207,6 +216,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -230,6 +240,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -251,6 +262,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 6 } }, @@ -268,6 +280,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 6 } }, @@ -290,6 +303,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1, @@ -325,6 +339,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "range": [ "fe00::1", "fe00::200" ] } @@ -338,6 +353,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -356,6 +372,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -366,6 +383,7 @@ "key": "state" } }, + "op": "in", "right": [ "established", "new" diff --git a/tests/py/ip6/masquerade.t.json.output b/tests/py/ip6/masquerade.t.json.output index 78a75dac..31d0cd9a 100644 --- a/tests/py/ip6/masquerade.t.json.output +++ b/tests/py/ip6/masquerade.t.json.output @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -31,6 +32,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -55,6 +57,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -78,6 +81,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, diff --git a/tests/py/ip6/meta.t.json b/tests/py/ip6/meta.t.json index e3c22353..29cf9fd2 100644 --- a/tests/py/ip6/meta.t.json +++ b/tests/py/ip6/meta.t.json @@ -8,6 +8,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -20,6 +21,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "ipv6-icmp" } }, @@ -31,6 +33,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -43,6 +46,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": "icmp" } }, @@ -54,6 +58,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -66,6 +71,7 @@ "left": { "meta": { "key": "l4proto" } }, + "op": "==", "right": 1 } }, @@ -77,6 +83,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -92,6 +99,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/ip6/meta.t.json.output b/tests/py/ip6/meta.t.json.output index 3ecc4f28..dede9b16 100644 --- a/tests/py/ip6/meta.t.json.output +++ b/tests/py/ip6/meta.t.json.output @@ -8,6 +8,7 @@ "protocol": "icmpv6" } }, + "op": "==", "right": "nd-router-advert" } } @@ -23,6 +24,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } @@ -38,6 +40,7 @@ "protocol": "icmp" } }, + "op": "==", "right": "echo-request" } } diff --git a/tests/py/ip6/mh.t.json b/tests/py/ip6/mh.t.json index 8d60e149..211477d3 100644 --- a/tests/py/ip6/mh.t.json +++ b/tests/py/ip6/mh.t.json @@ -8,6 +8,7 @@ "name": "mh" } }, + "op": "==", "right": 1 } } @@ -39,6 +40,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ "udplite", @@ -94,6 +96,7 @@ "name": "mh" } }, + "op": "==", "right": "icmp" } } @@ -125,6 +128,7 @@ "name": "mh" } }, + "op": "==", "right": 22 } } @@ -156,6 +160,7 @@ "name": "mh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -191,6 +196,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ 33, @@ -236,6 +242,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ { @@ -277,6 +284,7 @@ "name": "mh" } }, + "op": "==", "right": 22 } } @@ -308,6 +316,7 @@ "name": "mh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -343,6 +352,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ 33, @@ -388,6 +398,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -427,6 +438,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ "binding-refresh-request", @@ -458,6 +470,7 @@ "name": "mh" } }, + "op": "==", "right": "home-agent-switch-message" } } @@ -489,6 +502,7 @@ "name": "mh" } }, + "op": "==", "right": 22 } } @@ -520,6 +534,7 @@ "name": "mh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -555,6 +570,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ 33, @@ -600,6 +616,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -639,6 +656,7 @@ "name": "mh" } }, + "op": "==", "right": 22 } } @@ -670,6 +688,7 @@ "name": "mh" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -705,6 +724,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ 33, @@ -750,6 +770,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip6/mh.t.json.output b/tests/py/ip6/mh.t.json.output index e2edf168..a8518047 100644 --- a/tests/py/ip6/mh.t.json.output +++ b/tests/py/ip6/mh.t.json.output @@ -8,6 +8,7 @@ "name": "mh" } }, + "op": "==", "right": { "set": [ 6, @@ -63,6 +64,7 @@ "name": "mh" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip6/redirect.t.json b/tests/py/ip6/redirect.t.json index bd3df47f..0059c7ac 100644 --- a/tests/py/ip6/redirect.t.json +++ b/tests/py/ip6/redirect.t.json @@ -15,6 +15,7 @@ "protocol": "udp" } }, + "op": "==", "right": 954 } }, @@ -33,6 +34,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "fe00::cafe" } }, @@ -54,6 +56,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -74,6 +77,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -97,6 +101,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -121,6 +126,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -144,6 +150,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -168,6 +175,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -188,6 +196,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -211,6 +220,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -235,6 +245,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -258,6 +269,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -282,6 +294,7 @@ "protocol": "udp" } }, + "op": "==", "right": 1234 } }, @@ -302,6 +315,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "fe00::cafe" } }, @@ -313,6 +327,7 @@ "protocol": "udp" } }, + "op": "==", "right": 9998 } }, @@ -333,6 +348,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "tcp" } }, @@ -355,6 +371,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 39128 } }, @@ -375,6 +392,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -396,6 +414,7 @@ "protocol": "tcp" } }, + "op": "==", "right": 9128 } }, @@ -420,6 +439,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "set": [ 1, @@ -455,6 +475,7 @@ "protocol": "ip6" } }, + "op": "==", "right": { "range": [ "fe00::1", "fe00::200" ] } @@ -468,6 +489,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -486,6 +508,7 @@ "left": { "meta": { "key": "iifname" } }, + "op": "==", "right": "eth0" } }, @@ -496,6 +519,7 @@ "key": "state" } }, + "op": "in", "right": [ "established", "new" @@ -543,6 +567,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 6 } }, diff --git a/tests/py/ip6/redirect.t.json.output b/tests/py/ip6/redirect.t.json.output index 6f919ac8..0174cc7d 100644 --- a/tests/py/ip6/redirect.t.json.output +++ b/tests/py/ip6/redirect.t.json.output @@ -8,6 +8,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -32,6 +33,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -55,6 +57,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -79,6 +82,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -102,6 +106,7 @@ "protocol": "udp" } }, + "op": "==", "right": 53 } }, @@ -126,6 +131,7 @@ "protocol": "ip6" } }, + "op": "==", "right": 6 } }, diff --git a/tests/py/ip6/reject.t.json b/tests/py/ip6/reject.t.json index 491b996c..ae57c333 100644 --- a/tests/py/ip6/reject.t.json +++ b/tests/py/ip6/reject.t.json @@ -72,6 +72,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": "0x80000000" } }, diff --git a/tests/py/ip6/reject.t.json.output b/tests/py/ip6/reject.t.json.output index 4f799229..4e2058fe 100644 --- a/tests/py/ip6/reject.t.json.output +++ b/tests/py/ip6/reject.t.json.output @@ -12,6 +12,7 @@ "left": { "meta": { "key": "mark" } }, + "op": "==", "right": 2147483648 } }, diff --git a/tests/py/ip6/rt.t.json b/tests/py/ip6/rt.t.json index ebcdb842..86a46402 100644 --- a/tests/py/ip6/rt.t.json +++ b/tests/py/ip6/rt.t.json @@ -8,6 +8,7 @@ "name": "rt" } }, + "op": "==", "right": 1 } } @@ -39,6 +40,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ "udplite", @@ -94,6 +96,7 @@ "name": "rt" } }, + "op": "==", "right": "icmp" } } @@ -125,6 +128,7 @@ "name": "rt" } }, + "op": "==", "right": 22 } } @@ -156,6 +160,7 @@ "name": "rt" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -191,6 +196,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ 33, @@ -236,6 +242,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -275,6 +282,7 @@ "name": "rt" } }, + "op": "==", "right": 22 } } @@ -306,6 +314,7 @@ "name": "rt" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -341,6 +350,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ 33, @@ -386,6 +396,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -425,6 +436,7 @@ "name": "rt" } }, + "op": "==", "right": 22 } } @@ -456,6 +468,7 @@ "name": "rt" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -491,6 +504,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ 33, @@ -536,6 +550,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } @@ -575,6 +590,7 @@ "name": "rt" } }, + "op": "==", "right": 22 } } @@ -606,6 +622,7 @@ "name": "rt" } }, + "op": "==", "right": { "range": [ 33, 45 ] } @@ -641,6 +658,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ 33, @@ -686,6 +704,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ { "range": [ 33, 55 ] } diff --git a/tests/py/ip6/rt.t.json.output b/tests/py/ip6/rt.t.json.output index b432a7eb..be5db0e0 100644 --- a/tests/py/ip6/rt.t.json.output +++ b/tests/py/ip6/rt.t.json.output @@ -8,6 +8,7 @@ "name": "rt" } }, + "op": "==", "right": { "set": [ 6, @@ -63,6 +64,7 @@ "name": "rt" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip6/rt0.t.json b/tests/py/ip6/rt0.t.json index 33cdebc6..75ff9231 100644 --- a/tests/py/ip6/rt0.t.json +++ b/tests/py/ip6/rt0.t.json @@ -8,6 +8,7 @@ "key": "nexthop" } }, + "op": "==", "right": "fd00::1" } } diff --git a/tests/py/ip6/sets.t.json b/tests/py/ip6/sets.t.json index 4f0d99bf..9a75dd6f 100644 --- a/tests/py/ip6/sets.t.json +++ b/tests/py/ip6/sets.t.json @@ -8,6 +8,7 @@ "protocol": "ip6" } }, + "op": "==", "right": "@set2" } }, @@ -55,6 +56,7 @@ } ] }, + "op": "==", "right": "@set5" } }, diff --git a/tests/py/ip6/snat.t.json b/tests/py/ip6/snat.t.json index b8fed518..58b0980a 100644 --- a/tests/py/ip6/snat.t.json +++ b/tests/py/ip6/snat.t.json @@ -8,6 +8,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } @@ -35,6 +36,7 @@ "protocol": "tcp" } }, + "op": "==", "right": { "range": [ 80, 90 ] } diff --git a/tests/py/ip6/srh.t.json b/tests/py/ip6/srh.t.json index 920ce974..2d16f1cc 100644 --- a/tests/py/ip6/srh.t.json +++ b/tests/py/ip6/srh.t.json @@ -8,6 +8,7 @@ "name": "srh" } }, + "op": "==", "right": 0 } } @@ -23,6 +24,7 @@ "name": "srh" } }, + "op": "==", "right": 127 } } @@ -38,6 +40,7 @@ "name": "srh" } }, + "op": "==", "right": { "set": [ 0, @@ -59,6 +62,7 @@ "name": "srh" } }, + "op": "==", "right": 0 } } @@ -74,6 +78,7 @@ "name": "srh" } }, + "op": "==", "right": 127 } } @@ -89,6 +94,7 @@ "name": "srh" } }, + "op": "==", "right": { "set": [ 0, @@ -110,6 +116,7 @@ "name": "srh" } }, + "op": "==", "right": 0 } } @@ -125,6 +132,7 @@ "name": "srh" } }, + "op": "==", "right": 127 } } @@ -140,6 +148,7 @@ "name": "srh" } }, + "op": "==", "right": { "set": [ 0, @@ -161,6 +170,7 @@ "name": "srh" } }, + "op": "==", "right": "dead::beef" } } @@ -176,6 +186,7 @@ "name": "srh" } }, + "op": "==", "right": "dead::beef" } } diff --git a/tests/py/ip6/srh.t.json.output b/tests/py/ip6/srh.t.json.output index e8646888..f801b81f 100644 --- a/tests/py/ip6/srh.t.json.output +++ b/tests/py/ip6/srh.t.json.output @@ -8,6 +8,7 @@ "name": "srh" } }, + "op": "==", "right": { "set": [ 0, diff --git a/tests/py/ip6/tcpopt.t.json b/tests/py/ip6/tcpopt.t.json index 8bb79917..d573dd1c 100644 --- a/tests/py/ip6/tcpopt.t.json +++ b/tests/py/ip6/tcpopt.t.json @@ -8,6 +8,7 @@ "name": "eol" } }, + "op": "==", "right": 1 } } @@ -23,6 +24,7 @@ "name": "noop" } }, + "op": "==", "right": 1 } } @@ -38,6 +40,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -53,6 +56,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -68,6 +72,7 @@ "name": "maxseg" } }, + "op": "==", "right": 1 } } @@ -83,6 +88,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -98,6 +104,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -113,6 +120,7 @@ "name": "window" } }, + "op": "==", "right": 1 } } @@ -128,6 +136,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -143,6 +152,7 @@ "name": "sack-permitted" } }, + "op": "==", "right": 1 } } @@ -158,6 +168,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -173,6 +184,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -188,6 +200,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -203,6 +216,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -218,6 +232,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -233,6 +248,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -248,6 +264,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -263,6 +280,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } @@ -278,6 +296,7 @@ "name": "sack0" } }, + "op": "==", "right": 1 } } @@ -293,6 +312,7 @@ "name": "sack1" } }, + "op": "==", "right": 1 } } @@ -308,6 +328,7 @@ "name": "sack2" } }, + "op": "==", "right": 1 } } @@ -323,6 +344,7 @@ "name": "sack3" } }, + "op": "==", "right": 1 } } @@ -338,6 +360,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -353,6 +376,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -368,6 +392,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } @@ -383,6 +408,7 @@ "name": "timestamp" } }, + "op": "==", "right": 1 } } diff --git a/tests/py/ip6/tcpopt.t.json.output b/tests/py/ip6/tcpopt.t.json.output index ca6714b7..81dd8ad8 100644 --- a/tests/py/ip6/tcpopt.t.json.output +++ b/tests/py/ip6/tcpopt.t.json.output @@ -8,6 +8,7 @@ "name": "sack" } }, + "op": "==", "right": 1 } } -- cgit v1.2.3