Fix bug when parsing gtp traffic and inner headers

Change-Id: If3905e441719cdbfa2c9e4df173145bce5e7cada
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
index d7e5f68..8c37944 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
@@ -1949,7 +1949,7 @@
               "type" : "hexstr",
               "value" : "0x06",
               "mask" : null,
-              "next_state" : "parse_tcp"
+              "next_state" : "parse_inner_tcp"
             },
             {
               "type" : "hexstr",
@@ -1961,7 +1961,7 @@
               "type" : "hexstr",
               "value" : "0x01",
               "mask" : null,
-              "next_state" : "parse_icmp"
+              "next_state" : "parse_inner_icmp"
             },
             {
               "type" : "default",
@@ -2028,8 +2028,82 @@
           "transition_key" : []
         },
         {
-          "name" : "parse_int",
+          "name" : "parse_inner_tcp",
           "id" : 15,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "inner_tcp"
+                }
+              ],
+              "op" : "extract"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "userMetadata._inner_l4_sport17"]
+                },
+                {
+                  "type" : "field",
+                  "value" : ["inner_tcp", "sport"]
+                }
+              ],
+              "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "userMetadata._inner_l4_dport18"]
+                },
+                {
+                  "type" : "field",
+                  "value" : ["inner_tcp", "dport"]
+                }
+              ],
+              "op" : "set"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "default",
+              "value" : null,
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : []
+        },
+        {
+          "name" : "parse_inner_icmp",
+          "id" : 16,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "inner_icmp"
+                }
+              ],
+              "op" : "extract"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "default",
+              "value" : null,
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : []
+        },
+        {
+          "name" : "parse_int",
+          "id" : 17,
           "parser_ops" : [],
           "transitions" : [
             {
@@ -2054,7 +2128,7 @@
         },
         {
           "name" : "parse_intl4_shim",
-          "id" : 16,
+          "id" : 18,
           "parser_ops" : [
             {
               "parameters" : [
@@ -2098,7 +2172,7 @@
         },
         {
           "name" : "parse_int_data",
-          "id" : 17,
+          "id" : 19,
           "parser_ops" : [],
           "transitions" : [
             {
@@ -2112,7 +2186,7 @@
         },
         {
           "name" : "parse_intl4_tail",
-          "id" : 18,
+          "id" : 20,
           "parser_ops" : [
             {
               "parameters" : [