00001 /* 00002 * WPA Supplicant - Windows/NDIS driver interface 00003 * Copyright (c) 2004-2006, Jouni Malinen <j@w1.fi> 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License version 2 as 00007 * published by the Free Software Foundation. 00008 * 00009 * Alternatively, this software may be distributed under the terms of BSD 00010 * license. 00011 * 00012 * See README and COPYING for more details. 00013 */ 00014 00015 #ifndef DRIVER_NDIS_H 00016 #define DRIVER_NDIS_H 00017 00018 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED 00019 struct ndis_events_data; 00020 struct ndis_events_data * ndis_events_init(HANDLE *read_pipe, HANDLE *event, 00021 const char *ifname, 00022 const char *desc); 00023 void ndis_events_deinit(struct ndis_events_data *events); 00024 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */ 00025 00026 struct ndis_pmkid_entry { 00027 struct ndis_pmkid_entry *next; 00028 u8 bssid[ETH_ALEN]; 00029 u8 pmkid[16]; 00030 }; 00031 00032 struct wpa_driver_ndis_data { 00033 void *ctx; 00034 char ifname[100]; /* GUID: {7EE3EFE5-C165-472F-986D-F6FBEDFE8C8D} */ 00035 #ifdef _WIN32_WCE 00036 TCHAR *adapter_name; 00037 HANDLE event_queue; /* NDISUIO notifier MsgQueue */ 00038 HANDLE connected_event; /* WpaSupplicantConnected event */ 00039 #endif /* _WIN32_WCE */ 00040 u8 own_addr[ETH_ALEN]; 00041 #ifdef CONFIG_USE_NDISUIO 00042 HANDLE ndisuio; 00043 #else /* CONFIG_USE_NDISUIO */ 00044 LPADAPTER adapter; 00045 #endif /* CONFIG_USE_NDISUIO */ 00046 u8 bssid[ETH_ALEN]; 00047 00048 int has_capability; 00049 int no_of_pmkid; 00050 int radio_enabled; 00051 struct wpa_driver_capa capa; 00052 struct ndis_pmkid_entry *pmkid; 00053 char *adapter_desc; 00054 int wired; 00055 int native80211; 00056 int mode; 00057 int wzc_disabled; 00058 int oid_bssid_set; 00059 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED 00060 HANDLE events_pipe, event_avail; 00061 struct ndis_events_data *events; 00062 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */ 00063 }; 00064 00065 #endif /* DRIVER_NDIS_H */