]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
src: use new range expression for != [a,b] intervals
authorPablo Neira Ayuso <pablo@netfilter.org>
Tue, 20 Sep 2016 17:25:25 +0000 (19:25 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 17 Oct 2016 15:55:56 +0000 (17:55 +0200)
Use new range expression in the kernel to fix wrong bytecode generation.
This patch also adjust tests so we don't hit problems there.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
58 files changed:
include/linux/netfilter/nf_tables.h
src/netlink_delinearize.c
src/netlink_linearize.c
tests/py/any/ct.t.payload
tests/py/any/meta.t.payload
tests/py/arp/arp.t.payload
tests/py/arp/arp.t.payload.netdev
tests/py/inet/ah.t.payload.inet
tests/py/inet/ah.t.payload.ip
tests/py/inet/ah.t.payload.ip6
tests/py/inet/ah.t.payload.netdev
tests/py/inet/comp.t.payload.inet
tests/py/inet/comp.t.payload.ip
tests/py/inet/comp.t.payload.ip6
tests/py/inet/comp.t.payload.netdev
tests/py/inet/dccp.t.payload.inet
tests/py/inet/dccp.t.payload.ip
tests/py/inet/dccp.t.payload.ip6
tests/py/inet/dccp.t.payload.netdev
tests/py/inet/esp.t.payload.inet
tests/py/inet/esp.t.payload.ip
tests/py/inet/esp.t.payload.ip6
tests/py/inet/esp.t.payload.netdev
tests/py/inet/sctp.t.payload.inet
tests/py/inet/sctp.t.payload.ip
tests/py/inet/sctp.t.payload.ip6
tests/py/inet/sctp.t.payload.netdev
tests/py/inet/tcp.t.payload.inet
tests/py/inet/tcp.t.payload.ip
tests/py/inet/tcp.t.payload.ip6
tests/py/inet/tcp.t.payload.netdev
tests/py/inet/udp.t.payload.inet
tests/py/inet/udp.t.payload.ip
tests/py/inet/udp.t.payload.ip6
tests/py/inet/udp.t.payload.netdev
tests/py/inet/udplite.t.payload.inet
tests/py/inet/udplite.t.payload.ip
tests/py/inet/udplite.t.payload.ip6
tests/py/inet/udplite.t.payload.netdev
tests/py/ip/dnat.t.payload.ip
tests/py/ip/icmp.t.payload.ip
tests/py/ip/ip.t.payload
tests/py/ip/ip.t.payload.inet
tests/py/ip/ip.t.payload.netdev
tests/py/ip/snat.t.payload
tests/py/ip6/dst.t.payload.inet
tests/py/ip6/dst.t.payload.ip6
tests/py/ip6/frag.t.payload.inet
tests/py/ip6/frag.t.payload.ip6
tests/py/ip6/hbh.t.payload.inet
tests/py/ip6/hbh.t.payload.ip6
tests/py/ip6/icmpv6.t.payload.ip6
tests/py/ip6/ip6.t.payload.inet
tests/py/ip6/ip6.t.payload.ip6
tests/py/ip6/mh.t.payload.inet
tests/py/ip6/mh.t.payload.ip6
tests/py/ip6/rt.t.payload.inet
tests/py/ip6/rt.t.payload.ip6

index 1bec149b2200e5dd54a5da5ad175e4b9fdc1b5f3..b21a844cf5d51a873013cf310df8d02b232aca53 100644 (file)
@@ -546,6 +546,35 @@ enum nft_cmp_attributes {
 };
 #define NFTA_CMP_MAX           (__NFTA_CMP_MAX - 1)
 
+/**
+ * enum nft_range_ops - nf_tables range operator
+ *
+ * @NFT_RANGE_EQ: equal
+ * @NFT_RANGE_NEQ: not equal
+ */
+enum nft_range_ops {
+       NFT_RANGE_EQ,
+       NFT_RANGE_NEQ,
+};
+
+/**
+ * enum nft_range_attributes - nf_tables range expression netlink attributes
+ *
+ * @NFTA_RANGE_SREG: source register of data to compare (NLA_U32: nft_registers)
+ * @NFTA_RANGE_OP: cmp operation (NLA_U32: nft_cmp_ops)
+ * @NFTA_RANGE_FROM_DATA: data range from (NLA_NESTED: nft_data_attributes)
+ * @NFTA_RANGE_TO_DATA: data range to (NLA_NESTED: nft_data_attributes)
+ */
+enum nft_range_attributes {
+       NFTA_RANGE_UNSPEC,
+       NFTA_RANGE_SREG,
+       NFTA_RANGE_OP,
+       NFTA_RANGE_FROM_DATA,
+       NFTA_RANGE_TO_DATA,
+       __NFTA_RANGE_MAX
+};
+#define NFTA_RANGE_MAX         (__NFTA_RANGE_MAX - 1)
+
 enum nft_lookup_flags {
        NFT_LOOKUP_F_INV = (1 << 0),
 };
index 6bb27b6fa2c813099916d9f729dcc0dd111179b5..d8d1d7d7aaa71a2ca62113853e6349e1e11200f9 100644 (file)
@@ -186,6 +186,46 @@ static void netlink_parse_immediate(struct netlink_parse_ctx *ctx,
                netlink_set_register(ctx, dreg, expr);
 }
 
+static enum ops netlink_parse_range_op(const struct nftnl_expr *nle)
+{
+       switch (nftnl_expr_get_u32(nle, NFTNL_EXPR_RANGE_OP)) {
+       case NFT_RANGE_EQ:
+               return OP_EQ;
+       case NFT_RANGE_NEQ:
+               return OP_NEQ;
+       default:
+               return OP_INVALID;
+       }
+}
+
+static void netlink_parse_range(struct netlink_parse_ctx *ctx,
+                               const struct location *loc,
+                               const struct nftnl_expr *nle)
+{
+       struct expr *expr, *left, *right, *from, *to;
+       struct nft_data_delinearize nld;
+       enum nft_registers sreg;
+       enum ops op;
+
+       sreg = netlink_parse_register(nle, NFTNL_EXPR_RANGE_SREG);
+       left = netlink_get_register(ctx, loc, sreg);
+       if (left == NULL)
+               return netlink_error(ctx, loc,
+                                    "Relational expression has no left hand side");
+
+       op = netlink_parse_range_op(nle);
+
+       nld.value = nftnl_expr_get(nle, NFTNL_EXPR_RANGE_FROM_DATA, &nld.len);
+       from = netlink_alloc_value(loc, &nld);
+
+       nld.value = nftnl_expr_get(nle, NFTNL_EXPR_RANGE_TO_DATA, &nld.len);
+       to = netlink_alloc_value(loc, &nld);
+
+       right = range_expr_alloc(loc, from, to);
+       expr = relational_expr_alloc(loc, op, left, right);
+       ctx->stmt = expr_stmt_alloc(loc, expr);
+}
+
 static enum ops netlink_parse_cmp_op(const struct nftnl_expr *nle)
 {
        switch (nftnl_expr_get_u32(nle, NFTNL_EXPR_CMP_OP)) {
@@ -1049,6 +1089,7 @@ static const struct {
        { .name = "counter",    .parse = netlink_parse_counter },
        { .name = "log",        .parse = netlink_parse_log },
        { .name = "limit",      .parse = netlink_parse_limit },
+       { .name = "range",      .parse = netlink_parse_range },
        { .name = "reject",     .parse = netlink_parse_reject },
        { .name = "nat",        .parse = netlink_parse_nat },
        { .name = "masq",       .parse = netlink_parse_masq },
@@ -1363,6 +1404,10 @@ static void __binop_adjust(const struct expr *binop, struct expr *right,
                        }
                }
                break;
+       case EXPR_RANGE:
+               binop_adjust_one(binop, right->left, shift);
+               binop_adjust_one(binop, right->right, shift);
+               break;
        default:
                BUG("unknown expression type %s\n", right->ops->name);
                break;
index 558deb23133c0b716241575b99e477489dd050d0..0072dca091ea1b3626a9fa2c3c81c28994bebf59 100644 (file)
@@ -368,45 +368,41 @@ static void netlink_gen_range(struct netlink_linearize_ctx *ctx,
        sreg = get_register(ctx, expr->left);
        netlink_gen_expr(ctx, expr->left, sreg);
 
-       nle = alloc_nft_expr("cmp");
-       netlink_put_register(nle, NFTNL_EXPR_CMP_SREG, sreg);
        switch (expr->op) {
        case OP_NEQ:
-               nftnl_expr_set_u32(nle, NFTNL_EXPR_CMP_OP,
-                                  netlink_gen_cmp_op(OP_LT));
+               nle = alloc_nft_expr("range");
+               netlink_put_register(nle, NFTNL_EXPR_RANGE_SREG, sreg);
+               nftnl_expr_set_u32(nle, NFTNL_EXPR_RANGE_OP, NFT_RANGE_NEQ);
+               netlink_gen_data(range->left, &nld);
+               nftnl_expr_set(nle, NFTNL_EXPR_RANGE_FROM_DATA,
+                              nld.value, nld.len);
+               netlink_gen_data(range->right, &nld);
+               nftnl_expr_set(nle, NFTNL_EXPR_RANGE_TO_DATA,
+                              nld.value, nld.len);
+               nftnl_rule_add_expr(ctx->nlr, nle);
                break;
        case OP_RANGE:
        case OP_EQ:
+               nle = alloc_nft_expr("cmp");
+               netlink_put_register(nle, NFTNL_EXPR_CMP_SREG, sreg);
                nftnl_expr_set_u32(nle, NFTNL_EXPR_CMP_OP,
                                   netlink_gen_cmp_op(OP_GTE));
-               break;
-       default:
-               BUG("invalid range operation %u\n", expr->op);
-       }
-
-       netlink_gen_data(range->left, &nld);
-       nftnl_expr_set(nle, NFTNL_EXPR_CMP_DATA, nld.value, nld.len);
-       nftnl_rule_add_expr(ctx->nlr, nle);
+               netlink_gen_data(range->left, &nld);
+               nftnl_expr_set(nle, NFTNL_EXPR_CMP_DATA, nld.value, nld.len);
+               nftnl_rule_add_expr(ctx->nlr, nle);
 
-       nle = alloc_nft_expr("cmp");
-       netlink_put_register(nle, NFTNL_EXPR_CMP_SREG, sreg);
-       switch (expr->op) {
-       case OP_NEQ:
-               nftnl_expr_set_u32(nle, NFTNL_EXPR_CMP_OP,
-                                  netlink_gen_cmp_op(OP_GT));
-               break;
-       case OP_RANGE:
-       case OP_EQ:
+               nle = alloc_nft_expr("cmp");
+               netlink_put_register(nle, NFTNL_EXPR_CMP_SREG, sreg);
                nftnl_expr_set_u32(nle, NFTNL_EXPR_CMP_OP,
                                   netlink_gen_cmp_op(OP_LTE));
+               netlink_gen_data(range->right, &nld);
+               nftnl_expr_set(nle, NFTNL_EXPR_CMP_DATA, nld.value, nld.len);
+               nftnl_rule_add_expr(ctx->nlr, nle);
                break;
        default:
                BUG("invalid range operation %u\n", expr->op);
-       }
 
-       netlink_gen_data(range->right, &nld);
-       nftnl_expr_set(nle, NFTNL_EXPR_CMP_DATA, nld.value, nld.len);
-       nftnl_rule_add_expr(ctx->nlr, nle);
+       }
 
        release_register(ctx, expr->left);
 }
index 97f292ea235904054325dcd4d8c1b58e65b05e91..746b75e3f4d0d48909264cd78e6f9e8f3d9fe724 100644 (file)
@@ -155,8 +155,7 @@ ip test-ip4 output
 ip test-ip4 output
   [ ct load mark => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0x32000000 ]
-  [ cmp gt reg 1 0x45000000 ]
+  [ range neq reg 1 0x32000000 0x45000000 ]
 
 # ct mark {0x32, 0x2222, 0x42de3}
 __set%d test-ip4 3
@@ -221,8 +220,7 @@ ip test-ip4 output
 ip test-ip4 output
   [ ct load expiration => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0xe8800000 ]
-  [ cmp gt reg 1 0xc8af0000 ]
+  [ range neq reg 1 0xe8800000 0xc8af0000 ]
 
 # ct expiration {33, 55, 67, 88}
 __set%d test-ip4 3
index 5fff76e21e25d477bfa5ee444c688268323e1cbd..65d1cd42ec8c34782d1b31e769f8730a15661cc0 100644 (file)
@@ -24,8 +24,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load len => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # meta length { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -119,8 +118,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load l4proto => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 2, 1) ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # meta l4proto { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -379,8 +377,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load skuid => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0xd1070000 ]
-  [ cmp gt reg 1 0xd5070000 ]
+  [ range neq reg 1 0xd1070000 0xd5070000 ]
   [ immediate reg 0 accept ]
 
 # meta skuid { 2001-2005} accept
@@ -444,8 +441,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load skgid => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0xd1070000 ]
-  [ cmp gt reg 1 0xd5070000 ]
+  [ range neq reg 1 0xd1070000 0xd5070000 ]
   [ immediate reg 0 accept ]
 
 # meta skgid { 2001-2005} accept
@@ -589,8 +585,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load cpu => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0x01000000 ]
-  [ cmp gt reg 1 0x02000000 ]
+  [ range neq reg 1 0x01000000 0x02000000 ]
 
 # meta cpu { 2,3}
 __set%d test-ip4 3
