[dpdk-dev,RFC,1/6] rte_ether: extend rte_eth_tunnel_flow structure

Message ID 1450860592-12673-2-git-send-email-jijiang.liu@intel.com (mailing list archive)
State RFC, archived
Headers

Commit Message

Jijiang Liu Dec. 23, 2015, 8:49 a.m. UTC
  The purpose of extending this structure is to support more tunnel filter conditions.

Signed-off-by: Jijiang Liu <jijiang.liu@intel.com>
---
 lib/librte_ether/rte_eth_ctrl.h |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)
  

Patch

diff --git a/lib/librte_ether/rte_eth_ctrl.h b/lib/librte_ether/rte_eth_ctrl.h
index ce224ad..39f52d9 100644
--- a/lib/librte_ether/rte_eth_ctrl.h
+++ b/lib/librte_ether/rte_eth_ctrl.h
@@ -494,9 +494,17 @@  enum rte_eth_fdir_tunnel_type {
  * NVGRE
  */
 struct rte_eth_tunnel_flow {
-	enum rte_eth_fdir_tunnel_type tunnel_type; /**< Tunnel type to match. */
-	uint32_t tunnel_id;                        /**< Tunnel ID to match. TNI, VNI... */
-	struct ether_addr mac_addr;                /**< Mac address to match. */
+	enum rte_eth_tunnel_type tunnel_type;
+	uint64_t tunnel_id;  /**< Tunnel ID to match. TNI, VNI... */
+	struct ether_addr outer_src_mac;  /* for TX */
+	struct ether_addr outer_peer_mac; /* for TX */
+	enum rte_tunnel_iptype outer_ip_type; /**< IP address type. */
+	union {
+		struct rte_eth_ipv4_flow outer_ipv4;
+		struct rte_eth_ipv6_flow outer_ipv6;
+	} outer_ip_addr;
+	uint16_t dst_port;
+	uint16_t src_port;
 };
 
 /**