#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <sys/socket.h>#include <sys/ioctl.h>#include <linux/types.h>#include <linux/socket.h>#include <linux/if.h>#include <linux/wireless.h>#include <net/ethernet.h>#include "hd.h"#include "hd_int.h"#include "wlan.h"Data Structures | |
| struct | wpa_driver_ops |
| struct | prism2_hostapd_param |
| struct | ieee80211req_key |
| struct | ipw_param |
| struct | atmel_param |
| struct | wpa_key |
| struct | wpa_driver_wext_data |
Defines | |
| #define | AUTH_ALG_OPEN_SYSTEM 0x01 |
| #define | AUTH_ALG_SHARED_KEY 0x02 |
| #define | AUTH_ALG_LEAP 0x04 |
| #define | PRISM2_IOCTL_PRISM2_PARAM (SIOCIWFIRSTPRIV + 0) |
| #define | PRISM2_IOCTL_HOSTAPD (SIOCDEVPRIVATE + 14) |
| #define | HOSTAP_CRYPT_ALG_NAME_LEN 16 |
| #define | HOSTAP_CRYPT_FLAG_SET_TX_KEY (1 << (0)) |
| #define | PRISM2_HOSTAPD_GENERIC_ELEMENT_HDR_LEN ((int) (&((struct prism2_hostapd_param *) 0)->u.generic_elem.data)) |
| #define | IEEE80211_IOCTL_SETPARAM (SIOCIWFIRSTPRIV+0) |
| #define | IEEE80211_IOCTL_SETKEY (SIOCIWFIRSTPRIV+2) |
| #define | IEEE80211_CIPHER_WEP 0 |
| #define | IEEE80211_CIPHER_TKIP 1 |
| #define | IEEE80211_CIPHER_AES_CCM 3 |
| #define | IEEE80211_ADDR_LEN 6 |
| #define | IEEE80211_KEY_XMIT 0x01 |
| #define | IEEE80211_KEY_RECV 0x02 |
| #define | IEEE80211_KEYBUF_SIZE 16 |
| #define | IEEE80211_MICBUF_SIZE 16 |
| #define | IEEE80211_KEY_DEFAULT 0x80 |
| #define | IPW_IOCTL_WPA_SUPPLICANT SIOCIWFIRSTPRIV+30 |
| #define | IPW_CMD_SET_WPA_PARAM 1 |
| #define | IPW_CMD_SET_ENCRYPTION 3 |
| #define | IPW_PARAM_WPA_ENABLED 1 |
| #define | IPW_PARAM_AUTH_ALGS 5 |
| #define | IPW_CRYPT_ALG_NAME_LEN 16 |
| #define | ATMEL_WPA_IOCTL (SIOCIWFIRSTPRIV + 2) |
| #define | ATMEL_WPA_IOCTL_PARAM (SIOCIWFIRSTPRIV + 3) |
| #define | ATMEL_WPA_IOCTL_GET_PARAM (SIOCIWFIRSTPRIV + 4) |
| #define | MAX_KEY_LENGTH 40 |
| #define | WPA_SET_WPA SIOCIWFIRSTPRIV+1 |
| #define | WPA_SET_KEY SIOCIWFIRSTPRIV+2 |
| #define | WPA_SET_AUTH_ALG SIOCIWFIRSTPRIV+8 |
| #define | IW_AUTH_WPA_ENABLED 7 |
| #define | IW_AUTH_INDEX 0x0FFF |
Typedefs | |
| typedef uint8_t | u8 |
| typedef uint16_t | u16 |
| typedef uint32_t | u32 |
Enumerations | |
| enum | wpa_alg { WPA_ALG_NONE, WPA_ALG_WEP, WPA_ALG_TKIP, WPA_ALG_CCMP } |
| enum | { PRISM2_SET_ENCRYPTION = 6, PRISM2_HOSTAPD_SET_GENERIC_ELEMENT = 12, PRISM2_PARAM_AP_AUTH_ALGS = 15, PRISM2_PARAM_HOST_ROAMING = 21, PRISM2_PARAM_WPA = 36, PRISM2_PARAM_PRIVACY_INVOKED = 37 } |
| enum | { IEEE80211_PARAM_WPA = 10, IEEE80211_PARAM_ROAMING = 12, IEEE80211_PARAM_PRIVACY = 13 } |
| enum | { SET_WPA_ENCRYPTION = 1, SET_CIPHER_SUITES = 2 } |
| enum | { ATMEL_PARAM_WPA = 1, ATMEL_PARAM_PRIVACY_INVOKED = 2, ATMEL_PARAM_WPA_TYPE = 3 } |
Functions | |
| int | iw_sockets_open (void) |
| static int | iw_get_ext (int skfd, const char *ifname, int request, struct iwreq *pwrq) |
| int | iw_get_range_info (int skfd, const char *ifname, struct iw_range *range) |
| double | iw_freq2float (const struct iw_freq *in) |
| void | hd_scan_wlan (hd_data_t *hd_data) |
| int | hostapd_ioctl (const char *dev, struct prism2_hostapd_param *param, int len, int show_err) |
| int | prism2param (const char *ifname, int param, int value) |
| int | wpa_driver_hostap_set_auth_alg (const char *ifname, int auth_alg) |
| int | wpa_driver_hostap_set_wpa (const char *ifname, int enabled) |
| int | wpa_driver_hostap_set_key (const char *ifname, wpa_alg alg, unsigned char *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
| int | set80211param (const char *dev, int op, int arg) |
| static int | wpa_driver_madwifi_set_wpa (const char *ifname, int enabled) |
| static int | set80211priv (const char *dev, int op, void *data, int len) |
| static int | wpa_driver_madwifi_set_key (const char *ifname, wpa_alg alg, unsigned char *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
| int | ipw_ioctl (const char *dev, struct ipw_param *param, int len) |
| int | wpa_driver_ipw_set_wpa (const char *ifname, int enabled) |
| int | wpa_driver_ipw_set_key (const char *ifname, wpa_alg alg, unsigned char *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
| int | wpa_driver_ipw_set_auth_alg (const char *ifname, int auth_alg) |
| int | atmel_ioctl (const char *dev, struct atmel_param *param, int len) |
| int | atmel2param (const char *ifname, int param, int value) |
| int | wpa_driver_atmel_set_wpa (const char *ifname, int enabled) |
| int | wpa_driver_atmel_set_key (const char *ifname, wpa_alg alg, unsigned char *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
| int | wpa_ndiswrapper_set_ext (const char *ifname, int request, struct iwreq *pwrq) |
| int | wpa_ndiswrapper_set_wpa (const char *ifname, int enabled) |
| int | wpa_ndiswrapper_set_key (const char *ifname, wpa_alg alg, u8 *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
| static int | wpa_ndiswrapper_set_auth_alg (const char *ifname, int auth_alg) |
| static int | wpa_driver_wext_set_wpa (const char *ifname, int enabled) |
| static int | wpa_driver_wext_set_auth_alg (const char *ifname, int auth_alg) |
| static int | wpa_driver_wext_set_key (const char *ifname, wpa_alg alg, u8 *addr, int key_idx, int set_tx, u8 *seq, size_t seq_len, u8 *key, size_t key_len) |
Variables | |
| wpa_driver_ops | wpa_driver_hostap_ops |
| wpa_driver_ops | wpa_driver_prism54_ops |
| wpa_driver_ops | wpa_driver_hermes_ops |
| wpa_driver_ops | wpa_driver_madwifi_ops |
| wpa_driver_ops | wpa_driver_atmel_ops |
| wpa_driver_ops | wpa_driver_wext_ops |
| wpa_driver_ops | wpa_driver_ndiswrapper_ops |
| wpa_driver_ops | wpa_driver_ipw_ops |
| wpa_driver_ops | wpa_driver_hostap_ops |
| wpa_driver_ops | wpa_driver_madwifi_ops |
| wpa_driver_ops | wpa_driver_ipw_ops |
| wpa_driver_ops | wpa_driver_atmel_ops |
| wpa_driver_ops | wpa_driver_ndiswrapper_ops |
| wpa_driver_ops | wpa_driver_wext_ops |
| #define IEEE80211_KEY_DEFAULT 0x80 |