driver_ndis.h revision 189251
1189251Ssam/* 2189251Ssam * WPA Supplicant - Windows/NDIS driver interface 3189251Ssam * Copyright (c) 2004-2006, Jouni Malinen <j@w1.fi> 4189251Ssam * 5189251Ssam * This program is free software; you can redistribute it and/or modify 6189251Ssam * it under the terms of the GNU General Public License version 2 as 7189251Ssam * published by the Free Software Foundation. 8189251Ssam * 9189251Ssam * Alternatively, this software may be distributed under the terms of BSD 10189251Ssam * license. 11189251Ssam * 12189251Ssam * See README and COPYING for more details. 13189251Ssam */ 14189251Ssam 15189251Ssam#ifndef DRIVER_NDIS_H 16189251Ssam#define DRIVER_NDIS_H 17189251Ssam 18189251Ssam#ifdef CONFIG_NDIS_EVENTS_INTEGRATED 19189251Ssamstruct ndis_events_data; 20189251Ssamstruct ndis_events_data * ndis_events_init(HANDLE *read_pipe, HANDLE *event, 21189251Ssam const char *ifname, 22189251Ssam const char *desc); 23189251Ssamvoid ndis_events_deinit(struct ndis_events_data *events); 24189251Ssam#endif /* CONFIG_NDIS_EVENTS_INTEGRATED */ 25189251Ssam 26189251Ssamstruct ndis_pmkid_entry { 27189251Ssam struct ndis_pmkid_entry *next; 28189251Ssam u8 bssid[ETH_ALEN]; 29189251Ssam u8 pmkid[16]; 30189251Ssam}; 31189251Ssam 32189251Ssamstruct wpa_driver_ndis_data { 33189251Ssam void *ctx; 34189251Ssam char ifname[100]; /* GUID: {7EE3EFE5-C165-472F-986D-F6FBEDFE8C8D} */ 35189251Ssam#ifdef _WIN32_WCE 36189251Ssam TCHAR *adapter_name; 37189251Ssam HANDLE event_queue; /* NDISUIO notifier MsgQueue */ 38189251Ssam HANDLE connected_event; /* WpaSupplicantConnected event */ 39189251Ssam#endif /* _WIN32_WCE */ 40189251Ssam u8 own_addr[ETH_ALEN]; 41189251Ssam#ifdef CONFIG_USE_NDISUIO 42189251Ssam HANDLE ndisuio; 43189251Ssam#else /* CONFIG_USE_NDISUIO */ 44189251Ssam LPADAPTER adapter; 45189251Ssam#endif /* CONFIG_USE_NDISUIO */ 46189251Ssam u8 bssid[ETH_ALEN]; 47189251Ssam 48189251Ssam int has_capability; 49189251Ssam int no_of_pmkid; 50189251Ssam int radio_enabled; 51189251Ssam struct wpa_driver_capa capa; 52189251Ssam struct ndis_pmkid_entry *pmkid; 53189251Ssam char *adapter_desc; 54189251Ssam int wired; 55189251Ssam int mode; 56189251Ssam int wzc_disabled; 57189251Ssam int oid_bssid_set; 58189251Ssam#ifdef CONFIG_NDIS_EVENTS_INTEGRATED 59189251Ssam HANDLE events_pipe, event_avail; 60189251Ssam struct ndis_events_data *events; 61189251Ssam#endif /* CONFIG_NDIS_EVENTS_INTEGRATED */ 62189251Ssam}; 63189251Ssam 64189251Ssam#endif /* DRIVER_NDIS_H */ 65