summaryrefslogtreecommitdiffstats
path: root/net/mac80211 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' of ↵David S. Miller2008-07-062-2/+8
|\ | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: Documentation/feature-removal-schedule.txt drivers/net/wan/hdlc_fr.c drivers/net/wireless/iwlwifi/iwl-4965.c drivers/net/wireless/iwlwifi/iwl3945-base.c
| * net-sched: change tcf_destroy_chain() to clear start of filter listPatrick McHardy2008-07-021-2/+1
| | | | | | | | | | | | | | | | Pass double tcf_proto pointers to tcf_destroy_chain() to make it clear the start of the filter list for more consistency. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * mac80211: don't accept WEP keys other than WEP40 and WEP104Emmanuel Grumbach2008-06-301-0/+7
| | | | | | | | | | | | | | | | | | This patch makes mac80211 refuse a WEP key whose length is not WEP40 nor WEP104. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: rework debug settings and make debugging saferJohannes Berg2008-07-0211-342/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch reworks the mac80211 debug settings making them more focused and adding help text for those that didn't have one. It also removes a number of printks that can be triggered remotely and add no value, e.g. "too short deauthentication frame received - ignoring". If somebody really needs to debug that they should just add a monitor interface and look at the frames in wireshark. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: get rid of function pointers in RX pathJohannes Berg2008-07-021-53/+44
| | | | | | | | | | | | | | | | | | | | | | This changes the RX path to no longer use function pointers for RX handlers but rather invoke them directly. If debugging is enabled, mark the RX handlers noinline because otherwise they all get inlined into ieee80211_invoke_rx_handlers() which makes it harder to see where a bug is. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: get rid of function pointers in TX pathJohannes Berg2008-07-022-34/+35
| | | | | | | | | | | | | | | | | | | | | | This changes the TX path to no longer use function pointers for TX handlers but rather invoke them directly. If debugging is enabled, mark the TX handlers noinline because otherwise they all get inlined into invoke_tx_handlers() which makes it harder to see where a bug is. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: add beacon timestamp to beacon template in IBSSAssaf Krauss2008-06-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | This patch adds a beacon timestamp to the beacon template used in IBSS mode. This way the underlying driver can update its TSF accordingly. According the spec station should adopt the highest TSF from an incoming beacons in the cell. Signed-off-by: Assaf Krauss <assaf.krauss@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: fix warning: unused variable invoke_tx_handlersTomas Winkler2008-06-301-3/+2
| | | | | | | | | | | | | | | | This patch fixes warning: unused variable in invoke_tx_handlers when compiling without MAC80211_DEBUG option Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: removing duplicated parsing of information elementsEster Kummer2008-06-301-91/+97
| | | | | | | | | | | | | | | | | | | | This patch removes the duplicated parsing of information elements in ieee80211_rx_bss_info and in ieee_rx_mgmt_beacon Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Ester Kummer <ester.kummer@intel.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | build algorithms into the mac80211 moduleAdrian Bunk2008-06-305-50/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old infrastructure was: - the default algorithm is built into mac80211 - other algorithms get into their own modules The implementation of this complicated scheme was horrible (just look at net/mac80211/Makefile), and anyone adding a new algorithm would most likely not get it right at his first attempt. This patch therefore builds all enabled algorithms into the mac80211 module. The user interface for the rate control algorithms changes as follows: - first the user can choose which algorithms to enable (currently only MAC80211_RC_PID is available) - if more than one algorithm is enabled (currently not possible since only one algorithm is present) the user then chooses the default one Note: - MAC80211_RC_PID is always enables for CONFIG_EMBEDDED=n Technical changes: - all selected algorithms get into the mac80211 module - net/mac80211/Makefile can now become much less complicated - support for rc80211_pid_algo.c being modular is no longer required - this includes unexporting mesh_plink_broken Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: add last beacon time in scan listEmmanuel Grumbach2008-06-301-0/+7
| | | | | | | | | | | | | | | | | | This patch adds the interval between the scan results and the last time a beacon was received in the result of the scan. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: add spectrum capabilitiesTomas Winkler2008-06-301-0/+24
| | | | | | | | | | | | | | | | | | | | This patch add spectrum capability and required information elements to association request providing AP has requested it and it is supported by the driver Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Assaf Krauss <assaf.krauss@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: add MAC80211_VERBOSE_SPECT_MGMT_DEBUG Kconfig optionYi Zhu2008-06-301-0/+7
| | | | | | | | | | | | | | | | | | The patch introduces MAC80211_VERBOSE_SPECT_MGMT_DEBUG Kconfig option to suppress Spectrum Management 802.11h related debug logs. Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | Merge branch 'master' of ↵David S. Miller2008-06-2913-243/+410
|\ \ | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-next-2.6
| * | mac80211: fix tx fragmentationJohannes Berg2008-06-271-31/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes TX fragmentation caused by tx handlers reordering and 'tx info to cb' patches Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: make workqueue freezableJohannes Berg2008-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the mac80211 workqueue freezable making it interact a bit better with system suspend and not try to ping the AP while the hardware is down. This doesn't really help with implementing proper suspend in any way but makes some bad things trigger less. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: add phy information to giwnameTomas Winkler2008-06-271-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add phy information to giwname. Quoting: It's not useless, it's supposed to tell you about the protocol capability of the device, like "IEEE 802.11b" or "IEEE 802.11abg" Jean Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: update the authentication methodEmmanuel Grumbach2008-06-271-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch updates the authentication method upon giwencode ioctl. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: don't return -EINVAL upon iwconfig wlan0 rts autoEmmanuel Grumbach2008-06-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch avoids returning -EINVAL upon iwconfig wlan0 rts auto. If rts->fixed is 0, then we should choose a default value instead of failing. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: mlme.c use new frame control helpersHarvey Harrison2008-06-271-20/+19
| | | | | | | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: rx.c use new frame control helpersHarvey Harrison2008-06-271-4/+3
| | | | | | | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: tx.c use new frame control helpersHarvey Harrison2008-06-271-29/+25
| | | | | | | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: wep.c use new frame control helpersHarvey Harrison2008-06-271-24/+15
| | | | | | | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: Let drivers have access to TKIP key offets for TX and RX MICLuis R. Rodriguez2008-06-273-36/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some drivers may want to to use the TKIP key offsets for TX and RX MIC so lets move this out. Lets also clear up a bit how this is used internally in mac80211. Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: rename TKIP debugging Kconfig symbolJohannes Berg2008-06-272-11/+11
| | | | | | | | | | | | | | | | | | | | | ... to MAC80211_TKIP_DEBUG rather than TKIP_DEBUG. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: add single function calling tx handlersJohannes Berg2008-06-261-42/+40
| | | | | | | | | | | | | | | | | | | | | | | | This modifies mac80211 to only have a single function calling the TX handlers rather than them being invoked in multiple places. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: use separate spinlock for sta flagsJohannes Berg2008-06-262-13/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | David Ellingsworth posted a bug that was only noticable on UP/NO-PREEMPT and Michael correctly analysed it to be a spin_lock_bh() section within a spin_lock_irqsave() section. This adds a separate spinlock for the sta_info flags to fix that issue and avoid having to take much care about where the sta flag manipulation functions are called. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Reported-By: David Ellingsworth <david@identd.dyndns.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: remove shared key todoJohannes Berg2008-06-261-2/+3
| | | | | | | | | | | | | | | | | | | | | Adding shared key authentication is not going to happen anyway. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: 11h - Handling measurement requestAssaf Krauss2008-06-261-0/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch handles the 11h measurement request information element. This is minimal requested implementation - refuse measurement. Signed-off-by: Assaf Krauss <assaf.krauss@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | mac80211: 11h Infrastructure - ParsingAssaf Krauss2008-06-262-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces parsing of 11h and 11d related elements from incoming management frames. Signed-off-by: Assaf Krauss <assaf.krauss@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * | Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/wireless-2.6John W. Linville2008-06-253-30/+43
| |\ \
| | * | wext: Emit event stream entries correctly when compat.David S. Miller2008-06-173-30/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Three major portions to this change: 1) Add IW_EV_COMPAT_LCP_LEN, IW_EV_COMPAT_POINT_OFF, and IW_EV_COMPAT_POINT_LEN helper defines. 2) Delete iw_stream_check_add_*(), they are unused. 3) Add iw_request_info argument to iwe_stream_add_*(), and use it to size the event and pointer lengths correctly depending upon whether IW_REQUEST_FLAG_COMPAT is set or not. 4) The mechanical transformations to the drivers and wireless stack bits to get the iw_request_info passed down into the routines modified in #3. Also, explicit references to IW_EV_LCP_LEN are replaced with iwe_stream_lcp_len(info). With a lot of help and bug fixes from Masakazu Mokuno. Signed-off-by: David S. Miller <davem@davemloft.net>
* | | | Merge branch 'master' of ↵David S. Miller2008-06-281-0/+9
|\ \ \ \ | |/ / / |/| | / | | |/ | |/| | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl4965-base.c
| * | mac80211: fix an oops in several failure paths in key allocationEmmanuel Grumbach2008-06-271-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes an oops in several failure paths in key allocation. This Oops occurs when freeing a key that has not been linked yet, so the key->sdata is not set. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | | Merge branch 'master' of ↵David S. Miller2008-06-201-1/+1
|\| | | |/ |/| | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/mac80211/tx.c
| * mac80211: detect driver tx bugsJohannes Berg2008-06-191-1/+8
| | | | | | | | | | | | | | | | | | | | When a driver rejects a frame in it's ->tx() callback, it must also stop queues, otherwise mac80211 can go into a loop here. Detect this situation and abort the loop after five retries, warning about the driver bug. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * Revert "mac80211: Use skb_header_cloned() on TX path."David S. Miller2008-06-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 608961a5eca8d3c6bd07172febc27b5559408c5d. The problem is that the mac80211 stack not only needs to be able to muck with the link-level headers, it also might need to mangle all of the packet data if doing sw wireless encryption. This fixes kernel bugzilla #10903. Thanks to Didier Raboud (for the bugzilla report), Andrew Prince (for bisecting), Johannes Berg (for bringing this bisection analysis to my attention), and Ilpo (for trying to analyze this purely from the TCP side). In 2.6.27 we can take another stab at this, by using something like skb_cow_data() when the TX path of mac80211 ends up with a non-NULL tx->key. The ESP protocol code in the IPSEC stack can be used as a model for implementation. Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2008-06-172-2/+3
|\| | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/rt2x00/Kconfig drivers/net/wireless/rt2x00/rt2x00usb.c net/sctp/protocol.c
| * mac80211: add missing new line in debug print HT_DEBUGTomas Winkler2008-06-131-1/+1
| | | | | | | | | | | | | | This patch adds '\n' in debug printk (wme.c HT DEBUG) Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
| * mac80211 : fix for iwconfig in ad-hoc modeAbhijeet Kolekar2008-06-131-1/+2
| | | | | | | | | | | | | | | | | | The patch checks interface status, if it is in IBSS_JOINED mode show cell id it is associated with. Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: eliminate IBSS warning in rate_lowest_index()Vladimir Koutny2008-06-143-7/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In IBSS mode prior to join/creation of new IBSS it is possible that a frame from unknown station is received and an ibss_add_sta() is called. This will cause a warning in rate_lowest_index() since the list of supported rates of our station is not initialized yet. The fix is to add ibss stations with a rate we received that frame at; this single-element set will be extended later based on beacon data. Also there is no need to store stations from a foreign IBSS. Signed-off-by: Vladimir Koutny <vlado@ksp.sk> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: tkip.c use a local struct tkip_ctx in ieee80211_get_tkip_keyHarvey Harrison2008-06-141-14/+16
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: tkip.c fold ieee80211_gen_rc4key into its one callerHarvey Harrison2008-06-141-21/+17
| | | | | | | | | | | | | | | | | | | | | | Also change the arguments of the phase1, 2 key mixing to take a pointer to the encrytion key and the tkip_ctx in the same order. Do the dereference of the encryption key in the callers. Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: tkip.c consolidate tkip IV writing in helperHarvey Harrison2008-06-143-20/+17
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: rx.c use new helpersHarvey Harrison2008-06-141-12/+7
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: wme.c use new helpersHarvey Harrison2008-06-141-13/+5
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: use new helpers in util.c - ieee80211_get_bssid()Harvey Harrison2008-06-141-22/+19
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: wpa.c use new access helpersHarvey Harrison2008-06-141-47/+16
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: add utility function to get header lengthHarvey Harrison2008-06-141-0/+32
| | | | | | | | | | | | | | Take a __le16 directly rather than a host-endian value. Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: make ieee80211_get_hdrlen_from_skb return unsignedHarvey Harrison2008-06-141-4/+4
| | | | | | | | | | | | | | Many callers already expect it to. Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>