Initial integration of SPGW in fabric.p4
Change-Id: Idd78399212039e44c982f50d343f824d516f938a
diff --git a/pipelines/fabric/src/main/resources/include/checksum.p4 b/pipelines/fabric/src/main/resources/include/checksum.p4
index 00b4e70..4d1782d 100644
--- a/pipelines/fabric/src/main/resources/include/checksum.p4
+++ b/pipelines/fabric/src/main/resources/include/checksum.p4
@@ -17,6 +17,10 @@
#ifndef __CHECKSUM__
#define __CHECKSUM__
+#ifdef WITH_SPGW
+#include "spgw.p4"
+#endif // WITH_SPGW
+
control FabricComputeChecksum(inout parsed_headers_t hdr,
inout fabric_metadata_t meta)
{
@@ -38,6 +42,9 @@
hdr.ipv4.hdr_checksum,
HashAlgorithm.csum16
);
+#ifdef WITH_SPGW
+ update_gtpu_checksum.apply(hdr.gtpu_ipv4);
+#endif // WITH_SPGW
}
}
@@ -62,6 +69,9 @@
hdr.ipv4.hdr_checksum,
HashAlgorithm.csum16
);
+#ifdef WITH_SPGW
+ verify_gtpu_checksum.apply(hdr.gtpu_ipv4);
+#endif // WITH_SPGW
}
}