118334Speter/* 250397Sobrien * WPA Supplicant - Basic AP mode support routines 318334Speter * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi> 418334Speter * Copyright (c) 2009, Atheros Communications 518334Speter * 618334Speter * This software may be distributed under the terms of the BSD license. 718334Speter * See README for more details. 818334Speter */ 918334Speter 1018334Speter#ifndef AP_H 1118334Speter#define AP_H 1218334Speter 1318334Speterint wpa_supplicant_create_ap(struct wpa_supplicant *wpa_s, 1418334Speter struct wpa_ssid *ssid); 1518334Spetervoid wpa_supplicant_ap_deinit(struct wpa_supplicant *wpa_s); 1618334Spetervoid wpa_supplicant_ap_rx_eapol(struct wpa_supplicant *wpa_s, 1718334Speter const u8 *src_addr, const u8 *buf, size_t len); 1818334Speterint wpa_supplicant_ap_wps_pbc(struct wpa_supplicant *wpa_s, const u8 *bssid, 1918334Speter const u8 *p2p_dev_addr); 2018334Speterint wpa_supplicant_ap_wps_pin(struct wpa_supplicant *wpa_s, const u8 *bssid, 2118334Speter const char *pin, char *buf, size_t buflen, 2218334Speter int timeout); 2318334Speterint wpa_supplicant_ap_wps_cancel(struct wpa_supplicant *wpa_s); 2418334Spetervoid wpas_wps_ap_pin_disable(struct wpa_supplicant *wpa_s); 2518334Speterconst char * wpas_wps_ap_pin_random(struct wpa_supplicant *wpa_s, int timeout); 2618334Speterconst char * wpas_wps_ap_pin_get(struct wpa_supplicant *wpa_s); 2718334Speterint wpas_wps_ap_pin_set(struct wpa_supplicant *wpa_s, const char *pin, 2818334Speter int timeout); 2918334Speterint ap_ctrl_iface_sta_first(struct wpa_supplicant *wpa_s, 3018334Speter char *buf, size_t buflen); 3118334Speterint ap_ctrl_iface_sta(struct wpa_supplicant *wpa_s, const char *txtaddr, 3218334Speter char *buf, size_t buflen); 3318334Speterint ap_ctrl_iface_sta_next(struct wpa_supplicant *wpa_s, const char *txtaddr, 3418334Speter char *buf, size_t buflen); 3518334Speterint ap_ctrl_iface_sta_deauthenticate(struct wpa_supplicant *wpa_s, 3618334Speter const char *txtaddr); 3718334Speterint ap_ctrl_iface_sta_disassociate(struct wpa_supplicant *wpa_s, 3818334Speter const char *txtaddr); 3918334Speterint ap_ctrl_iface_wpa_get_status(struct wpa_supplicant *wpa_s, char *buf, 4018334Speter size_t buflen, int verbose); 4118334Spetervoid ap_tx_status(void *ctx, const u8 *addr, 4218334Speter const u8 *buf, size_t len, int ack); 4318334Spetervoid ap_eapol_tx_status(void *ctx, const u8 *dst, 4418334Speter const u8 *data, size_t len, int ack); 4518334Spetervoid ap_client_poll_ok(void *ctx, const u8 *addr); 4618334Spetervoid ap_rx_from_unknown_sta(void *ctx, const u8 *addr, int wds); 4718334Spetervoid ap_mgmt_rx(void *ctx, struct rx_mgmt *rx_mgmt); 4818334Spetervoid ap_mgmt_tx_cb(void *ctx, const u8 *buf, size_t len, u16 stype, int ok); 4918334Speterint wpa_supplicant_ap_update_beacon(struct wpa_supplicant *wpa_s); 5018334Speterint wpa_supplicant_ap_mac_addr_filter(struct wpa_supplicant *wpa_s, 5118334Speter const u8 *addr); 5218334Spetervoid wpa_supplicant_ap_pwd_auth_fail(struct wpa_supplicant *wpa_s); 5318334Spetervoid wpas_ap_ch_switch(struct wpa_supplicant *wpa_s, int freq, int ht, 5418334Speter int offset); 5518334Speter 5618334Speter#endif /* AP_H */ 5718334Speter