#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.
| void ieee802_11_print_ssid | ( | char * | buf, |
| const u8 * | ssid, | ||
| u8 | len | ||
| ) |
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.