blob: 5c2b2df5e577824d9e980aa5930671460417e332 [file] [log] [blame]
Marcelo Tosatti876c9d32007-02-10 12:25:27 -02001/**
2 * Interface for the wlan infrastructure and adhoc join routines
3 *
4 * Driver interface functions and type declarations for the join module
Holger Schurig10078322007-11-15 18:05:47 -05005 * implemented in join.c. Process all start/join requests for
Marcelo Tosatti876c9d32007-02-10 12:25:27 -02006 * both adhoc and infrastructure networks
7 */
Holger Schurig10078322007-11-15 18:05:47 -05008#ifndef _LBS_JOIN_H
9#define _LBS_JOIN_H
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020010
11#include "defs.h"
Dan Williamse76850d2007-05-25 17:09:41 -040012#include "dev.h"
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020013
14struct cmd_ds_command;
Holger Schurig10078322007-11-15 18:05:47 -050015int lbs_cmd_80211_authenticate(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020016 struct cmd_ds_command *cmd,
17 void *pdata_buf);
Holger Schurig10078322007-11-15 18:05:47 -050018int lbs_cmd_80211_ad_hoc_join(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020019 struct cmd_ds_command *cmd,
20 void *pdata_buf);
Holger Schurig10078322007-11-15 18:05:47 -050021int lbs_cmd_80211_ad_hoc_stop(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020022 struct cmd_ds_command *cmd);
Holger Schurig10078322007-11-15 18:05:47 -050023int lbs_cmd_80211_ad_hoc_start(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020024 struct cmd_ds_command *cmd,
Dan Williamse76850d2007-05-25 17:09:41 -040025 void *pdata_buf);
Holger Schurig10078322007-11-15 18:05:47 -050026int lbs_cmd_80211_deauthenticate(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020027 struct cmd_ds_command *cmd);
Holger Schurig10078322007-11-15 18:05:47 -050028int lbs_cmd_80211_associate(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020029 struct cmd_ds_command *cmd,
30 void *pdata_buf);
31
Holger Schurig10078322007-11-15 18:05:47 -050032int lbs_ret_80211_ad_hoc_start(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020033 struct cmd_ds_command *resp);
Holger Schurig10078322007-11-15 18:05:47 -050034int lbs_ret_80211_ad_hoc_stop(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020035 struct cmd_ds_command *resp);
Holger Schurig10078322007-11-15 18:05:47 -050036int lbs_ret_80211_disassociate(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020037 struct cmd_ds_command *resp);
Holger Schurig10078322007-11-15 18:05:47 -050038int lbs_ret_80211_associate(lbs_private *priv,
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020039 struct cmd_ds_command *resp);
40
Holger Schurig10078322007-11-15 18:05:47 -050041int lbs_start_adhoc_network(lbs_private *priv,
Dan Williamse76850d2007-05-25 17:09:41 -040042 struct assoc_request * assoc_req);
Holger Schurig10078322007-11-15 18:05:47 -050043int lbs_join_adhoc_network(lbs_private *priv,
Dan Williamse76850d2007-05-25 17:09:41 -040044 struct assoc_request * assoc_req);
Holger Schurig10078322007-11-15 18:05:47 -050045int lbs_stop_adhoc_network(lbs_private *priv);
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020046
Holger Schurig10078322007-11-15 18:05:47 -050047int lbs_send_deauthentication(lbs_private *priv);
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020048
Holger Schurig10078322007-11-15 18:05:47 -050049int lbs_associate(lbs_private *priv, struct assoc_request *assoc_req);
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020050
Holger Schurig10078322007-11-15 18:05:47 -050051void lbs_unset_basic_rate_flags(u8 *rates, size_t len);
Dan Williams8c512762007-08-02 11:40:45 -040052
Marcelo Tosatti876c9d32007-02-10 12:25:27 -020053#endif