xref: /freebsd/contrib/wpa/src/ap/ctrl_iface_ap.h (revision a90b9d0159070121c221b966469c3e36d912bf82)
1e28a4053SRui Paulo /*
2e28a4053SRui Paulo  * Control interface for shared AP commands
35b9c547cSRui Paulo  * Copyright (c) 2004-2013, Jouni Malinen <j@w1.fi>
4e28a4053SRui Paulo  *
5f05cddf9SRui Paulo  * This software may be distributed under the terms of the BSD license.
6f05cddf9SRui Paulo  * See README for more details.
7e28a4053SRui Paulo  */
8e28a4053SRui Paulo 
9e28a4053SRui Paulo #ifndef CTRL_IFACE_AP_H
10e28a4053SRui Paulo #define CTRL_IFACE_AP_H
11e28a4053SRui Paulo 
12e28a4053SRui Paulo int hostapd_ctrl_iface_sta_first(struct hostapd_data *hapd,
13e28a4053SRui Paulo 				 char *buf, size_t buflen);
14e28a4053SRui Paulo int hostapd_ctrl_iface_sta(struct hostapd_data *hapd, const char *txtaddr,
15e28a4053SRui Paulo 			   char *buf, size_t buflen);
16e28a4053SRui Paulo int hostapd_ctrl_iface_sta_next(struct hostapd_data *hapd, const char *txtaddr,
17e28a4053SRui Paulo 				char *buf, size_t buflen);
18f05cddf9SRui Paulo int hostapd_ctrl_iface_deauthenticate(struct hostapd_data *hapd,
19f05cddf9SRui Paulo 				      const char *txtaddr);
20f05cddf9SRui Paulo int hostapd_ctrl_iface_disassociate(struct hostapd_data *hapd,
21f05cddf9SRui Paulo 				    const char *txtaddr);
22780fb4a2SCy Schubert int hostapd_ctrl_iface_signature(struct hostapd_data *hapd,
23780fb4a2SCy Schubert 				 const char *txtaddr,
24780fb4a2SCy Schubert 				 char *buf, size_t buflen);
25780fb4a2SCy Schubert int hostapd_ctrl_iface_poll_sta(struct hostapd_data *hapd,
26780fb4a2SCy Schubert 				const char *txtaddr);
275b9c547cSRui Paulo int hostapd_ctrl_iface_status(struct hostapd_data *hapd, char *buf,
285b9c547cSRui Paulo 			      size_t buflen);
295b9c547cSRui Paulo int hostapd_parse_csa_settings(const char *pos,
305b9c547cSRui Paulo 			       struct csa_settings *settings);
315b9c547cSRui Paulo int hostapd_ctrl_iface_stop_ap(struct hostapd_data *hapd);
32780fb4a2SCy Schubert int hostapd_ctrl_iface_pmksa_list(struct hostapd_data *hapd, char *buf,
33780fb4a2SCy Schubert 				  size_t len);
34780fb4a2SCy Schubert void hostapd_ctrl_iface_pmksa_flush(struct hostapd_data *hapd);
3585732ac8SCy Schubert int hostapd_ctrl_iface_pmksa_add(struct hostapd_data *hapd, char *cmd);
3685732ac8SCy Schubert int hostapd_ctrl_iface_pmksa_list_mesh(struct hostapd_data *hapd,
3785732ac8SCy Schubert 				       const u8 *addr, char *buf, size_t len);
3885732ac8SCy Schubert void * hostapd_ctrl_iface_pmksa_create_entry(const u8 *aa, char *cmd);
39e28a4053SRui Paulo 
40*a90b9d01SCy Schubert int hostapd_ctrl_iface_disassoc_imminent(struct hostapd_data *hapd,
41*a90b9d01SCy Schubert 					 const char *cmd);
42*a90b9d01SCy Schubert int hostapd_ctrl_iface_ess_disassoc(struct hostapd_data *hapd,
43*a90b9d01SCy Schubert 				    const char *cmd);
44*a90b9d01SCy Schubert int hostapd_ctrl_iface_bss_tm_req(struct hostapd_data *hapd,
45*a90b9d01SCy Schubert 				  const char *cmd);
46*a90b9d01SCy Schubert int hostapd_ctrl_iface_acl_add_mac(struct mac_acl_entry **acl, int *num,
47*a90b9d01SCy Schubert 				   const char *cmd);
48*a90b9d01SCy Schubert int hostapd_ctrl_iface_acl_del_mac(struct mac_acl_entry **acl, int *num,
49*a90b9d01SCy Schubert 				   const char *txtaddr);
50*a90b9d01SCy Schubert void hostapd_ctrl_iface_acl_clear_list(struct mac_acl_entry **acl,
51*a90b9d01SCy Schubert 				       int *num);
52*a90b9d01SCy Schubert int hostapd_ctrl_iface_acl_show_mac(struct mac_acl_entry *acl, int num,
53*a90b9d01SCy Schubert 				    char *buf, size_t buflen);
54*a90b9d01SCy Schubert int hostapd_disassoc_accept_mac(struct hostapd_data *hapd);
55*a90b9d01SCy Schubert int hostapd_disassoc_deny_mac(struct hostapd_data *hapd);
56*a90b9d01SCy Schubert 
57e28a4053SRui Paulo #endif /* CTRL_IFACE_AP_H */
58