1 /* 2 * SPDX-License-Identifier: BSD-3-Clause 3 * Copyright(c) 2010-2020 Intel Corporation 4 */ 5 6 #ifndef _IGC_FILTER_H_ 7 #define _IGC_FILTER_H_ 8 9 #include <rte_ethdev.h> 10 #include <rte_ethdev_core.h> 11 #include <rte_ethdev_driver.h> 12 #include <rte_eth_ctrl.h> 13 14 #include "igc_ethdev.h" 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 int igc_add_ethertype_filter(struct rte_eth_dev *dev, 21 const struct igc_ethertype_filter *filter); 22 int igc_del_ethertype_filter(struct rte_eth_dev *dev, 23 const struct igc_ethertype_filter *filter); 24 int igc_add_ntuple_filter(struct rte_eth_dev *dev, 25 const struct igc_ntuple_filter *tuple); 26 int igc_del_ntuple_filter(struct rte_eth_dev *dev, 27 const struct igc_ntuple_filter *tuple); 28 int igc_set_syn_filter(struct rte_eth_dev *dev, 29 const struct igc_syn_filter *filter); 30 void igc_clear_syn_filter(struct rte_eth_dev *dev); 31 void igc_clear_all_filter(struct rte_eth_dev *dev); 32 int 33 eth_igc_filter_ctrl(struct rte_eth_dev *dev, enum rte_filter_type filter_type, 34 enum rte_filter_op filter_op, void *arg); 35 36 #ifdef __cplusplus 37 } 38 #endif 39 40 #endif /* IGC_FILTER_H_ */ 41