Merge branch 'vendor/GCC50'
[dragonfly.git] / contrib / hostapd / src / drivers / driver_ndis.h
1 /*
2  * WPA Supplicant - Windows/NDIS driver interface
3  * Copyright (c) 2004-2006, Jouni Malinen <j@w1.fi>
4  *
5  * This software may be distributed under the terms of the BSD license.
6  * See README for more details.
7  */
8
9 #ifndef DRIVER_NDIS_H
10 #define DRIVER_NDIS_H
11
12 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED
13 struct ndis_events_data;
14 struct ndis_events_data * ndis_events_init(HANDLE *read_pipe, HANDLE *event,
15                                            const char *ifname,
16                                            const char *desc);
17 void ndis_events_deinit(struct ndis_events_data *events);
18 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */
19
20 struct ndis_pmkid_entry {
21         struct ndis_pmkid_entry *next;
22         u8 bssid[ETH_ALEN];
23         u8 pmkid[16];
24 };
25
26 struct wpa_driver_ndis_data {
27         void *ctx;
28         char ifname[100]; /* GUID: {7EE3EFE5-C165-472F-986D-F6FBEDFE8C8D} */
29 #ifdef _WIN32_WCE
30         TCHAR *adapter_name;
31         HANDLE event_queue; /* NDISUIO notifier MsgQueue */
32         HANDLE connected_event; /* WpaSupplicantConnected event */
33 #endif /* _WIN32_WCE */
34         u8 own_addr[ETH_ALEN];
35 #ifdef CONFIG_USE_NDISUIO
36         HANDLE ndisuio;
37 #else /* CONFIG_USE_NDISUIO */
38         LPADAPTER adapter;
39 #endif /* CONFIG_USE_NDISUIO */
40         u8 bssid[ETH_ALEN];
41
42         int has_capability;
43         int no_of_pmkid;
44         int radio_enabled;
45         struct wpa_driver_capa capa;
46         struct ndis_pmkid_entry *pmkid;
47         char *adapter_desc;
48         int wired;
49         int native80211;
50         int mode;
51         int wzc_disabled;
52         int oid_bssid_set;
53 #ifdef CONFIG_NDIS_EVENTS_INTEGRATED
54         HANDLE events_pipe, event_avail;
55         struct ndis_events_data *events;
56 #endif /* CONFIG_NDIS_EVENTS_INTEGRATED */
57 };
58
59 #endif /* DRIVER_NDIS_H */