#include <rte_gtp.h>
#include <rte_l2tpv2.h>
#include <rte_ppp.h>
+#include <rte_gre.h>
#ifdef __cplusplus
extern "C" {
* See struct rte_flow_item_ppp.
*/
RTE_FLOW_ITEM_TYPE_PPP,
+
+ /**
+ * Matches GRE optional fields.
+ *
+ * See struct rte_flow_item_gre_opt.
+ */
+ RTE_FLOW_ITEM_TYPE_GRE_OPTION,
};
/**
};
#endif
+/**
+ * RTE_FLOW_ITEM_TYPE_GRE_OPTION.
+ *
+ * Matches GRE optional fields in header.
+ */
+struct rte_flow_item_gre_opt {
+ struct rte_gre_hdr_opt_checksum_rsvd checksum_rsvd;
+ struct rte_gre_hdr_opt_key key;
+ struct rte_gre_hdr_opt_sequence sequence;
+};
+
/**
* RTE_FLOW_ITEM_TYPE_FUZZY
*
RTE_FLOW_ACTION_TYPE_SECURITY,
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_SET_MPLS_TTL ("MPLS TTL") as defined by the
* OpenFlow Switch Specification.
*
RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL,
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_DEC_MPLS_TTL ("decrement MPLS TTL") as defined
* by the OpenFlow Switch Specification.
*
RTE_FLOW_ACTION_TYPE_OF_DEC_MPLS_TTL,
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_SET_NW_TTL ("IP TTL") as defined by the OpenFlow
* Switch Specification.
*
RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_DEC_NW_TTL ("decrement IP TTL") as defined by
* the OpenFlow Switch Specification.
*
RTE_FLOW_ACTION_TYPE_OF_DEC_NW_TTL,
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_COPY_TTL_OUT ("copy TTL "outwards" -- from
* next-to-outermost to outermost") as defined by the OpenFlow
* Switch Specification.
RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_OUT,
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Implements OFPAT_COPY_TTL_IN ("copy TTL "inwards" -- from
* outermost to next-to-outermost") as defined by the OpenFlow
* Switch Specification.
RTE_FLOW_ACTION_TYPE_RAW_DECAP,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv4 source address in the outermost IPv4 header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv4 destination address in the outermost IPv4 header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
RTE_FLOW_ACTION_TYPE_SET_IPV4_DST,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv6 source address in the outermost IPv6 header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv6 destination address in the outermost IPv6 header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
RTE_FLOW_ACTION_TYPE_SET_IPV6_DST,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify source port number in the outermost TCP/UDP header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_TCP
RTE_FLOW_ACTION_TYPE_SET_TP_SRC,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify destination port number in the outermost TCP/UDP header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_TCP
RTE_FLOW_ACTION_TYPE_MAC_SWAP,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Decrease TTL value directly
*
* No associated configuration structure.
RTE_FLOW_ACTION_TYPE_DEC_TTL,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Set TTL value
*
* See struct rte_flow_action_set_ttl
RTE_FLOW_ACTION_TYPE_SET_TTL,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Set source MAC address from matched flow.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_ETH,
RTE_FLOW_ACTION_TYPE_SET_MAC_SRC,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Set destination MAC address from matched flow.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_ETH,
RTE_FLOW_ACTION_TYPE_SET_MAC_DST,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Increase sequence number in the outermost TCP header.
*
* Action configuration specifies the value to increase
RTE_FLOW_ACTION_TYPE_INC_TCP_SEQ,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Decrease sequence number in the outermost TCP header.
*
* Action configuration specifies the value to decrease
RTE_FLOW_ACTION_TYPE_DEC_TCP_SEQ,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Increase acknowledgment number in the outermost TCP header.
*
* Action configuration specifies the value to increase
RTE_FLOW_ACTION_TYPE_INC_TCP_ACK,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Decrease acknowledgment number in the outermost TCP header.
*
* Action configuration specifies the value to decrease
RTE_FLOW_ACTION_TYPE_DEC_TCP_ACK,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Set Tag.
*
* Tag is for internal flow usage only and
RTE_FLOW_ACTION_TYPE_SET_TAG,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Set metadata on ingress or egress path.
*
* See struct rte_flow_action_set_meta.
RTE_FLOW_ACTION_TYPE_SET_META,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv4 DSCP in the outermost IP header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
RTE_FLOW_ACTION_TYPE_SET_IPV4_DSCP,
/**
+ * @warning This is a legacy action.
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* Modify IPv6 DSCP in the outermost IP header.
*
* If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
};
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL
*
* Implements OFPAT_SET_MPLS_TTL ("MPLS TTL") as defined by the OpenFlow
};
/**
+ * @deprecated
+ * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
+ *
* RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL
*
* Implements OFPAT_SET_NW_TTL ("IP TTL") as defined by the OpenFlow Switch