5 #ifndef _RTE_FLOW_CLASSIFY_H_ 6 #define _RTE_FLOW_CLASSIFY_H_ 46 #include <rte_compat.h> 54 extern int librte_flow_classify_logtype;
56 #define RTE_FLOW_CLASSIFY_LOG(level, ...) \ 57 rte_log(RTE_LOG_ ## level, \ 58 librte_flow_classify_logtype, \ 59 RTE_FMT("%s(): " RTE_FMT_HEAD(__VA_ARGS__,), \ 61 RTE_FMT_TAIL(__VA_ARGS__,))) 63 #ifndef RTE_FLOW_CLASSIFY_TABLE_MAX 64 #define RTE_FLOW_CLASSIFY_TABLE_MAX 32 68 struct rte_flow_classifier;
71 struct rte_flow_classify_rule;
141 struct rte_flow_classify_ipv4_5tuple_stats {
157 struct rte_flow_classifier *
232 struct rte_flow_classify_rule *
253 struct rte_flow_classify_rule *rule);
276 const uint16_t nb_pkts,
277 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)