[qca-nss-sfe] add support for GRE tunnel handling.
Change-Id: Ie4bcdb2df8b13a7c3d63b79eac7ef8f1668ee9c5
Signed-off-by: Nitin Shetty <quic_nitinsj@quicinc.com>
diff --git a/sfe_ipv4.h b/sfe_ipv4.h
index 00b068a..016ee8f 100644
--- a/sfe_ipv4.h
+++ b/sfe_ipv4.h
@@ -70,6 +70,8 @@
/* Insert VLAN tag */
#define SFE_IPV4_CONNECTION_MATCH_FLAG_SRC_INTERFACE_CHECK (1<<13)
/* Source interface check.*/
+#define SFE_IPV4_CONNECTION_MATCH_FLAG_PASSTHROUGH (1<<14)
+ /* passthrough flow: encap/decap to be skipped for this flow */
/*
* IPv4 connection matching structure.
@@ -94,6 +96,7 @@
__be16 match_dest_port; /* Destination port/connection ident */
struct udp_sock *up; /* Stores UDP sock information; valid only in decap path */
+ struct net_protocol *proto; /* stores protocol handler; valid only in decap path */
/*
* Control the operations of the match.
@@ -268,6 +271,11 @@
SFE_IPV4_EXCEPTION_EVENT_PPPOE_NOT_SET_IN_CME,
SFE_IPV4_EXCEPTION_EVENT_INGRESS_VLAN_TAG_MISMATCH,
SFE_IPV4_EXCEPTION_EVENT_INVALID_SRC_IFACE,
+ SFE_IPV4_EXCEPTION_EVENT_GRE_HEADER_INCOMPLETE,
+ SFE_IPV4_EXCEPTION_EVENT_GRE_NO_CONNECTION,
+ SFE_IPV4_EXCEPTION_EVENT_GRE_IP_OPTIONS_OR_INITIAL_FRAGMENT,
+ SFE_IPV4_EXCEPTION_EVENT_GRE_SMALL_TTL,
+ SFE_IPV4_EXCEPTION_EVENT_GRE_NEEDS_FRAGMENTATION,
SFE_IPV4_EXCEPTION_EVENT_LAST
};