summaryrefslogtreecommitdiff
path: root/net/ieee80211/ieee80211_module.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-03-20 10:30:31 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-20 10:30:31 -0800
commitc7cace6437b2f8bbab5ef05b465738283a9a100a (patch)
tree304a7dca0354eaa8ac21aa05cd287e317fa21b8c /net/ieee80211/ieee80211_module.c
parenta90779bfc83b7489270a8ce2c3fc9df20dac2b24 (diff)
parent2e9ff56efbc005ab2b92b68df65940c7459446c6 (diff)
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (150 commits) [PATCH] ipw2100: Update version ipw2100 stamp to 1.2.2 [PATCH] ipw2100: move mutex.h include from ipw2100.c to ipw2100.h [PATCH] ipw2100: semaphore to mutexes conversion [PATCH] ipw2100: Fix radiotap code gcc warning [PATCH] ipw2100: add radiotap headers to packtes captured in monitor mode [PATCH] ipw2x00: expend Copyright to 2006 [PATCH] drivers/net/wireless/ipw2200.c: fix an array overun [PATCH] ieee80211: Don't update network statistics from off-channel packets. [PATCH] ipw2200: Update ipw2200 version stamp to 1.1.1 [PATCH] ipw2200: switch to the new ipw2200-fw-3.0 image format [PATCH] ipw2200: wireless extension sensitivity threshold support [PATCH] ipw2200: Enables the "slow diversity" algorithm [PATCH] ipw2200: Set a meaningful silence threshold value [PATCH] ipw2200: export `debug' module param only if CONFIG_IPW2200_DEBUG [PATCH] ipw2200: Change debug level for firmware error logging [PATCH] ipw2200: Filter unsupported channels out in ad-hoc mode [PATCH] ipw2200: Fix ipw_sw_reset() implementation inconsistent with comment [PATCH] ipw2200: Fix rf_kill is activated after mode change with 'disable=1' [PATCH] ipw2200: remove the WPA card associates to non-WPA AP checking [PATCH] ipw2200: Add signal level to iwlist scan output ...
Diffstat (limited to 'net/ieee80211/ieee80211_module.c')
-rw-r--r--net/ieee80211/ieee80211_module.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/net/ieee80211/ieee80211_module.c b/net/ieee80211/ieee80211_module.c
index 90d18b72da3d..2cb84d84f671 100644
--- a/net/ieee80211/ieee80211_module.c
+++ b/net/ieee80211/ieee80211_module.c
@@ -82,10 +82,28 @@ static int ieee80211_networks_allocate(struct ieee80211_device *ieee)
return 0;
}
+void ieee80211_network_reset(struct ieee80211_network *network)
+{
+ if (!network)
+ return;
+
+ if (network->ibss_dfs) {
+ kfree(network->ibss_dfs);
+ network->ibss_dfs = NULL;
+ }
+}
+
static inline void ieee80211_networks_free(struct ieee80211_device *ieee)
{
+ int i;
+
if (!ieee->networks)
return;
+
+ for (i = 0; i < MAX_NETWORK_COUNT; i++)
+ if (ieee->networks[i].ibss_dfs)
+ kfree(ieee->networks[i].ibss_dfs);
+
kfree(ieee->networks);
ieee->networks = NULL;
}
@@ -195,7 +213,7 @@ void free_ieee80211(struct net_device *dev)
static int debug = 0;
u32 ieee80211_debug_level = 0;
-struct proc_dir_entry *ieee80211_proc = NULL;
+static struct proc_dir_entry *ieee80211_proc = NULL;
static int show_debug_level(char *page, char **start, off_t offset,
int count, int *eof, void *data)