#ifndef WIFI_PROMISC_H #define WIFI_PROMISC_H #include #include "FreeRTOS.h" #include "wifi/wifi_conf.h" #ifdef __cplusplus extern "C" { #endif // Promisc mode function declarations void promisc_deinit(void *padapter); int promisc_recv_func(void *padapter, void *rframe); int promisc_recv_lens_func(void *padapter, u8 *payload, u8 plen); int promisc_filter_retransmit_pkt(u8 enable, u8 filter_interval_ms); int promisc_filter_with_len(u16 len); int promisc_set(rtw_rcr_level_t enabled, void (*callback)(unsigned char *, unsigned int, void *), unsigned char len_used); unsigned char is_promisc_enabled(void); int promisc_get_fixed_channel(void *fixed_bssid, u8 *ssid, int *ssid_length); void promisc_filter_by_ap_and_phone_mac(u8 enable, void *ap_mac, void *phone_mac); // Packet filter functions #ifdef CONFIG_PROMISC void promisc_init_packet_filter(void); int promisc_add_packet_filter(u8 filter_id, rtw_packet_filter_pattern_t *patt, rtw_packet_filter_rule_t rule); int promisc_enable_packet_filter(u8 filter_id); int promisc_disable_packet_filter(u8 filter_id); int promisc_remove_packet_filter(u8 filter_id); #endif // Command function void cmd_promisc(int argc, char **argv); // Constants #define MAX_PACKET_FILTER_INFO 5 #define FILTER_ID_INIT_VALUE 10 #ifdef CONFIG_INIC_CMD_RSP // maximum packets for each channel #define MAX_INIC_FRAME_NUM 50 #endif #ifdef __cplusplus } #endif #endif /* WIFI_PROMISC_H */