#include "utils/includes.h"
#include "utils/common.h"
#include "utils/eloop.h"
#include "crypto/crypto.h"
#include "drivers/driver.h"
#include "common/ieee802_11_defs.h"
#include "common/ieee802_11_common.h"
#include "common/wpa_ctrl.h"
#include "radius/radius.h"
#include "radius/radius_client.h"
#include "hostapd.h"
#include "beacon.h"
#include "ieee802_11_auth.h"
#include "sta_info.h"
#include "ieee802_1x.h"
#include "wpa_auth.h"
#include "wmm.h"
#include "ap_list.h"
#include "accounting.h"
#include "ap_config.h"
#include "ap_mlme.h"
#include "ieee802_11.h"
Go to the source code of this file.
Functions | |
static u16 | auth_shared_key (struct hostapd_data *hapd, struct sta_info *sta, u16 auth_transaction, const u8 *challenge, int iswep) |
static u16 | check_assoc_ies (struct hostapd_data *hapd, struct sta_info *sta, const u8 *ies, size_t ies_len, int reassoc) |
static u16 | check_ssid (struct hostapd_data *hapd, struct sta_info *sta, const u8 *ssid_ie, size_t ssid_ie_len) |
static u16 | check_wmm (struct hostapd_data *hapd, struct sta_info *sta, const u8 *wmm_ie, size_t wmm_ie_len) |
static u16 | copy_supp_rates (struct hostapd_data *hapd, struct sta_info *sta, struct ieee802_11_elems *elems) |
static void | handle_action (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len) |
static void | handle_assoc (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len, int reassoc) |
static void | handle_assoc_cb (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len, int reassoc, int ok) |
static void | handle_auth (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len) |
static void | handle_auth_cb (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len, int ok) |
static void | handle_beacon (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len, struct hostapd_frame_info *fi) |
static void | handle_deauth (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len) |
static void | handle_disassoc (struct hostapd_data *hapd, const struct ieee80211_mgmt *mgmt, size_t len) |
u8 * | hostapd_eid_ext_supp_rates (struct hostapd_data *hapd, u8 *eid) |
u8 * | hostapd_eid_supp_rates (struct hostapd_data *hapd, u8 *eid) |
static int | hostapd_get_aid (struct hostapd_data *hapd, struct sta_info *sta) |
u16 | hostapd_own_capab_info (struct hostapd_data *hapd, struct sta_info *sta, int probe) |
void | hostapd_tx_status (struct hostapd_data *hapd, const u8 *addr, const u8 *buf, size_t len, int ack) |
int | ieee802_11_get_mib (struct hostapd_data *hapd, char *buf, size_t buflen) |
int | ieee802_11_get_mib_sta (struct hostapd_data *hapd, struct sta_info *sta, char *buf, size_t buflen) |
void | ieee802_11_mgmt (struct hostapd_data *hapd, const u8 *buf, size_t len, struct hostapd_frame_info *fi) |
void | ieee802_11_mgmt_cb (struct hostapd_data *hapd, const u8 *buf, size_t len, u16 stype, int ok) |
void | ieee802_11_print_ssid (char *buf, const u8 *ssid, u8 len) |
void | ieee802_11_rx_from_unknown (struct hostapd_data *hapd, const u8 *src, int wds) |
void | ieee802_11_send_deauth (struct hostapd_data *hapd, const u8 *addr, u16 reason) |
static void | send_assoc_resp (struct hostapd_data *hapd, struct sta_info *sta, u16 status_code, int reassoc, const u8 *ies, size_t ies_len) |
static void | send_auth_reply (struct hostapd_data *hapd, const u8 *dst, const u8 *bssid, u16 auth_alg, u16 auth_transaction, u16 resp, const u8 *ies, size_t ies_len) |
static void | send_deauth (struct hostapd_data *hapd, const u8 *addr, u16 reason_code) |
static u16 auth_shared_key | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
u16 | auth_transaction, | |||
const u8 * | challenge, | |||
int | iswep | |||
) | [static] |
Definition at line 220 of file ieee802_11.c.
static u16 check_assoc_ies | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
const u8 * | ies, | |||
size_t | ies_len, | |||
int | reassoc | |||
) | [static] |
Definition at line 639 of file ieee802_11.c.
static u16 check_ssid | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
const u8 * | ssid_ie, | |||
size_t | ssid_ie_len | |||
) | [static] |
Definition at line 556 of file ieee802_11.c.
static u16 check_wmm | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
const u8 * | wmm_ie, | |||
size_t | wmm_ie_len | |||
) | [static] |
Definition at line 577 of file ieee802_11.c.
static u16 copy_supp_rates | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
struct ieee802_11_elems * | elems | |||
) | [static] |
Definition at line 595 of file ieee802_11.c.
static void handle_action | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len | |||
) | [static] |
Definition at line 1304 of file ieee802_11.c.
static void handle_assoc | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len, | |||
int | reassoc | |||
) | [static] |
Definition at line 884 of file ieee802_11.c.
static void handle_assoc_cb | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len, | |||
int | reassoc, | |||
int | ok | |||
) | [static] |
Definition at line 1526 of file ieee802_11.c.
static void handle_auth | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len | |||
) | [static] |
Definition at line 344 of file ieee802_11.c.
static void handle_auth_cb | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len, | |||
int | ok | |||
) | [static] |
Definition at line 1485 of file ieee802_11.c.
static void handle_beacon | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len, | |||
struct hostapd_frame_info * | fi | |||
) | [static] |
Definition at line 1142 of file ieee802_11.c.
static void handle_deauth | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len | |||
) | [static] |
Definition at line 1105 of file ieee802_11.c.
static void handle_disassoc | ( | struct hostapd_data * | hapd, | |
const struct ieee80211_mgmt * | mgmt, | |||
size_t | len | |||
) | [static] |
Definition at line 1056 of file ieee802_11.c.
u8* hostapd_eid_ext_supp_rates | ( | struct hostapd_data * | hapd, | |
u8 * | eid | |||
) |
Definition at line 73 of file ieee802_11.c.
u8* hostapd_eid_supp_rates | ( | struct hostapd_data * | hapd, | |
u8 * | eid | |||
) |
Definition at line 42 of file ieee802_11.c.
static int hostapd_get_aid | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta | |||
) | [static] |
Definition at line 523 of file ieee802_11.c.
u16 hostapd_own_capab_info | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
int | probe | |||
) |
Definition at line 104 of file ieee802_11.c.
void hostapd_tx_status | ( | struct hostapd_data * | hapd, | |
const u8 * | addr, | |||
const u8 * | buf, | |||
size_t | len, | |||
int | ack | |||
) |
Definition at line 1709 of file ieee802_11.c.
int ieee802_11_get_mib | ( | struct hostapd_data * | hapd, | |
char * | buf, | |||
size_t | buflen | |||
) |
Definition at line 1694 of file ieee802_11.c.
int ieee802_11_get_mib_sta | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
char * | buf, | |||
size_t | buflen | |||
) |
Definition at line 1701 of file ieee802_11.c.
void ieee802_11_mgmt | ( | struct hostapd_data * | hapd, | |
const u8 * | buf, | |||
size_t | len, | |||
struct hostapd_frame_info * | fi | |||
) |
ieee802_11_mgmt - process incoming IEEE 802.11 management frames : hostapd BSS data structure (the BSS to which the management frame was sent to) : management frame data (starting from IEEE 802.11 header) : length of frame data in octets : meta data about received frame (signal level, etc.)
Process all incoming IEEE 802.11 management frames. This will be called for each frame received from the kernel driver through wlan::ap interface. In addition, it can be called to re-inserted pending frames (e.g., when using external RADIUS server as an MAC ACL).
Definition at line 1410 of file ieee802_11.c.
void ieee802_11_mgmt_cb | ( | struct hostapd_data * | hapd, | |
const u8 * | buf, | |||
size_t | len, | |||
u16 | stype, | |||
int | ok | |||
) |
ieee802_11_mgmt_cb - Process management frame TX status callback : hostapd BSS data structure (the BSS from which the management frame was sent from) : management frame data (starting from IEEE 802.11 header) : length of frame data in octets : management frame subtype from frame control field : Whether the frame was ACK'ed
Definition at line 1659 of file ieee802_11.c.
Definition at line 178 of file ieee802_11.c.
void ieee802_11_rx_from_unknown | ( | struct hostapd_data * | hapd, | |
const u8 * | src, | |||
int | wds | |||
) |
Definition at line 1739 of file ieee802_11.c.
void ieee802_11_send_deauth | ( | struct hostapd_data * | hapd, | |
const u8 * | addr, | |||
u16 | reason | |||
) |
ieee802_11_send_deauth - Send Deauthentication frame : hostapd BSS data : Address of the destination STA : Reason code for Deauthentication
Definition at line 199 of file ieee802_11.c.
static void send_assoc_resp | ( | struct hostapd_data * | hapd, | |
struct sta_info * | sta, | |||
u16 | status_code, | |||
int | reassoc, | |||
const u8 * | ies, | |||
size_t | ies_len | |||
) | [static] |
Definition at line 823 of file ieee802_11.c.
static void send_auth_reply | ( | struct hostapd_data * | hapd, | |
const u8 * | dst, | |||
const u8 * | bssid, | |||
u16 | auth_alg, | |||
u16 | auth_transaction, | |||
u16 | resp, | |||
const u8 * | ies, | |||
size_t | ies_len | |||
) | [static] |
Definition at line 279 of file ieee802_11.c.
static void send_deauth | ( | struct hostapd_data * | hapd, | |
const u8 * | addr, | |||
u16 | reason_code | |||
) | [static] |
Definition at line 801 of file ieee802_11.c.