Home | History | Annotate | Download | only in drivers
      1 /*
      2  * WPA Supplicant - Windows/NDIS driver interface
      3  * Copyright (c) 2004-2006, Jouni Malinen <j (at) w1.fi>
      4  *
      5  * This program is free software; you can redistribute it and/or modify
      6  * it under the terms of the GNU General Public License version 2 as
      7  * published by the Free Software Foundation.
      8  *
      9  * Alternatively, this software may be distributed under the terms of BSD
     10  * license.
     11  *
     12  * See README and COPYING for more details.
     13  */
     14 
     15 #ifndef DRIVER_NDIS_H
     16 #define DRIVER_NDIS_H
     17 
     18 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED
     19 struct ndis_events_data;
     20 struct ndis_events_data * ndis_events_init(HANDLE *read_pipe, HANDLE *event,
     21 					   const char *ifname,
     22 					   const char *desc);
     23 void ndis_events_deinit(struct ndis_events_data *events);
     24 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */
     25 
     26 struct ndis_pmkid_entry {
     27 	struct ndis_pmkid_entry *next;
     28 	u8 bssid[ETH_ALEN];
     29 	u8 pmkid[16];
     30 };
     31 
     32 struct wpa_driver_ndis_data {
     33 	void *ctx;
     34 	char ifname[100]; /* GUID: {7EE3EFE5-C165-472F-986D-F6FBEDFE8C8D} */
     35 #ifdef _WIN32_WCE
     36 	TCHAR *adapter_name;
     37 	HANDLE event_queue; /* NDISUIO notifier MsgQueue */
     38 	HANDLE connected_event; /* WpaSupplicantConnected event */
     39 #endif /* _WIN32_WCE */
     40 	u8 own_addr[ETH_ALEN];
     41 #ifdef CONFIG_USE_NDISUIO
     42 	HANDLE ndisuio;
     43 #else /* CONFIG_USE_NDISUIO */
     44 	LPADAPTER adapter;
     45 #endif /* CONFIG_USE_NDISUIO */
     46 	u8 bssid[ETH_ALEN];
     47 
     48 	int has_capability;
     49 	int no_of_pmkid;
     50 	int radio_enabled;
     51 	struct wpa_driver_capa capa;
     52 	struct ndis_pmkid_entry *pmkid;
     53 	char *adapter_desc;
     54 	int wired;
     55 	int mode;
     56 	int wzc_disabled;
     57 	int oid_bssid_set;
     58 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED
     59 	HANDLE events_pipe, event_avail;
     60 	struct ndis_events_data *events;
     61 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */
     62 };
     63 
     64 #endif /* DRIVER_NDIS_H */
     65