[dpdk-dev] [RFC v2 1/3] ethdev: add flow api actions to modify IP addresses

Xiaoyu Min jackmin at mellanox.com
Tue Sep 18 09:56:06 CEST 2018


>  
>  static int
> diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h
> index f8ba71cdb..48c3c606e 100644
> --- a/lib/librte_ethdev/rte_flow.h
> +++ b/lib/librte_ethdev/rte_flow.h
> @@ -1505,6 +1505,34 @@ enum rte_flow_action_type {
>  	 * error.
>  	 */
>  	RTE_FLOW_ACTION_TYPE_NVGRE_DECAP,
> +
> +	/**
> +	 * Modify IPv4 source address
> +	 *
> +	 * See struct rte_flow_action_set_ipv4.
> +	 */
> +	RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC,
> +
> +	/**
> +	 * Modify IPv4 destination address
> +	 *
> +	 * See struct rte_flow_action_set_ipv4.
> +	 */
> +	RTE_FLOW_ACTION_TYPE_SET_IPV4_DST,
> +
> +	/**
> +	 * Modify IPv6 source address
> +	 *
> +	 * See struct rte_flow_action_set_ipv6.
> +	 */
> +	RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC,
> +
> +	/**
> +	 * Modify IPv6 destination address
> +	 *
> +	 * See struct rte_flow_action_set_ipv6.
> +	 */
> +	RTE_FLOW_ACTION_TYPE_SET_IPV6_DST,
>  };
Hey Rahul,

Sorry for the late response. Just a small comment:

We would need the corresponding RTE_FLOW_ITEM_TYPE_* specified in pattern.
i.e RTE_FLOW_ITEM_TYPE_IPV6 must be in pattern for action RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC
otherwise RTE_FLOW_ERROR_TYPE_ACTION return.
Would be better to document this in comments and __rte_flow.rst__

What do you think?

-Jack


More information about the dev mailing list