#include <linux/config.h>
#include <linux/version.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/proc_fs.h>
#include <linux/if_arp.h>
#include <linux/delay.h>
#include <linux/random.h>
#include <linux/tqueue.h>
#include <linux/kmod.h>
#include <linux/rtnetlink.h>
#include "hostap_wext.h"
#include <asm/uaccess.h>
#include "hostap_wlan.h"
#include "hostap_80211.h"
#include "hostap_ap.h"
#include "hostap.h"
#include "hostap_crypt.h"
#include "hostap_crypt.c"
#include "hostap_ap.c"
#include "hostap_info.c"
#include "hostap_ioctl.c"
#include "hostap_proc.c"
#include "hostap_80211_rx.c"
Include dependency graph for hostap.c:
Go to the source code of this file.
Defines | |
#define | TX_TIMEOUT (2 * HZ) |
#define | PRISM2_MAX_FRAME_SIZE 2304 |
#define | PRISM2_MIN_MTU 256 |
#define | PRISM2_MAX_MTU (PRISM2_MAX_FRAME_SIZE - (6 /* LLC */ + 8 /* WEP */)) |
Functions | |
MODULE_AUTHOR ("Jouni Malinen") | |
MODULE_DESCRIPTION ("Host AP common routines") | |
MODULE_LICENSE ("GPL") | |
static int | prism2_wds_add (local_info_t *local, u8 *remote_addr, int rtnl_locked) |
static int | prism2_wds_del (local_info_t *local, u8 *remote_addr, int rtnl_locked, int do_not_remove) |
static int | prism2_hostapd (struct ap_data *ap, struct prism2_hostapd_param *param) |
static void * | ap_crypt_get_ptrs (struct ap_data *ap, u8 *addr, int permanent, struct prism2_crypt_data ***crypt) |
static void | ap_control_kickall (struct ap_data *ap) |
static int | ap_control_add_mac (struct mac_restrictions *mac_restrictions, u8 *mac) |
static int | ap_control_del_mac (struct mac_restrictions *mac_restrictions, u8 *mac) |
static void | ap_control_flush_macs (struct mac_restrictions *mac_restrictions) |
static int | ap_control_kick_mac (struct ap_data *ap, struct net_device *dev, u8 *mac) |
net_device * | hostap_add_interface (struct local_info *local, int type, int rtnl_locked, const char *name) |
void | hostap_remove_interface (struct net_device *dev, int rtnl_locked, int remove_from_list) |
static int | prism2_wds_special_addr (u8 *addr) |
u16 | hostap_tx_callback_register (local_info_t *local, void(*func)(struct sk_buff *, int ok, void *), void *data) |
int | hostap_tx_callback_unregister (local_info_t *local, u16 idx) |
int | hostap_set_word (struct net_device *dev, int rid, u16 val) |
int | hostap_set_string (struct net_device *dev, int rid, const char *val) |
u16 | hostap_get_porttype (local_info_t *local) |
int | hostap_set_encryption (local_info_t *local) |
int | hostap_set_antsel (local_info_t *local) |
int | hostap_set_roaming (local_info_t *local) |
int | hostap_set_auth_algs (local_info_t *local) |
void | hostap_dump_rx_header (const char *name, const struct hfa384x_rx_frame *rx) |
void | hostap_dump_tx_header (const char *name, const struct hfa384x_tx_frame *tx) |
void | hostap_netif_wake_queues (struct net_device *dev) |
void | hostap_netif_stop_queues (struct net_device *dev) |
int | hostap_80211_header_parse (struct sk_buff *skb, unsigned char *haddr) |
int | hostap_80211_prism_header_parse (struct sk_buff *skb, unsigned char *haddr) |
int | hostap_80211_get_hdrlen (u16 fc) |
net_device_stats * | hostap_get_stats (struct net_device *dev) |
static int | prism2_close (struct net_device *dev) |
static int | prism2_open (struct net_device *dev) |
void | hostap_set_multicast_list_queue (void *data) |
static void | hostap_set_multicast_list (struct net_device *dev) |
static int | prism2_change_mtu (struct net_device *dev, int new_mtu) |
void | hostap_setup_dev (struct net_device *dev, local_info_t *local, int main_dev) |
static int | hostap_enable_hostapd (local_info_t *local, int rtnl_locked) |
static int | hostap_disable_hostapd (local_info_t *local, int rtnl_locked) |
int | hostap_set_hostapd (local_info_t *local, int val, int rtnl_locked) |
static int __init | hostap_init (void) |
static void __exit | hostap_exit (void) |
EXPORT_SYMBOL (hostap_set_word) | |
EXPORT_SYMBOL (hostap_set_string) | |
EXPORT_SYMBOL (hostap_get_porttype) | |
EXPORT_SYMBOL (hostap_set_encryption) | |
EXPORT_SYMBOL (hostap_set_antsel) | |
EXPORT_SYMBOL (hostap_set_roaming) | |
EXPORT_SYMBOL (hostap_set_auth_algs) | |
EXPORT_SYMBOL (hostap_dump_rx_header) | |
EXPORT_SYMBOL (hostap_dump_tx_header) | |
EXPORT_SYMBOL (hostap_netif_wake_queues) | |
EXPORT_SYMBOL (hostap_netif_stop_queues) | |
EXPORT_SYMBOL (hostap_80211_header_parse) | |
EXPORT_SYMBOL (hostap_80211_prism_header_parse) | |
EXPORT_SYMBOL (hostap_80211_get_hdrlen) | |
EXPORT_SYMBOL (hostap_get_stats) | |
EXPORT_SYMBOL (hostap_setup_dev) | |
EXPORT_SYMBOL (hostap_proc) | |
EXPORT_SYMBOL (hostap_set_multicast_list_queue) | |
EXPORT_SYMBOL (hostap_set_hostapd) | |
EXPORT_SYMBOL (hostap_add_interface) | |
EXPORT_SYMBOL (hostap_remove_interface) | |
module_init (hostap_init) | |
module_exit (hostap_exit) | |
Variables | |
static unsigned char | rfc1042_header [] |
static unsigned char | bridge_tunnel_header [] |
proc_dir_entry * | hostap_proc |
|
|
Definition at line 61 of file hostap.c. Referenced by prism2_change_mtu(). |
|
|
Definition at line 56 of file hostap.c. Referenced by hostap_setup_dev(). |
|
|
|
Referenced by hostap_free_data(). |
|
|
Referenced by prism2_hostapd(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 720 of file hostap.c. References WLAN_FC_FROMDS, WLAN_FC_GET_STYPE, WLAN_FC_GET_TYPE, WLAN_FC_STYPE_ACK, WLAN_FC_STYPE_CTS, WLAN_FC_TODS, WLAN_FC_TYPE_CTRL, and WLAN_FC_TYPE_DATA. Referenced by click_tx_callback(), hostap_80211_rx(), hostap_ap_tx_cb(), hostap_rx_frame_decrypt(), hostap_rx_skb(), hostap_tx_callback(), and prism2_rx_80211(). |
|
Definition at line 698 of file hostap.c. Referenced by hostap_enable_hostapd(). |
|
Definition at line 705 of file hostap.c. References LWNG_CAP_DID_BASE. |
|
Definition at line 120 of file hostap.c. References hostap_setup_dev(). Referenced by hostap_enable_hostapd(), and prism2_wds_add(). |
Here is the call graph for this function:
|
Definition at line 992 of file hostap.c. References hostap_remove_interface(). Referenced by hostap_set_hostapd(). |
Here is the call graph for this function:
|
Definition at line 601 of file hostap.c. References MAC2STR, MACSTR, WLAN_FC_FROMDS, WLAN_FC_GET_STYPE, WLAN_FC_GET_TYPE, and WLAN_FC_TODS. Referenced by hostap_rx_skb(), and prism2_rx(). |
|
Definition at line 633 of file hostap.c. References MAC2STR, MACSTR, WLAN_FC_FROMDS, WLAN_FC_GET_STYPE, WLAN_FC_GET_TYPE, and WLAN_FC_TODS. Referenced by prism2_tx(). |
|
Definition at line 965 of file hostap.c. References ARPHRD_IEEE80211_PRISM, hostap_80211_header_parse(), and hostap_add_interface(). Referenced by hostap_set_hostapd(). |
Here is the call graph for this function:
|
Definition at line 1043 of file hostap.c. References hostap_crypto_deinit(), and hostap_proc. |
Here is the call graph for this function:
|
Definition at line 399 of file hostap.c. References HFA384X_PORTTYPE_BSS, HFA384X_PORTTYPE_HOSTAP, HFA384X_PORTTYPE_IBSS, HFA384X_PORTTYPE_PSEUDO_IBSS, HFA384X_PORTTYPE_WDS, IW_MODE_ADHOC, IW_MODE_INFRA, IW_MODE_MONITOR, and IW_MODE_REPEAT. Referenced by prism2_setup_rids(). |
|
Definition at line 746 of file hostap.c. Referenced by hostap_80211_rx(), hostap_rx_skb(), hostap_setup_dev(), monitor_rx(), prism2_rx(), prism2_transmit(), and prism2_tx(). |
|
Definition at line 1027 of file hostap.c. References hostap_crypto_init(), and hostap_proc. |
Here is the call graph for this function:
|
Definition at line 682 of file hostap.c. Referenced by prism2_event(), prism2_transmit(), prism2_transmit_cb(), and prism2_tx(). |
|
Definition at line 665 of file hostap.c. Referenced by handle_reset_queue(), prism2_alloc_ev(), prism2_hw_enable(), prism2_transmit(), and prism2_transmit_cb(). |
|
Definition at line 187 of file hostap.c. Referenced by hostap_disable_hostapd(), prism2_free_local_data(), and prism2_wds_del(). |
|
Definition at line 501 of file hostap.c. References BIT, HFA384X_CMDCODE_READMIF, HFA384X_CMDCODE_WRITEMIF, HFA386X_CR_RX_CONFIGURE, HFA386X_CR_TX_CONFIGURE, HOSTAP_ANTSEL_DIVERSITY, HOSTAP_ANTSEL_DO_NOT_TOUCH, HOSTAP_ANTSEL_HIGH, and HOSTAP_ANTSEL_LOW. Referenced by prism2_setup_rids(). |
|
Definition at line 579 of file hostap.c. References HFA384X_RID_CNFAUTHENTICATION, hostap_set_word(), PRISM2_AUTH_OPEN, and PRISM2_AUTH_SHARED_KEY. Referenced by prism2_setup_rids(). |
Here is the call graph for this function:
|
Definition at line 415 of file hostap.c. References HFA384X_RID_CNFDEFAULTKEY0, HFA384X_RID_CNFWEPDEFAULTKEYID, HFA384X_RID_CNFWEPFLAGS, HFA384X_WEPFLAGS_EXCLUDEUNENCRYPTED, HFA384X_WEPFLAGS_HOSTDECRYPT, HFA384X_WEPFLAGS_HOSTENCRYPT, HFA384X_WEPFLAGS_PRIVACYINVOKED, hostap_set_word(), WEP_KEY_LEN, and WEP_KEYS. Referenced by prism2_setup_rids(). |
Here is the call graph for this function:
|
Definition at line 1008 of file hostap.c. References hostap_disable_hostapd(), and hostap_enable_hostapd(). Referenced by prism2_free_local_data(). |
Here is the call graph for this function:
|
Definition at line 870 of file hostap.c. References PRISM2_SCHEDULE_TASK. Referenced by hostap_setup_dev(). |
|
Definition at line 852 of file hostap.c. References HFA384X_RID_PROMISCUOUSMODE, and hostap_set_word(). Referenced by prism2_init_local_data(). |
Here is the call graph for this function:
|
Definition at line 558 of file hostap.c. References HFA384X_RID_CNFROAMINGMODE, HFA384X_ROAMING_DISABLED, HFA384X_ROAMING_FIRMWARE, HFA384X_ROAMING_HOST, and hostap_set_word(). Referenced by prism2_setup_rids(). |
Here is the call graph for this function:
|
Definition at line 382 of file hostap.c. Referenced by prism2_setup_rids(). |
|
Definition at line 374 of file hostap.c. Referenced by handle_set_tim_queue(), hostap_set_auth_algs(), hostap_set_encryption(), hostap_set_multicast_list_queue(), hostap_set_roaming(), prism2_reset_port(), and prism2_setup_rids(). |
|
Definition at line 922 of file hostap.c. References hostap_get_stats(), hostap_set_multicast_list(), prism2_change_mtu(), prism2_close(), prism2_open(), and TX_TIMEOUT. Referenced by hostap_add_interface(), and prism2_init_local_data(). |
Here is the call graph for this function:
|
Definition at line 324 of file hostap.c. Referenced by hostap_init_data(). |
|
|
|
|
|
|
|
Definition at line 891 of file hostap.c. References PRISM2_MAX_MTU. Referenced by hostap_setup_dev(). |
|
Definition at line 753 of file hostap.c. References flush_scheduled_work(), hostap_deauth_all_stas(), and IW_MODE_MASTER. Referenced by hostap_setup_dev(), and prism2_open(). |
Here is the call graph for this function:
|
|
Definition at line 791 of file hostap.c. References prism2_close(). Referenced by hostap_setup_dev(). |
Here is the call graph for this function:
|
Definition at line 222 of file hostap.c. References hostap_add_interface(), hostap_add_sta(), and prism2_wds_special_addr(). Referenced by handle_wds_oper_queue(). |
Here is the call graph for this function:
|
Definition at line 288 of file hostap.c. References hostap_remove_interface(). Referenced by handle_wds_oper_queue(). |
Here is the call graph for this function:
|
Definition at line 213 of file hostap.c. Referenced by prism2_wds_add(). |
|
Initial value: { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 } |
|
Definition at line 1025 of file hostap.c. Referenced by hostap_exit(), hostap_init(), hostap_init_proc(), and hostap_remove_proc(). |
|
Initial value: { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 } |