[1/5] app/testpmd: support for VXLAN-GPE's next protocol
Checks
Commit Message
Add support for configuring VXLAN-GPE's next protocol.
The CLI is: vxlan-gpe protocol is <value>.
Example:
flow create 0 transfer group 1 pattern eth / ipv6 / udp dst is 4790
/ vxlan-gpe protocol is 0x04 / eth / ipv4 / tcp / end
actions port_id id 1 / end
Signed-off-by: Jiawei Wang <jiaweiw@nvidia.com>
Signed-off-by: Haifei Luo <haifeil@nvidia.com>
---
app/test-pmd/cmdline_flow.c | 10 ++++++++++
1 file changed, 10 insertions(+)
@@ -385,6 +385,7 @@ enum index {
ITEM_GENEVE_OPTLEN,
ITEM_VXLAN_GPE,
ITEM_VXLAN_GPE_VNI,
+ ITEM_VXLAN_GPE_PROTO,
ITEM_ARP_ETH_IPV4,
ITEM_ARP_ETH_IPV4_SHA,
ITEM_ARP_ETH_IPV4_SPA,
@@ -1758,6 +1759,7 @@ static const enum index item_geneve[] = {
static const enum index item_vxlan_gpe[] = {
ITEM_VXLAN_GPE_VNI,
+ ITEM_VXLAN_GPE_PROTO,
ITEM_NEXT,
ZERO,
};
@@ -4804,6 +4806,14 @@ static const struct token token_list[] = {
.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_vxlan_gpe,
hdr.vni)),
},
+ [ITEM_VXLAN_GPE_PROTO] = {
+ .name = "protocol",
+ .help = "VXLAN-GPE next protocol",
+ .next = NEXT(item_vxlan_gpe, NEXT_ENTRY(COMMON_UNSIGNED),
+ item_param),
+ .args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_vxlan_gpe,
+ protocol)),
+ },
[ITEM_ARP_ETH_IPV4] = {
.name = "arp_eth_ipv4",
.help = "match ARP header for Ethernet/IPv4",