@@ -728,8 +723,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load cgroup => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0x01001000 ]
-  [ cmp gt reg 1 0x02001000 ]
+  [ range neq reg 1 0x01001000 0x02001000 ]
 
 # meta cgroup {1048577-1048578}
 __set%d test-ip4 7
@@ -825,8 +819,7 @@ ip test-ip4 input
 ip test-ip4 input
   [ meta load priority => reg 1 ]
   [ byteorder reg 1 = hton(reg 1, 4, 4) ]
-  [ cmp lt reg 1 0xdadaadbc ]
-  [ cmp gt reg 1 0xdcdaadbc ]
+  [ range neq reg 1 0xdadaadbc 0xdcdaadbc ]
 
 # meta priority {bcad:dada, bcad:dadc, aaaa:bbbb}
 __set%d test-ip4 3
index 31c3024a4bc77addc282ccc78449665f590178af..5b8f8d5613b79604bd7fbf915df708b4360ac7c0 100644 (file)
@@ -27,8 +27,7 @@ arp test-arp input
 # arp htype != 33-45
 arp test-arp input
   [ payload load 2b @ network header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # arp htype { 33, 55, 67, 88}
 __set%d test-arp 3
@@ -70,8 +69,7 @@ arp test-arp input
 # arp hlen != 33-45
 arp test-arp input
   [ payload load 1b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # arp hlen { 33, 55, 67, 88}
 __set%d test-arp 3
@@ -108,8 +106,7 @@ arp test-arp input
 # arp plen != 33-45
 arp test-arp input
   [ payload load 1b @ network header + 5 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # arp plen { 33, 55, 67, 88}
 __set%d test-arp 3
index a64ebea1d2c1f15d9c6dd41f6263f6fbfc0dec78..5188ed709faa8048f67305743cc7ca002e5230dc 100644 (file)
@@ -39,8 +39,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000608 ]
   [ payload load 2b @ network header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # arp htype { 33, 55, 67, 88}
 __set%d test-netdev 3
@@ -96,8 +95,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000608 ]
   [ payload load 1b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # arp hlen { 33, 55, 67, 88}
 __set%d test-netdev 3
@@ -146,8 +144,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000608 ]
   [ payload load 1b @ network header + 5 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # arp plen { 33, 55, 67, 88}
 __set%d test-netdev 3
index 739386a3bcd3652a8470ea17ac5eb8ef23f3a35a..1e56797f59f5593a8522f67af4cb3c2cf0bfc7ac 100644 (file)
@@ -11,8 +11,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x0000000b ]
-  [ cmp gt reg 1 0x00000017 ]
+  [ range neq reg 1 0x0000000b 0x00000017 ]
 
 # ah hdrlength { 11-23}
 __set%d test-inet 7
@@ -61,8 +60,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ah reserved {23, 100}
 __set%d test-inet 3
@@ -111,8 +109,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # ah spi {111, 122}
 __set%d test-inet 3
@@ -181,6 +178,5 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x17000000 ]
-  [ cmp gt reg 1 0x21000000 ]
+  [ range neq reg 1 0x17000000 0x21000000 ]
 
index b9899488c8963d68023ccc7a0fb25593b56ee829..5ad0041cddd89e63693382c8b11f836a77178dab 100644 (file)
@@ -11,8 +11,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x0000000b ]
-  [ cmp gt reg 1 0x00000017 ]
+  [ range neq reg 1 0x0000000b 0x00000017 ]
 
 # ah hdrlength { 11-23}
 __set%d test-ip4 7
