{ "header_types" : [ { "name" : "scalars_0", "id" : 0, "fields" : [ ["mac_tmp", 48, false], ["addr_tmp", 128, false], ["metadata.ingress_port", 9, false], ["metadata.task", 16, false], ["metadata.tcp_length", 16, false], ["metadata.cast_length", 32, false], ["metadata.do_cksum", 1, false], ["_padding_0", 6, false] ] }, { "name" : "standard_metadata", "id" : 1, "fields" : [ ["ingress_port", 9, false], ["egress_spec", 9, false], ["egress_port", 9, false], ["clone_spec", 32, false], ["instance_type", 32, false], ["drop", 1, false], ["recirculate_port", 16, false], ["packet_length", 32, false], ["enq_timestamp", 32, false], ["enq_qdepth", 19, false], ["deq_timedelta", 32, false], ["deq_qdepth", 19, false], ["ingress_global_timestamp", 48, false], ["egress_global_timestamp", 48, false], ["lf_field_list", 32, false], ["mcast_grp", 16, false], ["resubmit_flag", 32, false], ["egress_rid", 16, false], ["checksum_error", 1, false], ["recirculate_flag", 32, false], ["parser_error", 32, false], ["_padding", 5, false] ] }, { "name" : "ethernet_t", "id" : 2, "fields" : [ ["dst_addr", 48, false], ["src_addr", 48, false], ["ethertype", 16, false] ] }, { "name" : "ipv4_t", "id" : 3, "fields" : [ ["version", 4, false], ["ihl", 4, false], ["diff_serv", 6, false], ["ecn", 2, false], ["totalLen", 16, false], ["identification", 16, false], ["flags", 3, false], ["fragOffset", 13, false], ["ttl", 8, false], ["protocol", 8, false], ["hdrChecksum", 16, false], ["src_addr", 32, false], ["dst_addr", 32, false] ] }, { "name" : "ipv6_t", "id" : 4, "fields" : [ ["version", 4, false], ["traffic_class", 8, false], ["flow_label", 20, false], ["payload_length", 16, false], ["next_header", 8, false], ["hop_limit", 8, false], ["src_addr", 128, false], ["dst_addr", 128, false] ] }, { "name" : "tcp_t", "id" : 5, "fields" : [ ["src_port", 16, false], ["dst_port", 16, false], ["seqNo", 32, true], ["ackNo", 32, true], ["data_offset", 4, false], ["res", 4, false], ["cwr", 1, false], ["ece", 1, false], ["urg", 1, false], ["ack", 1, false], ["psh", 1, false], ["rst", 1, false], ["syn", 1, false], ["fin", 1, false], ["window", 16, false], ["checksum", 16, false], ["urgentPtr", 16, false] ] }, { "name" : "udp_t", "id" : 6, "fields" : [ ["src_port", 16, false], ["dst_port", 16, false], ["payload_length", 16, false], ["checksum", 16, false] ] }, { "name" : "icmp6_t", "id" : 7, "fields" : [ ["type", 8, false], ["code", 8, false], ["checksum", 16, false] ] }, { "name" : "icmp_t", "id" : 8, "fields" : [ ["type", 8, false], ["code", 8, false], ["checksum", 16, false], ["rest", 32, false] ] }, { "name" : "cpu_t", "id" : 9, "fields" : [ ["task", 16, false], ["ingress_port", 16, false], ["ethertype", 16, false] ] } ], "headers" : [ { "name" : "scalars", "id" : 0, "header_type" : "scalars_0", "metadata" : true, "pi_omit" : true }, { "name" : "standard_metadata", "id" : 1, "header_type" : "standard_metadata", "metadata" : true, "pi_omit" : true }, { "name" : "ethernet", "id" : 2, "header_type" : "ethernet_t", "metadata" : false, "pi_omit" : true }, { "name" : "ipv4", "id" : 3, "header_type" : "ipv4_t", "metadata" : false, "pi_omit" : true }, { "name" : "ipv6", "id" : 4, "header_type" : "ipv6_t", "metadata" : false, "pi_omit" : true }, { "name" : "tcp", "id" : 5, "header_type" : "tcp_t", "metadata" : false, "pi_omit" : true }, { "name" : "udp", "id" : 6, "header_type" : "udp_t", "metadata" : false, "pi_omit" : true }, { "name" : "icmp6", "id" : 7, "header_type" : "icmp6_t", "metadata" : false, "pi_omit" : true }, { "name" : "icmp", "id" : 8, "header_type" : "icmp_t", "metadata" : false, "pi_omit" : true }, { "name" : "cpu", "id" : 9, "header_type" : "cpu_t", "metadata" : false, "pi_omit" : true } ], "header_stacks" : [], "header_union_types" : [], "header_unions" : [], "header_union_stacks" : [], "field_lists" : [ { "id" : 1, "name" : "fl", "elements" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "field", "value" : ["scalars", "metadata.cast_length"] }, { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] } ] }, { "id" : 2, "name" : "fl_0", "elements" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "field", "value" : ["scalars", "metadata.cast_length"] }, { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] } ] }, { "id" : 3, "name" : "fl_1", "elements" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "field", "value" : ["scalars", "metadata.cast_length"] }, { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] } ] }, { "id" : 4, "name" : "fl_2", "elements" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "field", "value" : ["scalars", "metadata.cast_length"] }, { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] } ] } ], "errors" : [ ["NoError", 1], ["PacketTooShort", 2], ["NoMatch", 3], ["StackOutOfBounds", 4], ["HeaderTooShort", 5], ["ParserTimeout", 6] ], "enums" : [], "parsers" : [ { "name" : "parser", "id" : 0, "init_state" : "start", "parse_states" : [ { "name" : "start", "id" : 0, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "ethernet" } ], "op" : "extract" } ], "transitions" : [ { "type" : "hexstr", "value" : "0x0800", "mask" : null, "next_state" : "ipv4" }, { "type" : "hexstr", "value" : "0x86dd", "mask" : null, "next_state" : "ipv6" }, { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [ { "type" : "field", "value" : ["ethernet", "ethertype"] } ] }, { "name" : "ipv4", "id" : 1, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "ipv4" } ], "op" : "extract" }, { "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "expression", "value" : { "type" : "expression", "value" : { "op" : "&", "left" : { "type" : "expression", "value" : { "op" : "+", "left" : { "type" : "field", "value" : ["ipv4", "totalLen"] }, "right" : { "type" : "hexstr", "value" : "0xffec" } } }, "right" : { "type" : "hexstr", "value" : "0xffff" } } } } ], "op" : "set" } ], "transitions" : [ { "type" : "hexstr", "value" : "0x06", "mask" : null, "next_state" : "tcp" }, { "type" : "hexstr", "value" : "0x11", "mask" : null, "next_state" : "udp" }, { "type" : "hexstr", "value" : "0x01", "mask" : null, "next_state" : "icmp" }, { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [ { "type" : "field", "value" : ["ipv4", "protocol"] } ] }, { "name" : "ipv6", "id" : 2, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "ipv6" } ], "op" : "extract" }, { "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.tcp_length"] }, { "type" : "field", "value" : ["ipv6", "payload_length"] } ], "op" : "set" } ], "transitions" : [ { "type" : "hexstr", "value" : "0x06", "mask" : null, "next_state" : "tcp" }, { "type" : "hexstr", "value" : "0x11", "mask" : null, "next_state" : "udp" }, { "type" : "hexstr", "value" : "0x3a", "mask" : null, "next_state" : "icmp6" }, { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [ { "type" : "field", "value" : ["ipv6", "next_header"] } ] }, { "name" : "tcp", "id" : 3, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "tcp" } ], "op" : "extract" } ], "transitions" : [ { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [] }, { "name" : "udp", "id" : 4, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "udp" } ], "op" : "extract" } ], "transitions" : [ { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [] }, { "name" : "icmp6", "id" : 5, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "icmp6" } ], "op" : "extract" } ], "transitions" : [ { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [] }, { "name" : "icmp", "id" : 6, "parser_ops" : [ { "parameters" : [ { "type" : "regular", "value" : "icmp" } ], "op" : "extract" } ], "transitions" : [ { "value" : "default", "mask" : null, "next_state" : null } ], "transition_key" : [] } ] } ], "parse_vsets" : [], "deparsers" : [ { "name" : "deparser", "id" : 0, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/parsers.p4", "line" : 76, "column" : 8, "source_fragment" : "MyDeparser" }, "order" : ["ethernet", "cpu", "ipv4", "ipv6", "tcp", "udp", "icmp", "icmp6"] } ], "meter_arrays" : [], "counter_arrays" : [], "register_arrays" : [], "calculations" : [ { "name" : "calc", "id" : 0, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/checksums.p4", "line" : 26, "column" : 8, "source_fragment" : "update_checksum_with_payload(meta.do_cksum == 1, ..." }, "algo" : "csum16", "input" : [ { "type" : "field", "value" : ["ipv6", "src_addr"] }, { "type" : "field", "value" : ["ipv6", "dst_addr"] }, { "type" : "expression", "value" : { "op" : "&", "left" : { "type" : "field", "value" : ["ipv6", "payload_length"] }, "right" : { "type" : "hexstr", "value" : "0xffffffff", "bitwidth" : 32 } } }, { "type" : "hexstr", "value" : "0x000000", "bitwidth" : 24 }, { "type" : "hexstr", "value" : "0x3a", "bitwidth" : 8 }, { "type" : "payload", "value" : null } ] } ], "learn_lists" : [], "actions" : [ { "name" : "NoAction", "id" : 0, "runtime_data" : [], "primitives" : [] }, { "name" : "NoAction", "id" : 1, "runtime_data" : [], "primitives" : [] }, { "name" : "NoAction", "id" : 2, "runtime_data" : [], "primitives" : [] }, { "name" : "MyIngress.set_egress_port", "id" : 3, "runtime_data" : [ { "name" : "out_port", "bitwidth" : 9 } ], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["standard_metadata", "egress_spec"] }, { "type" : "runtime_data", "value" : 0 } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 26, "column" : 8, "source_fragment" : "standard_metadata.egress_spec = out_port" } } ] }, { "name" : "MyIngress.set_egress_port", "id" : 4, "runtime_data" : [ { "name" : "out_port", "bitwidth" : 9 } ], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["standard_metadata", "egress_spec"] }, { "type" : "runtime_data", "value" : 0 } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 26, "column" : 8, "source_fragment" : "standard_metadata.egress_spec = out_port" } } ] }, { "name" : "MyIngress.controller_debug", "id" : 5, "runtime_data" : [], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "hexstr", "value" : "0x0003" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/headers.p4", "line" : 37, "column" : 26, "source_fragment" : "3; ..." } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["standard_metadata", "ingress_port"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 31, "column" : 8, "source_fragment" : "meta.ingress_port = standard_metadata.ingress_port" } }, { "op" : "clone_ingress_pkt_to_egress", "parameters" : [ { "type" : "hexstr", "value" : "0x00000064" }, { "type" : "hexstr", "value" : "0x1" } ] } ] }, { "name" : "MyIngress.controller_debug", "id" : 6, "runtime_data" : [], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "hexstr", "value" : "0x0003" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/headers.p4", "line" : 37, "column" : 26, "source_fragment" : "3; ..." } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["standard_metadata", "ingress_port"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 31, "column" : 8, "source_fragment" : "meta.ingress_port = standard_metadata.ingress_port" } }, { "op" : "clone_ingress_pkt_to_egress", "parameters" : [ { "type" : "hexstr", "value" : "0x00000064" }, { "type" : "hexstr", "value" : "0x2" } ] } ] }, { "name" : "MyIngress.controller_reply", "id" : 7, "runtime_data" : [ { "name" : "task", "bitwidth" : 16 } ], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "runtime_data", "value" : 0 } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 36, "column" : 8, "source_fragment" : "meta.task = task" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["standard_metadata", "ingress_port"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 37, "column" : 8, "source_fragment" : "meta.ingress_port = standard_metadata.ingress_port" } }, { "op" : "clone_ingress_pkt_to_egress", "parameters" : [ { "type" : "hexstr", "value" : "0x00000064" }, { "type" : "hexstr", "value" : "0x3" } ] } ] }, { "name" : "MyIngress.controller_reply", "id" : 8, "runtime_data" : [ { "name" : "task", "bitwidth" : 16 } ], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.task"] }, { "type" : "runtime_data", "value" : 0 } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 36, "column" : 8, "source_fragment" : "meta.task = task" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, { "type" : "field", "value" : ["standard_metadata", "ingress_port"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 37, "column" : 8, "source_fragment" : "meta.ingress_port = standard_metadata.ingress_port" } }, { "op" : "clone_ingress_pkt_to_egress", "parameters" : [ { "type" : "hexstr", "value" : "0x00000064" }, { "type" : "hexstr", "value" : "0x4" } ] } ] }, { "name" : "MyIngress.icmp6_echo_reply", "id" : 9, "runtime_data" : [], "primitives" : [ { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "mac_tmp"] }, { "type" : "field", "value" : ["ethernet", "dst_addr"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 55, "column" : 8, "source_fragment" : "mac_addr_t mac_tmp = hdr.ethernet.dst_addr;" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["ethernet", "dst_addr"] }, { "type" : "field", "value" : ["ethernet", "src_addr"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 56, "column" : 8, "source_fragment" : "hdr.ethernet.dst_addr = hdr.ethernet.src_addr" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["ethernet", "src_addr"] }, { "type" : "field", "value" : ["scalars", "mac_tmp"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 57, "column" : 8, "source_fragment" : "hdr.ethernet.src_addr = mac_tmp" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "addr_tmp"] }, { "type" : "field", "value" : ["ipv6", "dst_addr"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 59, "column" : 8, "source_fragment" : "ipv6_addr_t addr_tmp = hdr.ipv6.dst_addr;" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["ipv6", "dst_addr"] }, { "type" : "field", "value" : ["ipv6", "src_addr"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 60, "column" : 8, "source_fragment" : "hdr.ipv6.dst_addr = hdr.ipv6.src_addr" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["ipv6", "src_addr"] }, { "type" : "field", "value" : ["scalars", "addr_tmp"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 61, "column" : 8, "source_fragment" : "hdr.ipv6.src_addr = addr_tmp" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["icmp6", "type"] }, { "type" : "hexstr", "value" : "0x81" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/headers.p4", "line" : 30, "column" : 32, "source_fragment" : "129; ..." } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] }, { "type" : "hexstr", "value" : "0x01" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 65, "column" : 8, "source_fragment" : "meta.do_cksum = 1" } } ] }, { "name" : "act", "id" : 10, "runtime_data" : [], "primitives" : [ { "op" : "add_header", "parameters" : [ { "type" : "header", "value" : "cpu" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 231, "column" : 12, "source_fragment" : "hdr.cpu.setValid()" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["cpu", "task"] }, { "type" : "field", "value" : ["scalars", "metadata.task"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 232, "column" : 12, "source_fragment" : "hdr.cpu.task = meta.task" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["cpu", "ethertype"] }, { "type" : "field", "value" : ["ethernet", "ethertype"] } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 233, "column" : 12, "source_fragment" : "hdr.cpu.ethertype = hdr.ethernet.ethertype" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["cpu", "ingress_port"] }, { "type" : "expression", "value" : { "type" : "expression", "value" : { "op" : "&", "left" : { "type" : "field", "value" : ["scalars", "metadata.ingress_port"] }, "right" : { "type" : "hexstr", "value" : "0xffff" } } } } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 234, "column" : 12, "source_fragment" : "hdr.cpu.ingress_port = (bit<16>)meta.ingress_port" } }, { "op" : "assign", "parameters" : [ { "type" : "field", "value" : ["ethernet", "ethertype"] }, { "type" : "hexstr", "value" : "0x4242" } ], "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/headers.p4", "line" : 18, "column" : 25, "source_fragment" : "0x4242; ..." } } ] } ], "pipelines" : [ { "name" : "ingress", "id" : 0, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 15, "column" : 8, "source_fragment" : "MyIngress" }, "init_table" : "node_2", "tables" : [ { "name" : "MyIngress.v6_addresses", "id" : 0, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 164, "column" : 10, "source_fragment" : "v6_addresses" }, "key" : [ { "match_type" : "exact", "name" : "hdr.ipv6.dst_addr", "target" : ["ipv6", "dst_addr"], "mask" : null } ], "match_type" : "exact", "type" : "simple", "max_size" : 64, "with_counters" : false, "support_timeout" : false, "direct_meters" : null, "action_ids" : [5, 7, 9, 0], "actions" : ["MyIngress.controller_debug", "MyIngress.controller_reply", "MyIngress.icmp6_echo_reply", "NoAction"], "base_default_next" : "MyIngress.v6_networks", "next_tables" : { "MyIngress.controller_debug" : "MyIngress.v6_networks", "MyIngress.controller_reply" : "MyIngress.v6_networks", "MyIngress.icmp6_echo_reply" : "MyIngress.v6_networks", "NoAction" : "MyIngress.v6_networks" }, "default_entry" : { "action_id" : 0, "action_const" : false, "action_data" : [], "action_entry_const" : false } }, { "name" : "MyIngress.v6_networks", "id" : 1, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 179, "column" : 10, "source_fragment" : "v6_networks" }, "key" : [ { "match_type" : "lpm", "name" : "hdr.ipv6.dst_addr", "target" : ["ipv6", "dst_addr"], "mask" : null } ], "match_type" : "lpm", "type" : "simple", "max_size" : 64, "with_counters" : false, "support_timeout" : false, "direct_meters" : null, "action_ids" : [3, 6, 8, 1], "actions" : ["MyIngress.set_egress_port", "MyIngress.controller_debug", "MyIngress.controller_reply", "NoAction"], "base_default_next" : "node_5", "next_tables" : { "MyIngress.set_egress_port" : "node_5", "MyIngress.controller_debug" : "node_5", "MyIngress.controller_reply" : "node_5", "NoAction" : "node_5" }, "default_entry" : { "action_id" : 1, "action_const" : false, "action_data" : [], "action_entry_const" : false } }, { "name" : "MyIngress.v4_networks", "id" : 2, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 193, "column" : 10, "source_fragment" : "v4_networks" }, "key" : [ { "match_type" : "lpm", "name" : "hdr.ipv4.dst_addr", "target" : ["ipv4", "dst_addr"], "mask" : null } ], "match_type" : "lpm", "type" : "simple", "max_size" : 64, "with_counters" : false, "support_timeout" : false, "direct_meters" : null, "action_ids" : [4, 2], "actions" : ["MyIngress.set_egress_port", "NoAction"], "base_default_next" : null, "next_tables" : { "MyIngress.set_egress_port" : null, "NoAction" : null }, "default_entry" : { "action_id" : 2, "action_const" : false, "action_data" : [], "action_entry_const" : false } } ], "action_profiles" : [], "conditionals" : [ { "name" : "node_2", "id" : 0, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 207, "column" : 11, "source_fragment" : "hdr.ipv6.isValid()" }, "expression" : { "type" : "expression", "value" : { "op" : "d2b", "left" : null, "right" : { "type" : "field", "value" : ["ipv6", "$valid$"] } } }, "true_next" : "MyIngress.v6_addresses", "false_next" : "node_5" }, { "name" : "node_5", "id" : 1, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 215, "column" : 11, "source_fragment" : "hdr.ipv4.isValid()" }, "expression" : { "type" : "expression", "value" : { "op" : "d2b", "left" : null, "right" : { "type" : "field", "value" : ["ipv4", "$valid$"] } } }, "false_next" : null, "true_next" : "MyIngress.v4_networks" } ] }, { "name" : "egress", "id" : 1, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 225, "column" : 8, "source_fragment" : "MyEgress" }, "init_table" : "node_9", "tables" : [ { "name" : "tbl_act", "id" : 3, "key" : [], "match_type" : "exact", "type" : "simple", "max_size" : 1024, "with_counters" : false, "support_timeout" : false, "direct_meters" : null, "action_ids" : [10], "actions" : ["act"], "base_default_next" : null, "next_tables" : { "act" : null }, "default_entry" : { "action_id" : 10, "action_const" : true, "action_data" : [], "action_entry_const" : true } } ], "action_profiles" : [], "conditionals" : [ { "name" : "node_9", "id" : 2, "source_info" : { "filename" : "../p4debug/bug2-cast-in-checksum/static-mapping.p4", "line" : 230, "column" : 12, "source_fragment" : "standard_metadata.instance_type == 1" }, "expression" : { "type" : "expression", "value" : { "op" : "==", "left" : { "type" : "field", "value" : ["standard_metadata", "instance_type"] }, "right" : { "type" : "hexstr", "value" : "0x00000001" } } }, "false_next" : null, "true_next" : "tbl_act" } ] } ], "checksums" : [ { "name" : "cksum", "id" : 0, "target" : ["icmp6", "checksum"], "type" : "generic", "calculation" : "calc", "if_cond" : { "type" : "expression", "value" : { "op" : "==", "left" : { "type" : "field", "value" : ["scalars", "metadata.do_cksum"] }, "right" : { "type" : "hexstr", "value" : "0x01" } } } } ], "force_arith" : [], "extern_instances" : [], "field_aliases" : [ [ "queueing_metadata.enq_timestamp", ["standard_metadata", "enq_timestamp"] ], [ "queueing_metadata.enq_qdepth", ["standard_metadata", "enq_qdepth"] ], [ "queueing_metadata.deq_timedelta", ["standard_metadata", "deq_timedelta"] ], [ "queueing_metadata.deq_qdepth", ["standard_metadata", "deq_qdepth"] ], [ "intrinsic_metadata.ingress_global_timestamp", ["standard_metadata", "ingress_global_timestamp"] ], [ "intrinsic_metadata.egress_global_timestamp", ["standard_metadata", "egress_global_timestamp"] ], [ "intrinsic_metadata.lf_field_list", ["standard_metadata", "lf_field_list"] ], [ "intrinsic_metadata.mcast_grp", ["standard_metadata", "mcast_grp"] ], [ "intrinsic_metadata.resubmit_flag", ["standard_metadata", "resubmit_flag"] ], [ "intrinsic_metadata.egress_rid", ["standard_metadata", "egress_rid"] ], [ "intrinsic_metadata.recirculate_flag", ["standard_metadata", "recirculate_flag"] ] ], "program" : "/home/p4/master-thesis/p4debug/bug2-cast-in-checksum/static-mapping.p4i", "__meta__" : { "version" : [2, 18], "compiler" : "https://github.com/p4lang/p4c" } }