1/*
2 * wpa_supplicant - Off-channel Action frame TX/RX
3 * Copyright (c) 2009-2010, Atheros Communications
4 * Copyright (c) 2011, Qualcomm Atheros
5 *
6 * This software may be distributed under the terms of the BSD license.
7 * See README for more details.
8 */
9
10#ifndef OFFCHANNEL_H
11#define OFFCHANNEL_H
12
13int offchannel_send_action(struct wpa_supplicant *wpa_s, unsigned int freq,
14			   const u8 *dst, const u8 *src, const u8 *bssid,
15			   const u8 *buf, size_t len, unsigned int wait_time,
16			   void (*tx_cb)(struct wpa_supplicant *wpa_s,
17					 unsigned int freq, const u8 *dst,
18					 const u8 *src, const u8 *bssid,
19					 const u8 *data, size_t data_len,
20					 enum offchannel_send_action_result
21					 result),
22			   int no_cck);
23void offchannel_send_action_done(struct wpa_supplicant *wpa_s);
24void offchannel_remain_on_channel_cb(struct wpa_supplicant *wpa_s,
25				     unsigned int freq, unsigned int duration);
26void offchannel_cancel_remain_on_channel_cb(struct wpa_supplicant *wpa_s,
27					    unsigned int freq);
28void offchannel_deinit(struct wpa_supplicant *wpa_s);
29void offchannel_send_action_tx_status(
30	struct wpa_supplicant *wpa_s, const u8 *dst, const u8 *data,
31	size_t data_len, enum offchannel_send_action_result result);
32const void * offchannel_pending_action_tx(struct wpa_supplicant *wpa_s);
33void offchannel_clear_pending_action_tx(struct wpa_supplicant *wpa_s);
34
35#endif /* OFFCHANNEL_H */
36