@@ -61,8 +60,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ah reserved {23, 100}
 __set%d test-ip4 3
@@ -111,8 +109,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # ah spi {111, 122}
 __set%d test-ip4 3
@@ -181,6 +178,5 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x17000000 ]
-  [ cmp gt reg 1 0x21000000 ]
+  [ range neq reg 1 0x17000000 0x21000000 ]
 
index 95eae6659ed4c45df8cb13edda2068661823276d..c57a28a84ea320e04bb19bd6f203624e184fb416 100644 (file)
@@ -11,8 +11,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x0000000b ]
-  [ cmp gt reg 1 0x00000017 ]
+  [ range neq reg 1 0x0000000b 0x00000017 ]
 
 # ah hdrlength { 11-23}
 __set%d test-ip6 7
@@ -61,8 +60,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ah reserved {23, 100}
 __set%d test-ip6 3
@@ -111,8 +109,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # ah spi {111, 122}
 __set%d test-ip6 3
@@ -181,6 +178,5 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x17000000 ]
-  [ cmp gt reg 1 0x21000000 ]
+  [ range neq reg 1 0x17000000 0x21000000 ]
 
index 55eea13689b1f12e45b1fbc093a2a8d323d766de..e06811d260e8824a5ec66490a6d1739fb4e087f4 100644 (file)
@@ -11,8 +11,7 @@ netdev test-netdev ingress
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x0000000b ]
-  [ cmp gt reg 1 0x00000017 ]
+  [ range neq reg 1 0x0000000b 0x00000017 ]
 
 # ah hdrlength { 11-23}
 __set%d test-netdev 7
@@ -61,8 +60,7 @@ netdev test-netdev ingress
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ah reserved {23, 100}
 __set%d test-netdev 3
@@ -111,8 +109,7 @@ netdev test-netdev ingress
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # ah spi {111, 122}
 __set%d test-netdev 3
@@ -181,6 +178,5 @@ netdev test-netdev ingress
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000033 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x17000000 ]
-  [ cmp gt reg 1 0x21000000 ]
+  [ range neq reg 1 0x17000000 0x21000000 ]
 
index eff32b7e32f6f2b419624b29f59f743ad12b3a19..cdeba2bd29502f7e4f7a836df97caa4fb556ae73 100644 (file)
@@ -32,8 +32,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000033 ]
-  [ cmp gt reg 1 0x00000045 ]
+  [ range neq reg 1 0x00000033 0x00000045 ]
 
 # comp flags {0x33, 0x55, 0x67, 0x88}
 __set%d test-inet 3
@@ -82,8 +81,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # comp cpi {33, 55, 67, 88}
 __set%d test-inet 3
index b2a8ab402a310587abe0ace40c012b51f8f14b9a..9da8f94d2dba826f5b6fd9263a56b4f76c537d52 100644 (file)
@@ -32,8 +32,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000033 ]
-  [ cmp gt reg 1 0x00000045 ]
+  [ range neq reg 1 0x00000033 0x00000045 ]
 
 # comp flags {0x33, 0x55, 0x67, 0x88}
 __set%d test-ip4 3
@@ -82,8 +81,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # comp cpi {33, 55, 67, 88}
 __set%d test-ip4 3
index f1799987514a6b84ddfe36c28735d30133fd58ca..69a13edebac32d91803a3973fc7723c2d95ef12c 100644 (file)
@@ -32,8 +32,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000033 ]
-  [ cmp gt reg 1 0x00000045 ]
+  [ range neq reg 1 0x00000033 0x00000045 ]
 
 # comp flags {0x33, 0x55, 0x67, 0x88}
 __set%d test-ip6 3
