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