xref: /freebsd/contrib/wpa/src/ap/rrm.h (revision a90b9d0159070121c221b966469c3e36d912bf82)
1 /*
2  * hostapd / Radio Measurement (RRM)
3  * Copyright(c) 2013 - 2016 Intel Mobile Communications GmbH.
4  * Copyright(c) 2011 - 2016 Intel Corporation. All rights reserved.
5  *
6  * This software may be distributed under the terms of the BSD license.
7  * See README for more details.
8  */
9 
10 #ifndef RRM_H
11 #define RRM_H
12 
13 /*
14  * Max measure request length is 255, -6 of the body we have 249 for the
15  * neighbor report elements. Each neighbor report element is at least 2 + 13
16  * bytes, so we can't have more than 16 responders in the request.
17  */
18 #define RRM_RANGE_REQ_MAX_RESPONDERS 16
19 
20 void hostapd_handle_radio_measurement(struct hostapd_data *hapd,
21 				      const u8 *buf, size_t len);
22 int hostapd_send_lci_req(struct hostapd_data *hapd, const u8 *addr);
23 int hostapd_send_range_req(struct hostapd_data *hapd, const u8 *addr,
24 			   u16 random_interval, u8 min_ap,
25 			   const u8 *responders, unsigned int n_responders);
26 void hostapd_clean_rrm(struct hostapd_data *hapd);
27 int hostapd_send_beacon_req(struct hostapd_data *hapd, const u8 *addr,
28 			    u8 req_mode, const struct wpabuf *req);
29 void hostapd_rrm_beacon_req_tx_status(struct hostapd_data *hapd,
30 				      const struct ieee80211_mgmt *mgmt,
31 				      size_t len, int ok);
32 int hostapd_send_link_measurement_req(struct hostapd_data *hapd,
33 				      const u8 *addr);
34 
35 #endif /* RRM_H */
36