diff options
author | sam <sam@FreeBSD.org> | 2008-04-20 20:35:46 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2008-04-20 20:35:46 +0000 |
commit | 3569e353ca63336d80ab0143dd9669b0b9e6b123 (patch) | |
tree | bc7985c57e7ecfa1ac03e48c406a25430dba634b /sys/net80211/ieee80211_crypto_none.c | |
parent | 682b4ae9be70192e298129ada878af3486683aaf (diff) | |
download | FreeBSD-src-3569e353ca63336d80ab0143dd9669b0b9e6b123.zip FreeBSD-src-3569e353ca63336d80ab0143dd9669b0b9e6b123.tar.gz |
Multi-bss (aka vap) support for 802.11 devices.
Note this includes changes to all drivers and moves some device firmware
loading to use firmware(9) and a separate module (e.g. ral). Also there
no longer are separate wlan_scan* modules; this functionality is now
bundled into the wlan module.
Supported by: Hobnob and Marvell
Reviewed by: many
Obtained from: Atheros (some bits)
Diffstat (limited to 'sys/net80211/ieee80211_crypto_none.c')
-rw-r--r-- | sys/net80211/ieee80211_crypto_none.c | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/sys/net80211/ieee80211_crypto_none.c b/sys/net80211/ieee80211_crypto_none.c index 7fbb53d..b1ffbb4 100644 --- a/sys/net80211/ieee80211_crypto_none.c +++ b/sys/net80211/ieee80211_crypto_none.c @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2002-2007 Sam Leffler, Errno Consulting + * Copyright (c) 2002-2008 Sam Leffler, Errno Consulting * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -29,7 +29,10 @@ __FBSDID("$FreeBSD$"); /* * IEEE 802.11 NULL crypto support. */ +#include "opt_wlan.h" + #include <sys/param.h> +#include <sys/kernel.h> #include <sys/systm.h> #include <sys/mbuf.h> #include <sys/module.h> @@ -42,7 +45,7 @@ __FBSDID("$FreeBSD$"); #include <net80211/ieee80211_var.h> -static void *none_attach(struct ieee80211com *, struct ieee80211_key *); +static void *none_attach(struct ieee80211vap *, struct ieee80211_key *); static void none_detach(struct ieee80211_key *); static int none_setkey(struct ieee80211_key *); static int none_encap(struct ieee80211_key *, struct mbuf *, uint8_t); @@ -66,9 +69,9 @@ const struct ieee80211_cipher ieee80211_cipher_none = { }; static void * -none_attach(struct ieee80211com *ic, struct ieee80211_key *k) +none_attach(struct ieee80211vap *vap, struct ieee80211_key *k) { - return ic; /* for diagnostics+stats */ + return vap; /* for diagnostics+stats */ } static void @@ -87,7 +90,7 @@ none_setkey(struct ieee80211_key *k) static int none_encap(struct ieee80211_key *k, struct mbuf *m, uint8_t keyid) { - struct ieee80211com *ic = k->wk_private; + struct ieee80211vap *vap = k->wk_private; #ifdef IEEE80211_DEBUG struct ieee80211_frame *wh = mtod(m, struct ieee80211_frame *); #endif @@ -96,17 +99,16 @@ none_encap(struct ieee80211_key *k, struct mbuf *m, uint8_t keyid) * The specified key is not setup; this can * happen, at least, when changing keys. */ - IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO, - "[%s] key id %u is not set (encap)\n", - ether_sprintf(wh->i_addr1), keyid>>6); - ic->ic_stats.is_tx_badcipher++; + IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_CRYPTO, wh->i_addr1, + "key id %u is not set (encap)", keyid>>6); + vap->iv_stats.is_tx_badcipher++; return 0; } static int none_decap(struct ieee80211_key *k, struct mbuf *m, int hdrlen) { - struct ieee80211com *ic = k->wk_private; + struct ieee80211vap *vap = k->wk_private; #ifdef IEEE80211_DEBUG struct ieee80211_frame *wh = mtod(m, struct ieee80211_frame *); const uint8_t *ivp = (const uint8_t *)&wh[1]; @@ -117,27 +119,26 @@ none_decap(struct ieee80211_key *k, struct mbuf *m, int hdrlen) * happen, at least, when changing keys. */ /* XXX useful to know dst too */ - IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO, - "[%s] key id %u is not set (decap)\n", - ether_sprintf(wh->i_addr2), ivp[IEEE80211_WEP_IVLEN] >> 6); - ic->ic_stats.is_rx_badkeyid++; + IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_CRYPTO, wh->i_addr2, + "key id %u is not set (decap)", ivp[IEEE80211_WEP_IVLEN] >> 6); + vap->iv_stats.is_rx_badkeyid++; return 0; } static int none_enmic(struct ieee80211_key *k, struct mbuf *m, int force) { - struct ieee80211com *ic = k->wk_private; + struct ieee80211vap *vap = k->wk_private; - ic->ic_stats.is_tx_badcipher++; + vap->iv_stats.is_tx_badcipher++; return 0; } static int none_demic(struct ieee80211_key *k, struct mbuf *m, int force) { - struct ieee80211com *ic = k->wk_private; + struct ieee80211vap *vap = k->wk_private; - ic->ic_stats.is_rx_badkeyid++; + vap->iv_stats.is_rx_badkeyid++; return 0; } |