5 #ifndef _RTE_FLOW_CLASSIFY_H_ 6 #define _RTE_FLOW_CLASSIFY_H_ 46 #include <rte_compat.h> 58 extern int librte_flow_classify_logtype;
60 #define RTE_FLOW_CLASSIFY_LOG(level, ...) \ 61 rte_log(RTE_LOG_ ## level, \ 62 librte_flow_classify_logtype, \ 63 RTE_FMT("%s(): " RTE_FMT_HEAD(__VA_ARGS__,), \ 65 RTE_FMT_TAIL(__VA_ARGS__,))) 67 #ifndef RTE_FLOW_CLASSIFY_TABLE_MAX 68 #define RTE_FLOW_CLASSIFY_TABLE_MAX 32 72 struct rte_flow_classifier;
75 struct rte_flow_classify_rule;
145 struct rte_flow_classify_ipv4_5tuple_stats {
161 struct rte_flow_classifier *
236 struct rte_flow_classify_rule *
257 struct rte_flow_classify_rule *rule);
280 const uint16_t nb_pkts,
281 struct rte_flow_classify_rule *rule,
__rte_experimental int rte_flow_classify_validate(struct rte_flow_classifier *cls, const struct rte_flow_attr *attr, const struct rte_flow_item pattern[], const struct rte_flow_action actions[], struct rte_flow_error *error)
__rte_experimental struct rte_flow_classify_rule * rte_flow_classify_table_entry_add(struct rte_flow_classifier *cls, const struct rte_flow_attr *attr, const struct rte_flow_item pattern[], const struct rte_flow_action actions[], int *key_found, struct rte_flow_error *error)
__rte_experimental int rte_flow_classify_table_entry_delete(struct rte_flow_classifier *cls, struct rte_flow_classify_rule *rule)
rte_flow_classify_table_type
__rte_experimental int rte_flow_classify_table_create(struct rte_flow_classifier *cls, struct rte_flow_classify_table_params *params)
struct rte_table_ops * ops
__rte_experimental struct rte_flow_classifier * rte_flow_classifier_create(struct rte_flow_classifier_params *params)
__rte_experimental int rte_flow_classifier_free(struct rte_flow_classifier *cls)
rte_flow_classify_rule_type
__rte_experimental int rte_flow_classifier_query(struct rte_flow_classifier *cls, struct rte_mbuf **pkts, const uint16_t nb_pkts, struct rte_flow_classify_rule *rule, struct rte_flow_classify_stats *stats)