Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
[linux-2.6] / drivers / net / wireless / libertas / join.h
1 /* -*- mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
2 /* vi: set expandtab shiftwidth=4 tabstop=4 textwidth=78: */
3
4 /**
5   * Interface for the wlan infrastructure and adhoc join routines
6   *
7   * Driver interface functions and type declarations for the join module
8   *   implemented in wlan_join.c.  Process all start/join requests for
9   *   both adhoc and infrastructure networks
10   */
11 #ifndef _WLAN_JOIN_H
12 #define _WLAN_JOIN_H
13
14 #include "defs.h"
15
16 struct cmd_ds_command;
17 extern int libertas_cmd_80211_authenticate(wlan_private * priv,
18                                         struct cmd_ds_command *cmd,
19                                         void *pdata_buf);
20 extern int libertas_cmd_80211_ad_hoc_join(wlan_private * priv,
21                                        struct cmd_ds_command *cmd,
22                                        void *pdata_buf);
23 extern int libertas_cmd_80211_ad_hoc_stop(wlan_private * priv,
24                                        struct cmd_ds_command *cmd);
25 extern int libertas_cmd_80211_ad_hoc_start(wlan_private * priv,
26                                         struct cmd_ds_command *cmd,
27                                         void *pssid);
28 extern int libertas_cmd_80211_deauthenticate(wlan_private * priv,
29                                           struct cmd_ds_command *cmd);
30 extern int libertas_cmd_80211_associate(wlan_private * priv,
31                                      struct cmd_ds_command *cmd,
32                                      void *pdata_buf);
33
34 extern int libertas_ret_80211_ad_hoc_start(wlan_private * priv,
35                                         struct cmd_ds_command *resp);
36 extern int libertas_ret_80211_ad_hoc_stop(wlan_private * priv,
37                                        struct cmd_ds_command *resp);
38 extern int libertas_ret_80211_disassociate(wlan_private * priv,
39                                         struct cmd_ds_command *resp);
40 extern int libertas_ret_80211_associate(wlan_private * priv,
41                                      struct cmd_ds_command *resp);
42
43 extern int libertas_idle_on(wlan_private * priv);
44 extern int libertas_idle_off(wlan_private * priv);
45
46 extern int libertas_do_adhocstop_ioctl(wlan_private * priv);
47 extern int libertas_reassociation_thread(void *data);
48
49 struct WLAN_802_11_SSID;
50 struct bss_descriptor;
51
52 extern int libertas_start_adhoc_network(wlan_private * priv,
53                              struct WLAN_802_11_SSID *adhocssid);
54 extern int libertas_join_adhoc_network(wlan_private * priv, struct bss_descriptor *pbssdesc);
55 extern int libertas_stop_adhoc_network(wlan_private * priv);
56
57 extern int libertas_send_deauthentication(wlan_private * priv);
58 extern int libertas_send_deauth(wlan_private * priv);
59
60 extern int libertas_do_adhocstop_ioctl(wlan_private * priv);
61
62 int wlan_associate(wlan_private * priv, struct bss_descriptor * pbssdesc);
63
64 #endif