@@ -82,8 +81,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # comp cpi {33, 55, 67, 88}
 __set%d test-ip6 3
index eff32b7e32f6f2b419624b29f59f743ad12b3a19..cdeba2bd29502f7e4f7a836df97caa4fb556ae73 100644 (file)
@@ -32,8 +32,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000033 ]
-  [ cmp gt reg 1 0x00000045 ]
+  [ range neq reg 1 0x00000033 0x00000045 ]
 
 # comp flags {0x33, 0x55, 0x67, 0x88}
 __set%d test-inet 3
@@ -82,8 +81,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x0000006c ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # comp cpi {33, 55, 67, 88}
 __set%d test-inet 3
index f5aacf6886a80b2c0f72ab33801fb15919ce5d34..ccba6d0ec1d376da2899b4d049ce7b6ffa691dff 100644 (file)
@@ -11,8 +11,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000021 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001500 ]
-  [ cmp gt reg 1 0x00002300 ]
+  [ range neq reg 1 0x00001500 0x00002300 ]
 
 # dccp sport {23, 24, 25}
 __set%d test-inet 3
index bda8dfd47ded743e7136cb6a3067ec9a7ad7b004..a02247fd087299f8603c7483d4f6e8c37c7970e5 100644 (file)
@@ -11,8 +11,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000021 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001500 ]
-  [ cmp gt reg 1 0x00002300 ]
+  [ range neq reg 1 0x00001500 0x00002300 ]
 
 # dccp sport {23, 24, 25}
 __set%d test-ip4 3
index f78f9830aacf090a9ed81f8f82540b278ef312ab..c81a3a030dc2042ec61d85455421bdfbf572965f 100644 (file)
@@ -11,8 +11,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000021 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001500 ]
-  [ cmp gt reg 1 0x00002300 ]
+  [ range neq reg 1 0x00001500 0x00002300 ]
 
 # dccp sport {23, 24, 25}
 __set%d test-ip4 3
index abed6b25fe77fa63628895e2d7f317bf8f765b73..abb1fb9da275ce275604ec57651dcdcc73c55922 100644 (file)
@@ -11,8 +11,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000021 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001500 ]
-  [ cmp gt reg 1 0x00002300 ]
+  [ range neq reg 1 0x00001500 0x00002300 ]
 
 # dccp sport {23, 24, 25}
 __set%d test-inet 3
index 5f3a0da9ebfb5fbb5a49a1ebff6b970be383ab0e..d41f76648b974f51a9d104b29504e6a35690c53d 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # esp spi { 100, 102}
 __set%d test-inet 3
@@ -68,8 +67,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x16000000 ]
-  [ cmp gt reg 1 0x18000000 ]
+  [ range neq reg 1 0x16000000 0x18000000 ]
 
 # esp sequence { 22, 24}
 __set%d test-inet 3
index cf526781f05de18c4146c1db48250238856d0054..5de41aebcb9371ccd961a00b85812c1f5656c0ce 100644 (file)
@@ -25,8 +25,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # esp spi { 100, 102}
 __set%d test-ip4 3
@@ -68,8 +67,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x16000000 ]
-  [ cmp gt reg 1 0x18000000 ]
+  [ range neq reg 1 0x16000000 0x18000000 ]
 
 # esp sequence { 22, 24}
 __set%d test-ip4 3
index 982412d2af6e7d1646fe6059a810246d6424c154..0bc2e70c476769cd5015e774e4e43005caf8e176 100644 (file)
@@ -25,8 +25,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # esp spi { 100, 102}
 __set%d test-ip6 3
@@ -68,8 +67,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x16000000 ]
-  [ cmp gt reg 1 0x18000000 ]
+  [ range neq reg 1 0x16000000 0x18000000 ]
 
 # esp sequence { 22, 24}
 __set%d test-ip6 3
index 5f3a0da9ebfb5fbb5a49a1ebff6b970be383ab0e..d41f76648b974f51a9d104b29504e6a35690c53d 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x6f000000 ]
-  [ cmp gt reg 1 0xde000000 ]
+  [ range neq reg 1 0x6f000000 0xde000000 ]
 
 # esp spi { 100, 102}
 __set%d test-inet 3
@@ -68,8 +67,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000032 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x16000000 ]
-  [ cmp gt reg 1 0x18000000 ]
+  [ range neq reg 1 0x16000000 0x18000000 ]
 
 # esp sequence { 22, 24}
 __set%d test-inet 3
index 9c68a8cc90c658aa0a9434f935e4cd5a567fd3f8..bc7fe7ced2b5320dc16ccb1e5c04c5355afdd2ab 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp sport { 23, 24, 25}
 __set%d test-inet 3
@@ -75,8 +74,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp dport { 23, 24, 25}
 __set%d test-inet 3
@@ -125,8 +123,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x20000000 ]
-  [ cmp gt reg 1 0x6f000000 ]
+  [ range neq reg 1 0x20000000 0x6f000000 ]
 
 # sctp checksum { 22, 33, 44}
 __set%d test-inet 3
@@ -175,8 +172,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # sctp vtag {33, 55, 67, 88}
 __set%d test-inet 3
index 6e07a4c5a95e212aeb11eac7405b80e956f4ea74..fa6ea4354165a4521353a990ce795070c35c695f 100644 (file)
@@ -25,8 +25,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp sport { 23, 24, 25}
 __set%d test-ip4 3
@@ -75,8 +74,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp dport { 23, 24, 25}
 __set%d test-ip4 3
@@ -125,8 +123,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x20000000 ]
-  [ cmp gt reg 1 0x6f000000 ]
+  [ range neq reg 1 0x20000000 0x6f000000 ]
 
 # sctp checksum { 22, 33, 44}
 __set%d test-ip4 3
@@ -175,8 +172,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # sctp vtag {33, 55, 67, 88}
 __set%d test-ip4 3
index 579609b7360e00f5f4e544a9f520ebc945c0e822..5d113692be4cb687548c57d8f83a368cc83a78e5 100644 (file)
@@ -25,8 +25,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp sport { 23, 24, 25}
 __set%d test-ip6 3
@@ -75,8 +74,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp dport { 23, 24, 25}
 __set%d test-ip6 3
@@ -125,8 +123,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x20000000 ]
-  [ cmp gt reg 1 0x6f000000 ]
+  [ range neq reg 1 0x20000000 0x6f000000 ]
 
 # sctp checksum { 22, 33, 44}
 __set%d test-ip6 3
@@ -175,8 +172,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # sctp vtag {33, 55, 67, 88}
 __set%d test-ip6 3
index 9c68a8cc90c658aa0a9434f935e4cd5a567fd3f8..bc7fe7ced2b5320dc16ccb1e5c04c5355afdd2ab 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp sport { 23, 24, 25}
 __set%d test-inet 3
