Correct state parser to match on icmp6.type

This commit is contained in:
Nico Schottelius 2019-03-23 14:30:20 +01:00
parent 68bb8e9edd
commit 39c280cd33
3 changed files with 14 additions and 14 deletions

View file

@ -17,6 +17,7 @@ parser MyParser(packet_in packet,
transition select(hdr.ethernet.ethertype){ transition select(hdr.ethernet.ethertype){
TYPE_IPV4: ipv4; TYPE_IPV4: ipv4;
TYPE_IPV6: ipv6; TYPE_IPV6: ipv6;
default: accept; default: accept;
} }
} }
@ -48,7 +49,7 @@ parser MyParser(packet_in packet,
state icmp6 { state icmp6 {
packet.extract(hdr.icmp6); packet.extract(hdr.icmp6);
transition select(hdr.ipv6.next_header){ transition select(hdr.icmp6.type) {
ICMP6_NS: icmp6_neighbor_solicitation; ICMP6_NS: icmp6_neighbor_solicitation;
default: accept; default: accept;
} }

View file

@ -67,7 +67,6 @@ control MyIngress(inout headers hdr,
hdr.icmp6_option_link_layer_addr.ll_length = 1; /* 1* 64 bit */ hdr.icmp6_option_link_layer_addr.ll_length = 1; /* 1* 64 bit */
hdr.icmp6_option_link_layer_addr.mac_addr = mac_addr; hdr.icmp6_option_link_layer_addr.mac_addr = mac_addr;
/* version1: rebuilding packet */ /* version1: rebuilding packet */
/* /*
truncate((bit<32>)(112 + 320 + 32)/8); truncate((bit<32>)(112 + 320 + 32)/8);