* [PATCH RESEND nftables v3] exthdr: doc: add support for matching IPv4 options
@ 2019-06-25 0:09 Stephen Suryaputra
2019-06-28 16:46 ` Pablo Neira Ayuso
0 siblings, 1 reply; 2+ messages in thread
From: Stephen Suryaputra @ 2019-06-25 0:09 UTC (permalink / raw)
To: netfilter-devel; +Cc: Stephen Suryaputra
This is the userspace change for the overall changes with this
description:
Add capability to have rules matching IPv4 options. This is developed
mainly to support dropping of IP packets with loose and/or strict source
route route options.
v2: Removed options that aren't supported in the kernel (per Pablo Neira
Ayuso).
v3: Updated ipv6 exthdr payload to match libnftnl changes (feedback from
Pablo Neira Ayuso).
Signed-off-by: Stephen Suryaputra <ssuryaextr@gmail.com>
---
doc/payload-expression.txt | 29 ++++-
include/Makefile.am | 1 +
include/exthdr.h | 1 +
include/ipopt.h | 27 +++++
include/linux/netfilter/nf_tables.h | 2 +
src/Makefile.am | 1 +
src/evaluate.c | 17 +++
src/exthdr.c | 22 +++-
src/ipopt.c | 159 ++++++++++++++++++++++++++++
src/parser_bison.y | 31 ++++++
src/payload.c | 4 +
src/scanner.l | 8 ++
tests/py/ip/ipopt.t | 24 +++++
tests/py/ip/ipopt.t.payload | 150 ++++++++++++++++++++++++++
tests/py/ip6/dst.t.payload.inet | 40 +++----
tests/py/ip6/dst.t.payload.ip6 | 40 +++----
tests/py/ip6/exthdr.t.payload.ip6 | 24 ++---
tests/py/ip6/frag.t.payload.inet | 70 ++++++------
tests/py/ip6/frag.t.payload.ip6 | 70 ++++++------
tests/py/ip6/hbh.t.payload.inet | 40 +++----
tests/py/ip6/hbh.t.payload.ip6 | 40 +++----
tests/py/ip6/mh.t.payload.inet | 82 +++++++-------
tests/py/ip6/mh.t.payload.ip6 | 82 +++++++-------
tests/py/ip6/rt.t.payload.inet | 76 ++++++-------
tests/py/ip6/rt.t.payload.ip6 | 76 ++++++-------
tests/py/ip6/srh.t.payload | 22 ++--
26 files changed, 803 insertions(+), 335 deletions(-)
create mode 100644 include/ipopt.h
create mode 100644 src/ipopt.c
create mode 100644 tests/py/ip/ipopt.t
create mode 100644 tests/py/ip/ipopt.t.payload
diff --git a/doc/payload-expression.txt b/doc/payload-expression.txt
index ebbffe5..b98a607 100644
--- a/doc/payload-expression.txt
+++ b/doc/payload-expression.txt
@@ -506,9 +506,9 @@ input meta iifname enp2s0 arp ptype 0x0800 arp htype 1 arp hlen 6 arp plen 4 @nh
EXTENSION HEADER EXPRESSIONS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Extension header expressions refer to data from variable-sized protocol headers, such as IPv6 extension headers and TCP options.
+Extension header expressions refer to data from variable-sized protocol headers, such as IPv6 extension headers, TCP options and IPv4 options.
-nftables currently supports matching (finding) a given ipv6 extension header or TCP option.
+nftables currently supports matching (finding) a given ipv6 extension header, TCP option or IPv4 option.
[verse]
*hbh* {*nexthdr* | *hdrlength*}
*frag* {*nexthdr* | *frag-off* | *more-fragments* | *id*}
@@ -517,11 +517,13 @@ nftables currently supports matching (finding) a given ipv6 extension header or
*mh* {*nexthdr* | *hdrlength* | *checksum* | *type*}
*srh* {*flags* | *tag* | *sid* | *seg-left*}
*tcp option* {*eol* | *noop* | *maxseg* | *window* | *sack-permitted* | *sack* | *sack0* | *sack1* | *sack2* | *sack3* | *timestamp*} 'tcp_option_field'
+*ip option* { lsrr | ra | rr | ssrr } 'ip_option_field'
The following syntaxes are valid only in a relational expression with boolean type on right-hand side for checking header existence only:
[verse]
*exthdr* {*hbh* | *frag* | *rt* | *dst* | *mh*}
*tcp option* {*eol* | *noop* | *maxseg* | *window* | *sack-permitted* | *sack* | *sack0* | *sack1* | *sack2* | *sack3* | *timestamp*}
+*ip option* { lsrr | ra | rr | ssrr }
.IPv6 extension headers
[options="header"]
@@ -580,6 +582,24 @@ TCP Timestamps |
kind, length, tsval, tsecr
|============================
+.IP Options
+[options="header"]
+|==================
+|Keyword| Description | IP option fields
+|lsrr|
+Loose Source Route |
+type, length, ptr, addr
+|ra|
+Router Alert |
+type, length, value
+|rr|
+Record Route |
+type, length, ptr, addr
+|ssrr|
+Strict Source Route |
+type, length, ptr, addr
+|============================
+
.finding TCP options
--------------------
filter input tcp option sack-permitted kind 1 counter
@@ -590,6 +610,11 @@ filter input tcp option sack-permitted kind 1 counter
ip6 filter input frag more-fragments 1 counter
---------------------------------------
+.finding IP option
+------------------
+filter input ip option lsrr exists counter
+---------------------------------------
+
CONNTRACK EXPRESSIONS
~~~~~~~~~~~~~~~~~~~~~
Conntrack expressions refer to meta data of the connection tracking entry associated with a packet. +
diff --git a/include/Makefile.am b/include/Makefile.am
index 2d77a76..04a4a61 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -7,6 +7,7 @@ noinst_HEADERS = cli.h \
expression.h \
fib.h \
hash.h \
+ ipopt.h \
json.h \
mini-gmp.h \
gmputil.h \
diff --git a/include/exthdr.h b/include/exthdr.h
index 32f99c9..3959a65 100644
--- a/include/exthdr.h
+++ b/include/exthdr.h
@@ -3,6 +3,7 @@
#include <proto.h>
#include <tcpopt.h>
+#include <ipopt.h>
/**
* struct exthdr_desc - extension header description
diff --git a/include/ipopt.h b/include/ipopt.h
new file mode 100644
index 0000000..20710c3
--- /dev/null
+++ b/include/ipopt.h
@@ -0,0 +1,27 @@
+#ifndef NFTABLES_IPOPT_H
+#define NFTABLES_IPOPT_H
+
+#include <proto.h>
+#include <exthdr.h>
+#include <statement.h>
+
+extern struct expr *ipopt_expr_alloc(const struct location *loc,
+ uint8_t type, uint8_t field, uint8_t ptr);
+
+extern void ipopt_init_raw(struct expr *expr, uint8_t type,
+ unsigned int offset, unsigned int len,
+ uint32_t flags, bool set_unknown);
+
+extern bool ipopt_find_template(struct expr *expr, unsigned int offset,
+ unsigned int len);
+
+enum ipopt_fields {
+ IPOPT_FIELD_INVALID,
+ IPOPT_FIELD_TYPE,
+ IPOPT_FIELD_LENGTH,
+ IPOPT_FIELD_VALUE,
+ IPOPT_FIELD_PTR,
+ IPOPT_FIELD_ADDR_0,
+};
+
+#endif /* NFTABLES_IPOPT_H */
diff --git a/include/linux/netfilter/nf_tables.h b/include/linux/netfilter/nf_tables.h
index 7bdb234..393bcb5 100644
--- a/include/linux/netfilter/nf_tables.h
+++ b/include/linux/netfilter/nf_tables.h
@@ -730,10 +730,12 @@ enum nft_exthdr_flags {
*
* @NFT_EXTHDR_OP_IPV6: match against ipv6 extension headers
* @NFT_EXTHDR_OP_TCP: match against tcp options
+ * @NFT_EXTHDR_OP_IPV4: match against ip options
*/
enum nft_exthdr_op {
NFT_EXTHDR_OP_IPV6,
NFT_EXTHDR_OP_TCPOPT,
+ NFT_EXTHDR_OP_IPV4,
__NFT_EXTHDR_OP_MAX
};
#define NFT_EXTHDR_OP_MAX (__NFT_EXTHDR_OP_MAX - 1)
diff --git a/src/Makefile.am b/src/Makefile.am
index fd64175..f4f8d83 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -62,6 +62,7 @@ libnftables_la_SOURCES = \
nfnl_osf.c \
tcpopt.c \
socket.c \
+ ipopt.c \
libnftables.c
# yacc and lex generate dirty code
diff --git a/src/evaluate.c b/src/evaluate.c
index 19c2d4c..8086f75 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -513,6 +513,20 @@ static int __expr_evaluate_exthdr(struct eval_ctx *ctx, struct expr **exprp)
totlen, max_tcpoptlen);
break;
}
+ case NFT_EXTHDR_OP_IPV4: {
+ static const unsigned int max_ipoptlen = 40 * BITS_PER_BYTE;
+ unsigned int totlen = 0;
+
+ totlen += expr->exthdr.tmpl->offset;
+ totlen += expr->exthdr.tmpl->len;
+ totlen += expr->exthdr.offset;
+
+ if (totlen > max_ipoptlen)
+ return expr_error(ctx->msgs, expr,
+ "offset and size %u exceeds max ip option len (%u)",
+ totlen, max_ipoptlen);
+ break;
+ }
default:
break;
}
@@ -537,6 +551,9 @@ static int expr_evaluate_exthdr(struct eval_ctx *ctx, struct expr **exprp)
dependency = &proto_tcp;
pb = PROTO_BASE_TRANSPORT_HDR;
break;
+ case NFT_EXTHDR_OP_IPV4:
+ dependency = &proto_ip;
+ break;
case NFT_EXTHDR_OP_IPV6:
default:
dependency = &proto_ip6;
diff --git a/src/exthdr.c b/src/exthdr.c
index c9c2bf5..e1ec6f3 100644
--- a/src/exthdr.c
+++ b/src/exthdr.c
@@ -38,6 +38,11 @@ static void exthdr_expr_print(const struct expr *expr, struct output_ctx *octx)
if (offset)
nft_print(octx, "%d", offset);
nft_print(octx, " %s", expr->exthdr.tmpl->token);
+ } else if (expr->exthdr.op == NFT_EXTHDR_OP_IPV4) {
+ nft_print(octx, "ip option %s", expr->exthdr.desc->name);
+ if (expr->exthdr.flags & NFT_EXTHDR_F_PRESENT)
+ return;
+ nft_print(octx, " %s", expr->exthdr.tmpl->token);
} else {
if (expr->exthdr.flags & NFT_EXTHDR_F_PRESENT)
nft_print(octx, "exthdr %s", expr->exthdr.desc->name);
@@ -172,6 +177,8 @@ void exthdr_init_raw(struct expr *expr, uint8_t type,
assert(expr->etype == EXPR_EXTHDR);
if (op == NFT_EXTHDR_OP_TCPOPT)
return tcpopt_init_raw(expr, type, offset, len, flags);
+ if (op == NFT_EXTHDR_OP_IPV4)
+ return ipopt_init_raw(expr, type, offset, len, flags, true);
expr->len = len;
expr->exthdr.flags = flags;
@@ -222,7 +229,8 @@ bool exthdr_find_template(struct expr *expr, const struct expr *mask, unsigned i
{
unsigned int off, mask_offset, mask_len;
- if (expr->exthdr.tmpl != &exthdr_unknown_template)
+ if (expr->exthdr.op != NFT_EXTHDR_OP_IPV4 &&
+ expr->exthdr.tmpl != &exthdr_unknown_template)
return false;
/* In case we are handling tcp options instead of the default ipv6
@@ -237,8 +245,18 @@ bool exthdr_find_template(struct expr *expr, const struct expr *mask, unsigned i
off = expr->exthdr.offset;
off += round_up(mask->len, BITS_PER_BYTE) - mask_len;
+ /* Handle ip options after the offset and mask have been calculated. */
+ if (expr->exthdr.op == NFT_EXTHDR_OP_IPV4) {
+ if (ipopt_find_template(expr, off, mask_len - mask_offset)) {
+ *shift = mask_offset;
+ return true;
+ } else {
+ return false;
+ }
+ }
+
exthdr_init_raw(expr, expr->exthdr.desc->type,
- off, mask_len - mask_offset, NFT_EXTHDR_OP_IPV6, 0);
+ off, mask_len - mask_offset, expr->exthdr.op, 0);
/* still failed to find a template... Bug. */
if (expr->exthdr.tmpl == &exthdr_unknown_template)
diff --git a/src/ipopt.c b/src/ipopt.c
new file mode 100644
index 0000000..f67a56f
--- /dev/null
+++ b/src/ipopt.c
@@ -0,0 +1,159 @@
+#include <stdint.h>
+
+#include <netinet/in.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/tcp.h>
+
+#include <utils.h>
+#include <headers.h>
+#include <expression.h>
+#include <ipopt.h>
+
+static const struct proto_hdr_template ipopt_unknown_template =
+ PROTO_HDR_TEMPLATE("unknown", &invalid_type, BYTEORDER_INVALID, 0, 0);
+
+#define PHT(__token, __offset, __len) \
+ PROTO_HDR_TEMPLATE(__token, &integer_type, BYTEORDER_BIG_ENDIAN, \
+ __offset, __len)
+static const struct exthdr_desc ipopt_lsrr = {
+ .name = "lsrr",
+ .type = IPOPT_LSRR,
+ .templates = {
+ [IPOPT_FIELD_TYPE] = PHT("type", 0, 8),
+ [IPOPT_FIELD_LENGTH] = PHT("length", 8, 8),
+ [IPOPT_FIELD_PTR] = PHT("ptr", 16, 8),
+ [IPOPT_FIELD_ADDR_0] = PHT("addr", 24, 32),
+ },
+};
+
+static const struct exthdr_desc ipopt_rr = {
+ .name = "rr",
+ .type = IPOPT_RR,
+ .templates = {
+ [IPOPT_FIELD_TYPE] = PHT("type", 0, 8),
+ [IPOPT_FIELD_LENGTH] = PHT("length", 8, 8),
+ [IPOPT_FIELD_PTR] = PHT("ptr", 16, 8),
+ [IPOPT_FIELD_ADDR_0] = PHT("addr", 24, 32),
+ },
+};
+
+static const struct exthdr_desc ipopt_ssrr = {
+ .name = "ssrr",
+ .type = IPOPT_SSRR,
+ .templates = {
+ [IPOPT_FIELD_TYPE] = PHT("type", 0, 8),
+ [IPOPT_FIELD_LENGTH] = PHT("length", 8, 8),
+ [IPOPT_FIELD_PTR] = PHT("ptr", 16, 8),
+ [IPOPT_FIELD_ADDR_0] = PHT("addr", 24, 32),
+ },
+};
+
+static const struct exthdr_desc ipopt_ra = {
+ .name = "ra",
+ .type = IPOPT_RA,
+ .templates = {
+ [IPOPT_FIELD_TYPE] = PHT("type", 0, 8),
+ [IPOPT_FIELD_LENGTH] = PHT("length", 8, 8),
+ [IPOPT_FIELD_VALUE] = PHT("value", 16, 16),
+ },
+};
+
+static const struct exthdr_desc *ipopt_protocols[] = {
+ [IPOPT_LSRR] = &ipopt_lsrr,
+ [IPOPT_RR] = &ipopt_rr,
+ [IPOPT_SSRR] = &ipopt_ssrr,
+ [IPOPT_RA] = &ipopt_ra,
+};
+
+static unsigned int calc_offset(const struct exthdr_desc *desc,
+ const struct proto_hdr_template *tmpl,
+ unsigned int arg)
+{
+ if (!desc || tmpl == &ipopt_unknown_template)
+ return 0;
+
+ switch (desc->type) {
+ case IPOPT_RR:
+ case IPOPT_LSRR:
+ case IPOPT_SSRR:
+ if (tmpl == &desc->templates[IPOPT_FIELD_ADDR_0])
+ return (tmpl->offset < 24) ? 0 : arg;
+ return 0;
+ default:
+ return 0;
+ }
+}
+
+struct expr *ipopt_expr_alloc(const struct location *loc, uint8_t type,
+ uint8_t field, uint8_t ptr)
+{
+ const struct proto_hdr_template *tmpl;
+ const struct exthdr_desc *desc;
+ struct expr *expr;
+
+ desc = ipopt_protocols[type];
+ tmpl = &desc->templates[field];
+ if (!tmpl)
+ return NULL;
+
+ expr = expr_alloc(loc, EXPR_EXTHDR, tmpl->dtype,
+ BYTEORDER_BIG_ENDIAN, tmpl->len);
+ expr->exthdr.desc = desc;
+ expr->exthdr.tmpl = tmpl;
+ expr->exthdr.op = NFT_EXTHDR_OP_IPV4;
+ expr->exthdr.offset = calc_offset(desc, tmpl, ptr);
+
+ return expr;
+}
+
+void ipopt_init_raw(struct expr *expr, uint8_t type, unsigned int offset,
+ unsigned int len, uint32_t flags, bool set_unknown)
+{
+ const struct proto_hdr_template *tmpl;
+ unsigned int i;
+
+ assert(expr->etype == EXPR_EXTHDR);
+
+ expr->len = len;
+ expr->exthdr.flags = flags;
+ expr->exthdr.offset = offset;
+
+ assert(type < array_size(ipopt_protocols));
+ expr->exthdr.desc = ipopt_protocols[type];
+ expr->exthdr.flags = flags;
+
+ for (i = 0; i < array_size(expr->exthdr.desc->templates); ++i) {
+ tmpl = &expr->exthdr.desc->templates[i];
+
+ /* Make sure that it's the right template based on offset and len */
+ if (tmpl->offset != offset || tmpl->len != len)
+ continue;
+
+ if (flags & NFT_EXTHDR_F_PRESENT)
+ expr->dtype = &boolean_type;
+ else
+ expr->dtype = tmpl->dtype;
+ expr->exthdr.tmpl = tmpl;
+ expr->exthdr.op = NFT_EXTHDR_OP_IPV4;
+ break;
+ }
+ if (i == array_size(expr->exthdr.desc->templates) && set_unknown) {
+ expr->exthdr.tmpl = &ipopt_unknown_template;
+ expr->exthdr.op = NFT_EXTHDR_OP_IPV4;
+ }
+}
+
+bool ipopt_find_template(struct expr *expr, unsigned int offset,
+ unsigned int len)
+{
+ if (expr->exthdr.tmpl != &ipopt_unknown_template)
+ return false;
+
+ ipopt_init_raw(expr, expr->exthdr.desc->type, offset, len, 0, false);
+
+ if (expr->exthdr.tmpl == &ipopt_unknown_template)
+ return false;
+
+ return true;
+}
diff --git a/src/parser_bison.y b/src/parser_bison.y
index 670e91f..f518a24 100644
--- a/src/parser_bison.y
+++ b/src/parser_bison.y
@@ -308,6 +308,14 @@ int nft_lex(void *, void *, void *);
%token PROTOCOL "protocol"
%token CHECKSUM "checksum"
+%token PTR "ptr"
+%token VALUE "value"
+
+%token LSRR "lsrr"
+%token RR "rr"
+%token SSRR "ssrr"
+%token RA "ra"
+
%token ICMP "icmp"
%token CODE "code"
%token SEQUENCE "seq"
@@ -697,6 +705,7 @@ int nft_lex(void *, void *, void *);
%type <expr> ip_hdr_expr icmp_hdr_expr igmp_hdr_expr numgen_expr hash_expr
%destructor { expr_free($$); } ip_hdr_expr icmp_hdr_expr igmp_hdr_expr numgen_expr hash_expr
%type <val> ip_hdr_field icmp_hdr_field igmp_hdr_field
+%type <val> ip_option_type ip_option_field
%type <expr> ip6_hdr_expr icmp6_hdr_expr
%destructor { expr_free($$); } ip6_hdr_expr icmp6_hdr_expr
%type <val> ip6_hdr_field icmp6_hdr_field
@@ -4244,6 +4253,15 @@ ip_hdr_expr : IP ip_hdr_field
{
$$ = payload_expr_alloc(&@$, &proto_ip, $2);
}
+ | IP OPTION ip_option_type ip_option_field
+ {
+ $$ = ipopt_expr_alloc(&@$, $3, $4, 0);
+ }
+ | IP OPTION ip_option_type
+ {
+ $$ = ipopt_expr_alloc(&@$, $3, IPOPT_FIELD_TYPE, 0);
+ $$->exthdr.flags = NFT_EXTHDR_F_PRESENT;
+ }
;
ip_hdr_field : HDRVERSION { $$ = IPHDR_VERSION; }
@@ -4260,6 +4278,19 @@ ip_hdr_field : HDRVERSION { $$ = IPHDR_VERSION; }
| DADDR { $$ = IPHDR_DADDR; }
;
+ip_option_type : LSRR { $$ = IPOPT_LSRR; }
+ | RR { $$ = IPOPT_RR; }
+ | SSRR { $$ = IPOPT_SSRR; }
+ | RA { $$ = IPOPT_RA; }
+ ;
+
+ip_option_field : TYPE { $$ = IPOPT_FIELD_TYPE; }
+ | LENGTH { $$ = IPOPT_FIELD_LENGTH; }
+ | VALUE { $$ = IPOPT_FIELD_VALUE; }
+ | PTR { $$ = IPOPT_FIELD_PTR; }
+ | ADDR { $$ = IPOPT_FIELD_ADDR_0; }
+ ;
+
icmp_hdr_expr : ICMP icmp_hdr_field
{
$$ = payload_expr_alloc(&@$, &proto_icmp, $2);
diff --git a/src/payload.c b/src/payload.c
index 7e4f935..3bf1ecc 100644
--- a/src/payload.c
+++ b/src/payload.c
@@ -542,6 +542,10 @@ void exthdr_dependency_kill(struct payload_dep_ctx *ctx, struct expr *expr,
if (payload_dependency_exists(ctx, PROTO_BASE_NETWORK_HDR))
payload_dependency_release(ctx);
break;
+ case NFT_EXTHDR_OP_IPV4:
+ if (payload_dependency_exists(ctx, PROTO_BASE_NETWORK_HDR))
+ payload_dependency_release(ctx);
+ break;
default:
break;
}
diff --git a/src/scanner.l b/src/scanner.l
index d1f6e87..2cd3253 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -401,6 +401,14 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
"protocol" { return PROTOCOL; }
"checksum" { return CHECKSUM; }
+"lsrr" { return LSRR; }
+"rr" { return RR; }
+"ssrr" { return SSRR; }
+"ra" { return RA; }
+
+"value" { return VALUE; }
+"ptr" { return PTR; }
+
"echo" { return ECHO; }
"eol" { return EOL; }
"maxseg" { return MAXSEG; }
diff --git a/tests/py/ip/ipopt.t b/tests/py/ip/ipopt.t
new file mode 100644
index 0000000..161fcc4
--- /dev/null
+++ b/tests/py/ip/ipopt.t
@@ -0,0 +1,24 @@
+:input;type filter hook input priority 0
+
+*ip;test-ipopt;input
+
+ip option lsrr type 1;ok
+ip option lsrr length 1;ok
+ip option lsrr ptr 1;ok
+ip option lsrr addr 1;ok
+ip option rr type 1;ok
+ip option rr length 1;ok
+ip option rr ptr 1;ok
+ip option rr addr 1;ok
+ip option ssrr type 1;ok
+ip option ssrr length 1;ok
+ip option ssrr ptr 1;ok
+ip option ssrr addr 1;ok
+ip option ra type 1;ok
+ip option ra length 1;ok
+ip option ra value 1;ok
+
+ip option foobar;fail
+ip option foo bar;fail
+ip option lsrr type;fail
+ip option lsrr flag 1;fail
diff --git a/tests/py/ip/ipopt.t.payload b/tests/py/ip/ipopt.t.payload
new file mode 100644
index 0000000..7be197f
--- /dev/null
+++ b/tests/py/ip/ipopt.t.payload
@@ -0,0 +1,150 @@
+# ip option lsrr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 131 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option rr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 7 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option ssrr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 137 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option ra type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 148 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ra length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 148 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ra value 1
+ip test-ipopt input
+ [ exthdr load ipv4 2b @ 148 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000100 ]
+
+# ip option lsrr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 131 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option lsrr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 131 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option rr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 7 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option rr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 7 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option ssrr type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr ptr 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 137 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ssrr addr 1
+ip test-ipopt input
+ [ exthdr load ipv4 4b @ 137 + 3 => reg 1 ]
+ [ cmp eq reg 1 0x01000000 ]
+
+# ip option ra type 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 148 + 0 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ra length 1
+ip test-ipopt input
+ [ exthdr load ipv4 1b @ 148 + 1 => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+
+# ip option ra value 1
+ip test-ipopt input
+ [ exthdr load ipv4 2b @ 148 + 2 => reg 1 ]
+ [ cmp eq reg 1 0x00000100 ]
+
diff --git a/tests/py/ip6/dst.t.payload.inet b/tests/py/ip6/dst.t.payload.inet
index 768b4f1..ff22237 100644
--- a/tests/py/ip6/dst.t.payload.inet
+++ b/tests/py/ip6/dst.t.payload.inet
@@ -2,21 +2,21 @@
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# dst nexthdr != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# dst nexthdr 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -24,7 +24,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# dst nexthdr { 33, 55, 67, 88}
@@ -34,7 +34,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { 33, 55, 67, 88}
@@ -44,7 +44,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr { 33-55}
@@ -54,7 +54,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { 33-55}
@@ -64,7 +64,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -74,7 +74,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -84,42 +84,42 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr icmp
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# dst nexthdr != icmp
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# dst hdrlength 22
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# dst hdrlength != 233
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# dst hdrlength 33-45
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -127,7 +127,7 @@ ip6 test-ip6 input
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# dst hdrlength { 33, 55, 67, 88}
@@ -137,7 +137,7 @@ __set%d test-ip6 0
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst hdrlength != { 33, 55, 67, 88}
@@ -147,7 +147,7 @@ __set%d test-ip6 0
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst hdrlength { 33-55}
@@ -157,7 +157,7 @@ __set%d test-ip6 0
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst hdrlength != { 33-55}
@@ -167,6 +167,6 @@ __set%d test-ip6 0
ip6 test-ip6 input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/dst.t.payload.ip6 b/tests/py/ip6/dst.t.payload.ip6
index 56afc12..9bf564c 100644
--- a/tests/py/ip6/dst.t.payload.ip6
+++ b/tests/py/ip6/dst.t.payload.ip6
@@ -1,22 +1,22 @@
# dst nexthdr 22
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# dst nexthdr != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# dst nexthdr 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# dst nexthdr != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# dst nexthdr { 33, 55, 67, 88}
@@ -24,7 +24,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { 33, 55, 67, 88}
@@ -32,7 +32,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr { 33-55}
@@ -40,7 +40,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { 33-55}
@@ -48,7 +48,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -56,7 +56,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst nexthdr != { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -64,38 +64,38 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst nexthdr icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# dst nexthdr != icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# dst hdrlength 22
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# dst hdrlength != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# dst hdrlength 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# dst hdrlength != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# dst hdrlength { 33, 55, 67, 88}
@@ -103,7 +103,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst hdrlength != { 33, 55, 67, 88}
@@ -111,7 +111,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# dst hdrlength { 33-55}
@@ -119,7 +119,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# dst hdrlength != { 33-55}
@@ -127,7 +127,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/exthdr.t.payload.ip6 b/tests/py/ip6/exthdr.t.payload.ip6
index 3b6bb62..be10d61 100644
--- a/tests/py/ip6/exthdr.t.payload.ip6
+++ b/tests/py/ip6/exthdr.t.payload.ip6
@@ -1,60 +1,60 @@
# exthdr hbh exists
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr rt exists
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr frag exists
ip6 test-ip6 input
- [ exthdr load 1b @ 44 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr dst exists
ip6 test-ip6 input
- [ exthdr load 1b @ 60 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 60 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr mh exists
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr hbh missing
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# exthdr hbh == exists
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr hbh == missing
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# exthdr hbh != exists
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# exthdr hbh != missing
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp neq reg 1 0x00000000 ]
# exthdr hbh 1
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# exthdr hbh 0
ip6 test-ip6 input
- [ exthdr load 1b @ 0 + 0 present => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 present => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
diff --git a/tests/py/ip6/frag.t.payload.inet b/tests/py/ip6/frag.t.payload.inet
index 0630533..ef44f1a 100644
--- a/tests/py/ip6/frag.t.payload.inet
+++ b/tests/py/ip6/frag.t.payload.inet
@@ -2,14 +2,14 @@
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000006 ]
# frag nexthdr != icmp
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# frag nexthdr {esp, ah, comp, udp, udplite, tcp, dccp, sctp}
@@ -19,7 +19,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag nexthdr != {esp, ah, comp, udp, udplite, tcp, dccp, sctp}
@@ -29,42 +29,42 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag nexthdr esp
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
# frag nexthdr ah
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000033 ]
# frag reserved 22
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# frag reserved != 233
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# frag reserved 33-45
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -72,7 +72,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# frag reserved { 33, 55, 67, 88}
@@ -82,7 +82,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag reserved != { 33, 55, 67, 88}
@@ -92,7 +92,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag reserved { 33-55}
@@ -102,7 +102,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag reserved != { 33-55}
@@ -112,14 +112,14 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag frag-off 22
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp eq reg 1 0x0000b000 ]
@@ -127,7 +127,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp neq reg 1 0x00004807 ]
@@ -135,7 +135,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp gte reg 1 0x00000801 ]
[ cmp lte reg 1 0x00006801 ]
@@ -144,7 +144,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ range neq reg 1 0x00000801 0x00006801 ]
@@ -155,7 +155,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d ]
@@ -166,7 +166,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d 0x1 ]
@@ -177,7 +177,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d ]
@@ -188,7 +188,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d 0x1 ]
@@ -196,7 +196,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000001 ]
@@ -204,28 +204,28 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp eq reg 1 0x01000000 ]
# frag id 22
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp eq reg 1 0x16000000 ]
# frag id != 33
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp neq reg 1 0x21000000 ]
# frag id 33-45
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp gte reg 1 0x21000000 ]
[ cmp lte reg 1 0x2d000000 ]
@@ -233,7 +233,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ range neq reg 1 0x21000000 0x2d000000 ]
# frag id { 33, 55, 67, 88}
@@ -243,7 +243,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag id != { 33, 55, 67, 88}
@@ -253,7 +253,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag id { 33-55}
@@ -263,7 +263,7 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag id != { 33-55}
@@ -273,14 +273,14 @@ __set%d test-inet 0
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag reserved2 1
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000006 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000002 ]
@@ -288,7 +288,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000000 ]
@@ -296,7 +296,7 @@ inet test-inet output
inet test-inet output
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000001 ]
diff --git a/tests/py/ip6/frag.t.payload.ip6 b/tests/py/ip6/frag.t.payload.ip6
index 6e86b8a..940fb9f 100644
--- a/tests/py/ip6/frag.t.payload.ip6
+++ b/tests/py/ip6/frag.t.payload.ip6
@@ -1,11 +1,11 @@
# frag nexthdr tcp
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000006 ]
# frag nexthdr != icmp
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# frag nexthdr {esp, ah, comp, udp, udplite, tcp, dccp, sctp}
@@ -13,7 +13,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000032 : 0 [end] element 00000033 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000088 : 0 [end] element 00000006 : 0 [end] element 00000021 : 0 [end] element 00000084 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag nexthdr != {esp, ah, comp, udp, udplite, tcp, dccp, sctp}
@@ -21,38 +21,38 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000032 : 0 [end] element 00000033 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000088 : 0 [end] element 00000006 : 0 [end] element 00000021 : 0 [end] element 00000084 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag nexthdr esp
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
# frag nexthdr ah
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000033 ]
# frag reserved 22
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# frag reserved != 233
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# frag reserved 33-45
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# frag reserved != 33-45
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# frag reserved { 33, 55, 67, 88}
@@ -60,7 +60,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag reserved != { 33, 55, 67, 88}
@@ -68,7 +68,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag reserved { 33-55}
@@ -76,7 +76,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag reserved != { 33-55}
@@ -84,31 +84,31 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag frag-off 22
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp eq reg 1 0x0000b000 ]
# frag frag-off != 233
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp neq reg 1 0x00004807 ]
# frag frag-off 33-45
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ cmp gte reg 1 0x00000801 ]
[ cmp lte reg 1 0x00006801 ]
# frag frag-off != 33-45
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ range neq reg 1 0x00000801 0x00006801 ]
@@ -117,7 +117,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000801 : 0 [end] element 0000b801 : 0 [end] element 00001802 : 0 [end] element 0000c002 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d ]
@@ -126,7 +126,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000801 : 0 [end] element 0000b801 : 0 [end] element 00001802 : 0 [end] element 0000c002 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d 0x1 ]
@@ -135,7 +135,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000801 : 0 [end] element 0000b901 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d ]
@@ -144,40 +144,40 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000801 : 0 [end] element 0000b901 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 2b @ 44 + 2 => reg 1 ]
+ [ exthdr load ipv6 2b @ 44 + 2 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag more-fragments 1
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000001 ]
# frag id 1
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp eq reg 1 0x01000000 ]
# frag id 22
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp eq reg 1 0x16000000 ]
# frag id != 33
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp neq reg 1 0x21000000 ]
# frag id 33-45
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ cmp gte reg 1 0x21000000 ]
[ cmp lte reg 1 0x2d000000 ]
# frag id != 33-45
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ range neq reg 1 0x21000000 0x2d000000 ]
# frag id { 33, 55, 67, 88}
@@ -185,7 +185,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 21000000 : 0 [end] element 37000000 : 0 [end] element 43000000 : 0 [end] element 58000000 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag id != { 33, 55, 67, 88}
@@ -193,7 +193,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 21000000 : 0 [end] element 37000000 : 0 [end] element 43000000 : 0 [end] element 58000000 : 0 [end]
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag id { 33-55}
@@ -201,7 +201,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 21000000 : 0 [end] element 38000000 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# frag id != { 33-55}
@@ -209,24 +209,24 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 21000000 : 0 [end] element 38000000 : 1 [end]
ip6 test-ip6 output
- [ exthdr load 4b @ 44 + 4 => reg 1 ]
+ [ exthdr load ipv6 4b @ 44 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# frag reserved2 1
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000006 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000002 ]
# frag more-fragments 0
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000000 ]
# frag more-fragments 1
ip6 test-ip6 output
- [ exthdr load 1b @ 44 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 44 + 3 => reg 1 ]
[ bitwise reg 1 = (reg=1 & 0x00000001 ) ^ 0x00000000 ]
[ cmp eq reg 1 0x00000001 ]
diff --git a/tests/py/ip6/hbh.t.payload.inet b/tests/py/ip6/hbh.t.payload.inet
index cf7e353..e358351 100644
--- a/tests/py/ip6/hbh.t.payload.inet
+++ b/tests/py/ip6/hbh.t.payload.inet
@@ -2,21 +2,21 @@
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# hbh hdrlength != 233
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# hbh hdrlength 33-45
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -24,7 +24,7 @@ inet test-inet filter-input
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# hbh hdrlength {33, 55, 67, 88}
@@ -34,7 +34,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh hdrlength != {33, 55, 67, 88}
@@ -44,7 +44,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh hdrlength { 33-55}
@@ -54,7 +54,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh hdrlength != { 33-55}
@@ -64,7 +64,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr {esp, ah, comp, udp, udplite, tcp, dccp, sctp, icmpv6}
@@ -74,7 +74,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != {esp, ah, comp, udp, udplite, tcp, dccp, sctp, icmpv6}
@@ -84,28 +84,28 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr 22
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# hbh nexthdr != 233
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# hbh nexthdr 33-45
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -113,7 +113,7 @@ inet test-inet filter-input
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# hbh nexthdr {33, 55, 67, 88}
@@ -123,7 +123,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != {33, 55, 67, 88}
@@ -133,7 +133,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr { 33-55}
@@ -143,7 +143,7 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != { 33-55}
@@ -153,20 +153,20 @@ __set%d test-inet 0
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr ip
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# hbh nexthdr != ip
inet test-inet filter-input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000000 ]
diff --git a/tests/py/ip6/hbh.t.payload.ip6 b/tests/py/ip6/hbh.t.payload.ip6
index 93522c4..a4b131a 100644
--- a/tests/py/ip6/hbh.t.payload.ip6
+++ b/tests/py/ip6/hbh.t.payload.ip6
@@ -1,22 +1,22 @@
# hbh hdrlength 22
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# hbh hdrlength != 233
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# hbh hdrlength 33-45
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# hbh hdrlength != 33-45
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# hbh hdrlength {33, 55, 67, 88}
@@ -24,7 +24,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh hdrlength != {33, 55, 67, 88}
@@ -32,7 +32,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh hdrlength { 33-55}
@@ -40,7 +40,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh hdrlength != { 33-55}
@@ -48,7 +48,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr {esp, ah, comp, udp, udplite, tcp, dccp, sctp, icmpv6}
@@ -56,7 +56,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000032 : 0 [end] element 00000033 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000088 : 0 [end] element 00000006 : 0 [end] element 00000021 : 0 [end] element 00000084 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != {esp, ah, comp, udp, udplite, tcp, dccp, sctp, icmpv6}
@@ -64,28 +64,28 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000032 : 0 [end] element 00000033 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000088 : 0 [end] element 00000006 : 0 [end] element 00000021 : 0 [end] element 00000084 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr 22
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# hbh nexthdr != 233
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# hbh nexthdr 33-45
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# hbh nexthdr != 33-45
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# hbh nexthdr {33, 55, 67, 88}
@@ -93,7 +93,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != {33, 55, 67, 88}
@@ -101,7 +101,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr { 33-55}
@@ -109,7 +109,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# hbh nexthdr != { 33-55}
@@ -117,16 +117,16 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# hbh nexthdr ip
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# hbh nexthdr != ip
ip6 test-ip6 filter-input
- [ exthdr load 1b @ 0 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 0 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000000 ]
diff --git a/tests/py/ip6/mh.t.payload.inet b/tests/py/ip6/mh.t.payload.inet
index 24335b1..2c473fb 100644
--- a/tests/py/ip6/mh.t.payload.inet
+++ b/tests/py/ip6/mh.t.payload.inet
@@ -2,14 +2,14 @@
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# mh nexthdr != 1
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# mh nexthdr { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp }
@@ -19,7 +19,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp }
@@ -29,42 +29,42 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh nexthdr icmp
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# mh nexthdr != icmp
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# mh nexthdr 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh nexthdr != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh nexthdr 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -72,7 +72,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh nexthdr { 33, 55, 67, 88 }
@@ -82,7 +82,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { 33, 55, 67, 88 }
@@ -92,7 +92,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh nexthdr { 33-55 }
@@ -102,7 +102,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { 33-55 }
@@ -112,28 +112,28 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh hdrlength 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh hdrlength != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh hdrlength 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -141,7 +141,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh hdrlength { 33, 55, 67, 88 }
@@ -151,7 +151,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh hdrlength != { 33, 55, 67, 88 }
@@ -161,7 +161,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh hdrlength { 33-55 }
@@ -171,7 +171,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh hdrlength != { 33-55 }
@@ -181,7 +181,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh type {binding-refresh-request, home-test-init, careof-test-init, home-test, careof-test, binding-update, binding-acknowledgement, binding-error, fast-binding-update, fast-binding-acknowledgement, fast-binding-advertisement, experimental-mobility-header, home-agent-switch-message}
@@ -191,42 +191,42 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh type home-agent-switch-message
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ cmp eq reg 1 0x0000000c ]
# mh type != home-agent-switch-message
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ cmp neq reg 1 0x0000000c ]
# mh reserved 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh reserved != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh reserved 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -234,7 +234,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh reserved { 33, 55, 67, 88}
@@ -244,7 +244,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh reserved != { 33, 55, 67, 88}
@@ -254,7 +254,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh reserved { 33-55}
@@ -264,7 +264,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh reserved != { 33-55}
@@ -274,28 +274,28 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh checksum 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp eq reg 1 0x00001600 ]
# mh checksum != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp neq reg 1 0x0000e900 ]
# mh checksum 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp gte reg 1 0x00002100 ]
[ cmp lte reg 1 0x00002d00 ]
@@ -303,7 +303,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ range neq reg 1 0x00002100 0x00002d00 ]
# mh checksum { 33, 55, 67, 88}
@@ -313,7 +313,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh checksum != { 33, 55, 67, 88}
@@ -323,7 +323,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh checksum { 33-55}
@@ -333,7 +333,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh checksum != { 33-55}
@@ -343,6 +343,6 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/mh.t.payload.ip6 b/tests/py/ip6/mh.t.payload.ip6
index d19b6e6..93744da 100644
--- a/tests/py/ip6/mh.t.payload.ip6
+++ b/tests/py/ip6/mh.t.payload.ip6
@@ -1,11 +1,11 @@
# mh nexthdr 1
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# mh nexthdr != 1
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# mh nexthdr { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp }
@@ -13,7 +13,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp }
@@ -21,38 +21,38 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh nexthdr icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# mh nexthdr != icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# mh nexthdr 22
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh nexthdr != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh nexthdr 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# mh nexthdr != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh nexthdr { 33, 55, 67, 88 }
@@ -60,7 +60,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { 33, 55, 67, 88 }
@@ -68,7 +68,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh nexthdr { 33-55 }
@@ -76,7 +76,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh nexthdr != { 33-55 }
@@ -84,28 +84,28 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh hdrlength 22
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh hdrlength != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh hdrlength 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# mh hdrlength != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh hdrlength { 33, 55, 67, 88 }
@@ -113,7 +113,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh hdrlength != { 33, 55, 67, 88 }
@@ -121,7 +121,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh hdrlength { 33-55 }
@@ -129,7 +129,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh hdrlength != { 33-55 }
@@ -137,7 +137,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh type {binding-refresh-request, home-test-init, careof-test-init, home-test, careof-test, binding-update, binding-acknowledgement, binding-error, fast-binding-update, fast-binding-acknowledgement, fast-binding-advertisement, experimental-mobility-header, home-agent-switch-message}
@@ -145,38 +145,38 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000000 : 0 [end] element 00000001 : 0 [end] element 00000002 : 0 [end] element 00000003 : 0 [end] element 00000004 : 0 [end] element 00000005 : 0 [end] element 00000006 : 0 [end] element 00000007 : 0 [end] element 00000008 : 0 [end] element 00000009 : 0 [end] element 0000000a : 0 [end] element 0000000b : 0 [end] element 0000000c : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh type home-agent-switch-message
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ cmp eq reg 1 0x0000000c ]
# mh type != home-agent-switch-message
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 2 => reg 1 ]
[ cmp neq reg 1 0x0000000c ]
# mh reserved 22
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# mh reserved != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# mh reserved 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# mh reserved != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# mh reserved { 33, 55, 67, 88}
@@ -184,7 +184,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh reserved != { 33, 55, 67, 88}
@@ -192,7 +192,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh reserved { 33-55}
@@ -200,7 +200,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh reserved != { 33-55}
@@ -208,28 +208,28 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 135 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 135 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh checksum 22
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp eq reg 1 0x00001600 ]
# mh checksum != 233
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp neq reg 1 0x0000e900 ]
# mh checksum 33-45
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ cmp gte reg 1 0x00002100 ]
[ cmp lte reg 1 0x00002d00 ]
# mh checksum != 33-45
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ range neq reg 1 0x00002100 0x00002d00 ]
# mh checksum { 33, 55, 67, 88}
@@ -237,7 +237,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00002100 : 0 [end] element 00003700 : 0 [end] element 00004300 : 0 [end] element 00005800 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh checksum != { 33, 55, 67, 88}
@@ -245,7 +245,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00002100 : 0 [end] element 00003700 : 0 [end] element 00004300 : 0 [end] element 00005800 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# mh checksum { 33-55}
@@ -253,7 +253,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00002100 : 0 [end] element 00003800 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# mh checksum != { 33-55}
@@ -261,6 +261,6 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00002100 : 0 [end] element 00003800 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 2b @ 135 + 4 => reg 1 ]
+ [ exthdr load ipv6 2b @ 135 + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/rt.t.payload.inet b/tests/py/ip6/rt.t.payload.inet
index 8fb717f..eafb4a0 100644
--- a/tests/py/ip6/rt.t.payload.inet
+++ b/tests/py/ip6/rt.t.payload.inet
@@ -2,14 +2,14 @@
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# rt nexthdr != 1
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# rt nexthdr {udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -19,7 +19,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != {udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -29,42 +29,42 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt nexthdr icmp
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# rt nexthdr != icmp
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# rt nexthdr 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt nexthdr != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt nexthdr 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -72,7 +72,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt nexthdr { 33, 55, 67, 88}
@@ -82,7 +82,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != { 33, 55, 67, 88}
@@ -92,7 +92,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt nexthdr { 33-55}
@@ -102,7 +102,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != { 33-55}
@@ -112,28 +112,28 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt hdrlength 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt hdrlength != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt hdrlength 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -141,7 +141,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt hdrlength { 33, 55, 67, 88}
@@ -151,7 +151,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt hdrlength != { 33, 55, 67, 88}
@@ -161,7 +161,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt hdrlength { 33-55}
@@ -171,7 +171,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt hdrlength != { 33-55}
@@ -181,28 +181,28 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt type 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt type != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt type 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -210,7 +210,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt type { 33, 55, 67, 88}
@@ -220,7 +220,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt type != { 33, 55, 67, 88}
@@ -230,7 +230,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt type { 33-55}
@@ -240,7 +240,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt type != { 33-55}
@@ -250,28 +250,28 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt seg-left 22
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt seg-left != 233
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt seg-left 33-45
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
@@ -279,7 +279,7 @@ inet test-inet input
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt seg-left { 33, 55, 67, 88}
@@ -289,7 +289,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt seg-left != { 33, 55, 67, 88}
@@ -299,7 +299,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt seg-left { 33-55}
@@ -309,7 +309,7 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt seg-left != { 33-55}
@@ -319,6 +319,6 @@ __set%d test-inet 0
inet test-inet input
[ meta load nfproto => reg 1 ]
[ cmp eq reg 1 0x0000000a ]
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/rt.t.payload.ip6 b/tests/py/ip6/rt.t.payload.ip6
index 5a57463..929cf9e 100644
--- a/tests/py/ip6/rt.t.payload.ip6
+++ b/tests/py/ip6/rt.t.payload.ip6
@@ -1,11 +1,11 @@
# rt nexthdr 1
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# rt nexthdr != 1
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# rt nexthdr {udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -13,7 +13,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != {udplite, ipcomp, udp, ah, sctp, esp, dccp, tcp, ipv6-icmp}
@@ -21,38 +21,38 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000088 : 0 [end] element 0000006c : 0 [end] element 00000011 : 0 [end] element 00000033 : 0 [end] element 00000084 : 0 [end] element 00000032 : 0 [end] element 00000021 : 0 [end] element 00000006 : 0 [end] element 0000003a : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt nexthdr icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000001 ]
# rt nexthdr != icmp
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x00000001 ]
# rt nexthdr 22
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt nexthdr != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt nexthdr 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# rt nexthdr != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt nexthdr { 33, 55, 67, 88}
@@ -60,7 +60,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != { 33, 55, 67, 88}
@@ -68,7 +68,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt nexthdr { 33-55}
@@ -76,7 +76,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt nexthdr != { 33-55}
@@ -84,28 +84,28 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 0 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt hdrlength 22
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt hdrlength != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt hdrlength 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# rt hdrlength != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt hdrlength { 33, 55, 67, 88}
@@ -113,7 +113,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt hdrlength != { 33, 55, 67, 88}
@@ -121,7 +121,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt hdrlength { 33-55}
@@ -129,7 +129,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt hdrlength != { 33-55}
@@ -137,28 +137,28 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 1 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 1 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt type 22
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt type != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt type 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# rt type != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt type { 33, 55, 67, 88}
@@ -166,7 +166,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt type != { 33, 55, 67, 88}
@@ -174,7 +174,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt type { 33-55}
@@ -182,7 +182,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt type != { 33-55}
@@ -190,28 +190,28 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 2 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 2 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt seg-left 22
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp eq reg 1 0x00000016 ]
# rt seg-left != 233
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp neq reg 1 0x000000e9 ]
# rt seg-left 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ cmp gte reg 1 0x00000021 ]
[ cmp lte reg 1 0x0000002d ]
# rt seg-left != 33-45
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ range neq reg 1 0x00000021 0x0000002d ]
# rt seg-left { 33, 55, 67, 88}
@@ -219,7 +219,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt seg-left != { 33, 55, 67, 88}
@@ -227,7 +227,7 @@ __set%d test-ip6 3
__set%d test-ip6 0
element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# rt seg-left { 33-55}
@@ -235,7 +235,7 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d ]
# rt seg-left != { 33-55}
@@ -243,6 +243,6 @@ __set%d test-ip6 7
__set%d test-ip6 0
element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end]
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 3 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 3 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
diff --git a/tests/py/ip6/srh.t.payload b/tests/py/ip6/srh.t.payload
index a2a46f1..b624745 100644
--- a/tests/py/ip6/srh.t.payload
+++ b/tests/py/ip6/srh.t.payload
@@ -1,11 +1,11 @@
# srh last-entry 0
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 4 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 4 => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# srh last-entry 127
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 4 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 4 => reg 1 ]
[ cmp eq reg 1 0x0000007f ]
# srh last-entry { 0, 4-127, 255 }
@@ -13,17 +13,17 @@ __set%d test-ip6 7 size 5
__set%d test-ip6 0
element 00000000 : 0 [end] element 00000001 : 1 [end] element 00000004 : 0 [end] element 00000080 : 1 [end] element 000000ff : 0 [end] userdata = {
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 4 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# srh flags 0
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 5 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 5 => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# srh flags 127
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 5 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 5 => reg 1 ]
[ cmp eq reg 1 0x0000007f ]
# srh flags { 0, 4-127, 255 }
@@ -31,17 +31,17 @@ __set%d test-ip6 7 size 5
__set%d test-ip6 0
element 00000000 : 0 [end] element 00000001 : 1 [end] element 00000004 : 0 [end] element 00000080 : 1 [end] element 000000ff : 0 [end] userdata = {
ip6 test-ip6 input
- [ exthdr load 1b @ 43 + 5 => reg 1 ]
+ [ exthdr load ipv6 1b @ 43 + 5 => reg 1 ]
[ lookup reg 1 set __set%d ]
# srh tag 0
ip6 test-ip6 input
- [ exthdr load 2b @ 43 + 6 => reg 1 ]
+ [ exthdr load ipv6 2b @ 43 + 6 => reg 1 ]
[ cmp eq reg 1 0x00000000 ]
# srh tag 127
ip6 test-ip6 input
- [ exthdr load 2b @ 43 + 6 => reg 1 ]
+ [ exthdr load ipv6 2b @ 43 + 6 => reg 1 ]
[ cmp eq reg 1 0x00007f00 ]
# srh tag { 0, 4-127, 0xffff }
@@ -49,16 +49,16 @@ __set%d test-ip6 7 size 5
__set%d test-ip6 0
element 00000000 : 0 [end] element 00000100 : 1 [end] element 00000400 : 0 [end] element 00008000 : 1 [end] element 0000ffff : 0 [end] userdata = {
ip6 test-ip6 input
- [ exthdr load 2b @ 43 + 6 => reg 1 ]
+ [ exthdr load ipv6 2b @ 43 + 6 => reg 1 ]
[ lookup reg 1 set __set%d ]
# srh sid[1] dead::beef
ip6 test-ip6 input
- [ exthdr load 16b @ 43 + 8 => reg 1 ]
+ [ exthdr load ipv6 16b @ 43 + 8 => reg 1 ]
[ cmp eq reg 1 0x0000adde 0x00000000 0x00000000 0xefbe0000 ]
# srh sid[2] dead::beef
ip6 test-ip6 input
- [ exthdr load 16b @ 43 + 24 => reg 1 ]
+ [ exthdr load ipv6 16b @ 43 + 24 => reg 1 ]
[ cmp eq reg 1 0x0000adde 0x00000000 0x00000000 0xefbe0000 ]
--
2.17.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH RESEND nftables v3] exthdr: doc: add support for matching IPv4 options
2019-06-25 0:09 [PATCH RESEND nftables v3] exthdr: doc: add support for matching IPv4 options Stephen Suryaputra
@ 2019-06-28 16:46 ` Pablo Neira Ayuso
0 siblings, 0 replies; 2+ messages in thread
From: Pablo Neira Ayuso @ 2019-06-28 16:46 UTC (permalink / raw)
To: Stephen Suryaputra; +Cc: netfilter-devel
On Mon, Jun 24, 2019 at 08:09:24PM -0400, Stephen Suryaputra wrote:
> This is the userspace change for the overall changes with this
> description:
> Add capability to have rules matching IPv4 options. This is developed
> mainly to support dropping of IP packets with loose and/or strict source
> route route options.
python nft-tests.py
runs fine.
However:
python nft-tests.py -j
shows errors like:
ERROR: did not find JSON equivalent for rule 'ip option lsrr type 1'
/home/pablo/devel/scm/git-netfilter/nftables/tests/py/ip/ipopt.t.json.got:
WARNING: line 2: Wrote JSON equivalent for rule ip option lsrr type 1
Would you also fix json? Thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-06-28 16:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-25 0:09 [PATCH RESEND nftables v3] exthdr: doc: add support for matching IPv4 options Stephen Suryaputra
2019-06-28 16:46 ` Pablo Neira Ayuso
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.