@@ -75,8 +74,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002c00 ]
+  [ range neq reg 1 0x00001700 0x00002c00 ]
 
 # sctp dport { 23, 24, 25}
 __set%d test-inet 3
@@ -125,8 +123,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x20000000 ]
-  [ cmp gt reg 1 0x6f000000 ]
+  [ range neq reg 1 0x20000000 0x6f000000 ]
 
 # sctp checksum { 22, 33, 44}
 __set%d test-inet 3
@@ -175,8 +172,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000084 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # sctp vtag {33, 55, 67, 88}
 __set%d test-inet 3
index 9c3fbbf045f9b7112d778eb81c8af3b0b09bd70e..354d013da88488b664d8c6c09acd6a4f0ac7f0ea 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp dport { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -116,8 +115,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp sport { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -217,8 +215,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp sequence { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -275,8 +272,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp ackseq { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -358,8 +354,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 14 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp window { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -408,8 +403,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp checksum { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -466,8 +460,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 18 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp urgptr { 33, 55, 67, 88}
 __set%d test-inet 3
index 75cbe70cce861657f4c2a5a5bd31b957458c3a2c..d70a176a3160ca1cf70141722b6be7364d401457 100644 (file)
@@ -25,8 +25,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp dport { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -116,8 +115,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp sport { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -217,8 +215,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp sequence { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -275,8 +272,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp ackseq { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -358,8 +354,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 14 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp window { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -408,8 +403,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -466,8 +460,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 18 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp urgptr { 33, 55, 67, 88}
 __set%d test-ip4 3
index f65f9b871b862059f560f25dce8803872fdf7fbd..4e9c4135e4e66220684bd0cbf44b01cceb773043 100644 (file)
@@ -25,8 +25,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp dport { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -116,8 +115,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp sport { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -217,8 +215,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp sequence { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -275,8 +272,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp ackseq { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -358,8 +354,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 14 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp window { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -408,8 +403,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp checksum { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -466,8 +460,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 18 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp urgptr { 33, 55, 67, 88}
 __set%d test-ip6 3
index a554d07026e342d7f9550422f0ae61551bd68f21..854f4bbe1f7956a48f1649c67b49c5d667edd5dc 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp dport { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -116,8 +115,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp sport { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -217,8 +215,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp sequence { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -275,8 +272,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 4b @ transport header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # tcp ackseq { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -358,8 +354,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 14 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp window { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -416,8 +411,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp checksum { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -474,8 +468,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 18 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # tcp urgptr { 33, 55, 67, 88}
 __set%d test-inet 3
index a2717f39ec0811f73ddcf844232b204dcd45654c..8fdffbf2573bd83ad86a9e171dece632304ab6f0 100644 (file)
@@ -28,8 +28,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp sport { 49, 50} drop
@@ -83,8 +82,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp dport { 49, 50} drop
@@ -137,8 +135,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00004100 ]
+  [ range neq reg 1 0x00003200 0x00004100 ]
   [ immediate reg 0 accept ]
 
 # udp length { 50, 65} accept
@@ -197,8 +194,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udp checksum { 33, 55, 67, 88}
 __set%d test-inet 3
index 5d36fe5f4d7dba117adeedbe8fcc05ce207f65e4..1d41017b343ee175870ecd1e20055f33454f45a0 100644 (file)
@@ -28,8 +28,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp sport { 49, 50} drop
@@ -83,8 +82,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp dport { 49, 50} drop
@@ -137,8 +135,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00004100 ]
+  [ range neq reg 1 0x00003200 0x00004100 ]
   [ immediate reg 0 accept ]
 
 # udp length { 50, 65} accept
@@ -197,8 +194,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udp checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
index 22aa57ff80772d8e9a884b59ece758111e24c9ef..17b6679f6e2d624186bad3db287984d866394e0f 100644 (file)
@@ -28,8 +28,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp sport { 49, 50} drop
@@ -83,8 +82,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp dport { 49, 50} drop
@@ -137,8 +135,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00004100 ]
+  [ range neq reg 1 0x00003200 0x00004100 ]
   [ immediate reg 0 accept ]
 
 # udp length { 50, 65} accept
@@ -197,8 +194,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udp checksum { 33, 55, 67, 88}
 __set%d test-ip6 3
index 92858cf0b9a1a9c59e8980993975019df5f47493..9e93ae4c71daf9d1b78ec19d040baa42d169bd33 100644 (file)
@@ -28,8 +28,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp sport { 49, 50} drop
@@ -83,8 +82,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udp dport { 49, 50} drop
@@ -137,8 +135,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00004100 ]
+  [ range neq reg 1 0x00003200 0x00004100 ]
   [ immediate reg 0 accept ]
 
 # udp length { 50, 65} accept
@@ -197,8 +194,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000011 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udp checksum { 33, 55, 67, 88}
 __set%d test-inet 3
index 034c62de7d36e25035d210631ba1d01ce6b317da..ad2c970986ab78e5635b725fd64045b6705e825a 100644 (file)
@@ -28,8 +28,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite sport { 49, 50} drop
@@ -83,8 +82,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite dport { 49, 50} drop
@@ -144,8 +142,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udplite checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
index 3da9e5386a7bb23197656f00ae48e4d689e9f5e2..8321c239b8d9f282180a57c6b6ff248fa0796cb7 100644 (file)
@@ -28,8 +28,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite sport { 49, 50} drop
@@ -83,8 +82,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite dport { 49, 50} drop
@@ -144,8 +142,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udplite checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
index 205ea21538533864f764ace69e3aeca43c3e1ae6..dce215dd7adb1aeb44cbe6f9da1a400a022344e8 100644 (file)
@@ -28,8 +28,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite sport { 49, 50} drop
@@ -83,8 +82,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite dport { 49, 50} drop
@@ -144,8 +142,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udplite checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
index 034c62de7d36e25035d210631ba1d01ce6b317da..ad2c970986ab78e5635b725fd64045b6705e825a 100644 (file)
@@ -28,8 +28,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite sport { 49, 50} drop
@@ -83,8 +82,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00003200 ]
-  [ cmp gt reg 1 0x00003c00 ]
+  [ range neq reg 1 0x00003200 0x00003c00 ]
   [ immediate reg 0 accept ]
 
 # udplite dport { 49, 50} drop
@@ -144,8 +142,7 @@ inet test-inet input
   [ meta load l4proto => reg 1 ]
   [ cmp eq reg 1 0x00000088 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # udplite checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
index be382da301151768bc162a2a361d9daa2a646ced..6caa2c156346fb95e6210b41bd27971790ed0c71 100644 (file)
@@ -17,8 +17,7 @@ ip test-ip4 prerouting
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00005000 ]
-  [ cmp gt reg 1 0x00005a00 ]
+  [ range neq reg 1 0x00005000 0x00005a00 ]
   [ immediate reg 1 0x0203a8c0 ]
   [ nat dnat ip addr_min reg 1 addr_max reg 0 ]
 
@@ -43,8 +42,7 @@ ip test-ip4 prerouting
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002200 ]
+  [ range neq reg 1 0x00001700 0x00002200 ]
   [ immediate reg 1 0x0203a8c0 ]
   [ nat dnat ip addr_min reg 1 addr_max reg 0 ]
 
index 32f2685231e9805086623b6e7149d14dacf514f8..c7df75db1f7025d176f4ae3bedc74b6492f42e38 100644 (file)
@@ -142,8 +142,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 1b @ transport header + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x00000037 ]
+  [ range neq reg 1 0x00000021 0x00000037 ]
 
 # icmp code { 33-55}
 __set%d test-ip4 7
@@ -195,8 +194,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00000b00 ]
-  [ cmp gt reg 1 0x00005701 ]
+  [ range neq reg 1 0x00000b00 0x00005701 ]
   [ immediate reg 0 accept ]
 
 # icmp checksum { 11-343} accept
@@ -256,8 +254,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # icmp id { 33-55}
 __set%d test-ip4 7
@@ -306,8 +303,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # icmp sequence { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -381,8 +377,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # icmp mtu { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -431,8 +426,7 @@ ip test-ip4 input
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000001 ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # icmp gateway { 33, 55, 67, 88}
 __set%d test-ip4 3
index 4c7bd7df7a1e3f3daa755bc4eb36651fcb1b2e5e..fade387e568f8a8c413184ae96520a50e760e94d 100644 (file)
@@ -50,8 +50,7 @@ ip test-ip4 input
 # ip length != 333-453
 ip test-ip4 input
   [ payload load 2b @ network header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00004d01 ]
-  [ cmp gt reg 1 0x0000c501 ]
+  [ range neq reg 1 0x00004d01 0x0000c501 ]
 
 # ip length { 333, 553, 673, 838}
 __set%d test-ip4 3
@@ -88,8 +87,7 @@ ip test-ip4 input
 # ip id != 33-45
 ip test-ip4 input
   [ payload load 2b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip id { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -127,8 +125,7 @@ ip test-ip4 input
 # ip frag-off != 33-45
 ip test-ip4 input
   [ payload load 2b @ network header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip frag-off { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -166,8 +163,7 @@ ip test-ip4 input
 # ip ttl != 45-50
 ip test-ip4 input
   [ payload load 1b @ network header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x0000002d ]
-  [ cmp gt reg 1 0x00000032 ]
+  [ range neq reg 1 0x0000002d 0x00000032 ]
 
 # ip ttl {43, 53, 45 }
 __set%d test-ip4 3
@@ -234,8 +230,7 @@ ip test-ip4 input
 # ip checksum != 33-45
 ip test-ip4 input
   [ payload load 2b @ network header + 10 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip checksum { 33, 55, 67, 88}
 __set%d test-ip4 3
@@ -307,8 +302,7 @@ ip test-ip4 input
 # ip daddr != 192.168.0.1-192.168.0.250
 ip test-ip4 input
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0100a8c0 ]
-  [ cmp gt reg 1 0xfa00a8c0 ]
+  [ range neq reg 1 0x0100a8c0 0xfa00a8c0 ]
 
 # ip daddr { 192.168.0.1-192.168.0.250}
 __set%d test-ip4 7
@@ -336,8 +330,7 @@ ip test-ip4 input
 # ip daddr != 192.168.1.2-192.168.1.55
 ip test-ip4 input
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0201a8c0 ]
-  [ cmp gt reg 1 0x3701a8c0 ]
+  [ range neq reg 1 0x0201a8c0 0x3701a8c0 ]
 
 # ip saddr 192.168.1.3-192.168.33.55
 ip test-ip4 input
@@ -348,8 +341,7 @@ ip test-ip4 input
 # ip saddr != 192.168.1.3-192.168.33.55
 ip test-ip4 input
   [ payload load 4b @ network header + 12 => reg 1 ]
-  [ cmp lt reg 1 0x0301a8c0 ]
-  [ cmp gt reg 1 0x3721a8c0 ]
+  [ range neq reg 1 0x0301a8c0 0x3721a8c0 ]
 
 # ip daddr 192.168.0.1
 ip test-ip4 input
index baaf7b358335efa89208b1f0fa37126f7bd9a212..c9469d36cacd4a0b8b43278263828d2830e8253b 100644 (file)
@@ -68,8 +68,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 2b @ network header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00004d01 ]
-  [ cmp gt reg 1 0x0000c501 ]
+  [ range neq reg 1 0x00004d01 0x0000c501 ]
 
 # ip length { 333, 553, 673, 838}
 __set%d test-inet 3
@@ -118,8 +117,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 2b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip id { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -169,8 +167,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 2b @ network header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip frag-off { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -220,8 +217,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 1b @ network header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x0000002d ]
-  [ cmp gt reg 1 0x00000032 ]
+  [ range neq reg 1 0x0000002d 0x00000032 ]
 
 # ip ttl {43, 53, 45 }
 __set%d test-inet 3
@@ -310,8 +306,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 2b @ network header + 10 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip checksum { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -407,8 +402,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0100a8c0 ]
-  [ cmp gt reg 1 0xfa00a8c0 ]
+  [ range neq reg 1 0x0100a8c0 0xfa00a8c0 ]
 
 # ip daddr { 192.168.0.1-192.168.0.250}
 __set%d test-inet 7
@@ -444,8 +438,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0201a8c0 ]
-  [ cmp gt reg 1 0x3701a8c0 ]
+  [ range neq reg 1 0x0201a8c0 0x3701a8c0 ]
 
 # ip saddr 192.168.1.3-192.168.33.55
 inet test-inet input
@@ -460,8 +453,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x00000002 ]
   [ payload load 4b @ network header + 12 => reg 1 ]
-  [ cmp lt reg 1 0x0301a8c0 ]
-  [ cmp gt reg 1 0x3721a8c0 ]
+  [ range neq reg 1 0x0301a8c0 0x3721a8c0 ]
 
 # ip daddr 192.168.0.1
 inet test-inet input
index 2d8f947a445d29a43eada5603b2b8a1894ab4362..6f2c174c70ef67960b35b58f05f652e7d8bf6b3f 100644 (file)
@@ -25,8 +25,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 2b @ network header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00004d01 ]
-  [ cmp gt reg 1 0x0000c501 ]
+  [ range neq reg 1 0x00004d01 0x0000c501 ]
 
 # ip length { 333, 553, 673, 838}
 __set%d test-netdev 3
@@ -75,8 +74,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 2b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip id { 33, 55, 67, 88}
 __set%d test-netdev 3
@@ -126,8 +124,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 2b @ network header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip frag-off { 33, 55, 67, 88}
 __set%d test-netdev 3
@@ -170,8 +167,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 1b @ network header + 8 => reg 1 ]
-  [ cmp lt reg 1 0x0000002d ]
-  [ cmp gt reg 1 0x00000032 ]
+  [ range neq reg 1 0x0000002d 0x00000032 ]
 
 # ip ttl {43, 53, 45 }
 __set%d test-netdev 3
@@ -246,8 +242,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 2b @ network header + 10 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip checksum { 33, 55, 67, 88}
 __set%d test-netdev 3
@@ -336,8 +331,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0100a8c0 ]
-  [ cmp gt reg 1 0xfa00a8c0 ]
+  [ range neq reg 1 0x0100a8c0 0xfa00a8c0 ]
 
 # ip daddr { 192.168.0.1-192.168.0.250}
 __set%d test-netdev 7
@@ -373,8 +367,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 4b @ network header + 16 => reg 1 ]
-  [ cmp lt reg 1 0x0201a8c0 ]
-  [ cmp gt reg 1 0x3701a8c0 ]
+  [ range neq reg 1 0x0201a8c0 0x3701a8c0 ]
 
 # ip saddr 192.168.1.3-192.168.33.55
 netdev test-netdev ingress 
@@ -389,8 +382,7 @@ netdev test-netdev ingress
   [ meta load protocol => reg 1 ]
   [ cmp eq reg 1 0x00000008 ]
   [ payload load 4b @ network header + 12 => reg 1 ]
-  [ cmp lt reg 1 0x0301a8c0 ]
-  [ cmp gt reg 1 0x3721a8c0 ]
+  [ range neq reg 1 0x0301a8c0 0x3721a8c0 ]
 
 # ip daddr 192.168.0.1
 netdev test-netdev ingress 
index bef97a8570990fe88a21a67b06abe8460bceba5f..3d828a38a6bd93d9ee7449bca3b6e268dc5390bc 100644 (file)
@@ -17,8 +17,7 @@ ip test-ip4 postrouting
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00005000 ]
-  [ cmp gt reg 1 0x00005a00 ]
+  [ range neq reg 1 0x00005000 0x00005a00 ]
   [ immediate reg 1 0x0203a8c0 ]
   [ nat snat ip addr_min reg 1 addr_max reg 0 ]
 
@@ -43,8 +42,7 @@ ip test-ip4 postrouting
   [ payload load 1b @ network header + 9 => reg 1 ]
   [ cmp eq reg 1 0x00000006 ]
   [ payload load 2b @ transport header + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00001700 ]
-  [ cmp gt reg 1 0x00002200 ]
+  [ range neq reg 1 0x00001700 0x00002200 ]
   [ immediate reg 1 0x0203a8c0 ]
   [ nat snat ip addr_min reg 1 addr_max reg 0 ]
 
index 15914d968de7bbf4601c2c303060098658a5c0db..62d1c5a134f8208b9d6f741d8acff3ad06075fe8 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 60 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # dst nexthdr { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -99,8 +98,7 @@ ip6 test-ip6 input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 60 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # dst hdrlength { 33, 55, 67, 88}
 __set%d test-ip6 3
index 3f6c8e15b36923605705f93b0f2653e329e8c5d0..c022c7f71613b622f6e37bec806e8a8dd394bf3c 100644 (file)
@@ -17,8 +17,7 @@ ip6 test-ip6 input
 # dst nexthdr != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 60 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # dst nexthdr { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -73,8 +72,7 @@ ip6 test-ip6 input
 # dst hdrlength != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 60 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # dst hdrlength { 33, 55, 67, 88}
 __set%d test-ip6 3
index 387dbd6609671486dc210ed0890ac12407b24cfc..bf57eca22607199247cac969d3c0965e66b70f23 100644 (file)
@@ -63,8 +63,7 @@ inet test-inet output
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 44 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # frag reserved { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -117,8 +116,7 @@ inet test-inet output
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 2b @ 44 + 2 => reg 1 ]
   [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
-  [ cmp lt reg 1 0x00000801 ]
-  [ cmp gt reg 1 0x00006801 ]
+  [ range neq reg 1 0x00000801 0x00006801 ]
 
 # frag frag-off { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -184,8 +182,7 @@ inet test-inet output
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 4b @ 44 + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # frag id { 33, 55, 67, 88}
 __set%d test-inet 3
index 1f279756c070727df22938e4b3f0b044bcf80410..aa27005ebcc06a200d4b59a71ea051b3d4550f3d 100644 (file)
@@ -45,8 +45,7 @@ ip6 test-ip6 output
 # frag reserved != 33-45
 ip6 test-ip6 output
   [ exthdr load 1b @ 44 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # frag reserved { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -87,8 +86,7 @@ ip6 test-ip6 output
 ip6 test-ip6 output
   [ exthdr load 2b @ 44 + 2 => reg 1 ]
   [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
-  [ cmp lt reg 1 0x00000801 ]
-  [ cmp gt reg 1 0x00006801 ]
+  [ range neq reg 1 0x00000801 0x00006801 ]
 
 # frag frag-off { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -138,8 +136,7 @@ ip6 test-ip6 output
 # frag id != 33-45
 ip6 test-ip6 output
   [ exthdr load 4b @ 44 + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # frag id { 33, 55, 67, 88}
 __set%d test-ip6 3
index 5fcd2fde1304568bd2935b53668febf3b8dba675..7e0d079b556b0333afd7bf9f792ab08a0e6221b5 100644 (file)
@@ -25,8 +25,7 @@ inet test-inet filter-input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 0 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # hbh hdrlength {33, 55, 67, 88}
 __set%d test-inet 3
@@ -85,8 +84,7 @@ inet test-inet filter-input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 0 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # hbh nexthdr {33, 55, 67, 88}
 __set%d test-inet 3
index a2b46335a3279f043e0fd5f03e64bcdf0491c239..783fc6acfdad36ba1c83ac262d0533a2ca1be08f 100644 (file)
@@ -17,8 +17,7 @@ ip6 test-ip6 filter-input
 # hbh hdrlength != 33-45
 ip6 test-ip6 filter-input
   [ exthdr load 1b @ 0 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # hbh hdrlength {33, 55, 67, 88}
 __set%d test-ip6 3
@@ -63,8 +62,7 @@ ip6 test-ip6 filter-input
 # hbh nexthdr != 33-45
 ip6 test-ip6 filter-input
   [ exthdr load 1b @ 0 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # hbh nexthdr {33, 55, 67, 88}
 __set%d test-ip6 3
index 4b6f54121c6fec1b8b297c49b412d8d0e7bb5146..822db2d5a2c5622703cf557d042104a6b14cbc76 100644 (file)
@@ -266,8 +266,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x0000003a ]
   [ payload load 4b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x21000000 ]
-  [ cmp gt reg 1 0x2d000000 ]
+  [ range neq reg 1 0x21000000 0x2d000000 ]
 
 # icmpv6 mtu {33, 55, 67, 88}
 __set%d test-ip6 3
@@ -302,8 +301,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x0000003a ]
   [ payload load 2b @ transport header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # icmpv6 id {33, 55, 67, 88}
 __set%d test-ip6 3
@@ -366,8 +364,7 @@ ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
   [ cmp eq reg 1 0x0000003a ]
   [ payload load 2b @ transport header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00000200 ]
-  [ cmp gt reg 1 0x00000400 ]
+  [ range neq reg 1 0x00000200 0x00000400 ]
 
 # icmpv6 sequence { 2-4}
 __set%d test-ip6 7
index f9512154d45dede8036c521068c1c9e2e9bd316f..1aa0f5b6213706e6084019d58ca6642a0e11936d 100644 (file)
@@ -106,8 +106,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ payload load 2b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip6 length { 33-55}
 __set%d test-inet 7
@@ -176,8 +175,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ payload load 1b @ network header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002c ]
+  [ range neq reg 1 0x00000021 0x0000002c ]
 
 # ip6 hoplimit 1
 inet test-inet input
@@ -206,8 +204,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ payload load 1b @ network header + 7 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # ip6 hoplimit {33, 55, 67, 88}
 __set%d test-inet 3
@@ -510,8 +507,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ payload load 16b @ network header + 24 => reg 1 ]
-  [ cmp lt reg 1 0x34120000 0x34123412 0x34123412 0x34123412 ]
-  [ cmp gt reg 1 0x34123412 0x34120000 0x34123412 0x34123412 ]
+  [ range neq reg 1 0x34120000 0x34123412 0x34123412 0x34123412 0x34123412 0x34120000 0x34123412 0x34123412 ]
 
 # iif "lo" ip6 daddr set ::1
 inet test-inet input
index 422fabdb6d6c7a6c71811beae59ba7c87752503d..56ed8bd4e699d82f9019096bb006e3c03e4f9d68 100644 (file)
@@ -80,8 +80,7 @@ ip6 test-ip6 input
 # ip6 length != 33-45
 ip6 test-ip6 input
   [ payload load 2b @ network header + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # ip6 length { 33-55}
 __set%d test-ip6 7
@@ -134,8 +133,7 @@ ip6 test-ip6 input
 # ip6 nexthdr != 33-44
 ip6 test-ip6 input
   [ payload load 1b @ network header + 6 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002c ]
+  [ range neq reg 1 0x00000021 0x0000002c ]
 
 # ip6 hoplimit 1
 ip6 test-ip6 input
@@ -156,8 +154,7 @@ ip6 test-ip6 input
 # ip6 hoplimit != 33-45
 ip6 test-ip6 input
   [ payload load 1b @ network header + 7 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # ip6 hoplimit {33, 55, 67, 88}
 __set%d test-ip6 3
@@ -376,8 +373,7 @@ ip6 test-ip6 input
 # ip6 daddr != ::1234:1234:1234:1234:1234:1234:1234-1234:1234::1234:1234:1234:1234:1234
 ip6 test-ip6 input
   [ payload load 16b @ network header + 24 => reg 1 ]
-  [ cmp lt reg 1 0x34120000 0x34123412 0x34123412 0x34123412 ]
-  [ cmp gt reg 1 0x34123412 0x34120000 0x34123412 0x34123412 ]
+  [ range neq reg 1 0x34120000 0x34123412 0x34123412 0x34123412 0x34123412 0x34120000 0x34123412 0x34123412 ]
 
 # iif "lo" ip6 daddr set ::1
 ip6 test-ip6 input
index 5d0656611d4e08f6958d6ac62a01fdfdf979466a..471af09c8d580f631b3d066b6c0d1f9810d91771 100644 (file)
@@ -63,8 +63,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 135 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh nexthdr { 33, 55, 67, 88 }
 __set%d test-inet 3
@@ -113,8 +112,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 135 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh hdrlength { 33, 55, 67, 88 }
 __set%d test-inet 3
@@ -187,8 +185,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 135 + 3 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh reserved { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -237,8 +234,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 2b @ 135 + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # mh checksum { 33, 55, 67, 88}
 __set%d test-inet 3
index d5366a5441b6500d337c0f2a6b8097a5ea712f1d..7a9aa35a5e9c4a3957913e9d1b037635f0c4644b 100644 (file)
@@ -45,8 +45,7 @@ ip6 test-ip6 input
 # mh nexthdr != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 135 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh nexthdr { 33, 55, 67, 88 }
 __set%d test-ip6 3
@@ -83,8 +82,7 @@ ip6 test-ip6 input
 # mh hdrlength != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 135 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh hdrlength { 33, 55, 67, 88 }
 __set%d test-ip6 3
@@ -139,8 +137,7 @@ ip6 test-ip6 input
 # mh reserved != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 135 + 3 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # mh reserved { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -177,8 +174,7 @@ ip6 test-ip6 input
 # mh checksum != 33-45
 ip6 test-ip6 input
   [ exthdr load 2b @ 135 + 4 => reg 1 ]
-  [ cmp lt reg 1 0x00002100 ]
-  [ cmp gt reg 1 0x00002d00 ]
+  [ range neq reg 1 0x00002100 0x00002d00 ]
 
 # mh checksum { 33, 55, 67, 88}
 __set%d test-ip6 3
index 7d644fb15b1244d854997e4b77511decf26af770..30e29a582f1c1abb2107d57ca984054004ead822 100644 (file)
@@ -63,8 +63,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 43 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt nexthdr { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -113,8 +112,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 43 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt hdrlength { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -163,8 +161,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 43 + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt type { 33, 55, 67, 88}
 __set%d test-inet 3
@@ -213,8 +210,7 @@ inet test-inet input
   [ meta load nfproto => reg 1 ]
   [ cmp eq reg 1 0x0000000a ]
   [ exthdr load 1b @ 43 + 3 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt seg-left { 33, 55, 67, 88}
 __set%d test-inet 3
index 3245725b29961be7aca18f6c28181ac596da8f2d..b96980bec90326a89eeb329c47159de594c7d4a5 100644 (file)
@@ -45,8 +45,7 @@ ip6 test-ip6 input
 # rt nexthdr != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 43 + 0 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt nexthdr { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -83,8 +82,7 @@ ip6 test-ip6 input
 # rt hdrlength != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 43 + 1 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt hdrlength { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -121,8 +119,7 @@ ip6 test-ip6 input
 # rt type != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 43 + 2 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt type { 33, 55, 67, 88}
 __set%d test-ip6 3
@@ -159,8 +156,7 @@ ip6 test-ip6 input
 # rt seg-left != 33-45
 ip6 test-ip6 input
   [ exthdr load 1b @ 43 + 3 => reg 1 ]
-  [ cmp lt reg 1 0x00000021 ]
-  [ cmp gt reg 1 0x0000002d ]
+  [ range neq reg 1 0x00000021 0x0000002d ]
 
 # rt seg-left { 33, 55, 67, 88}
 __set%d test-ip6 3