Commit Graph

231 Commits

Author SHA1 Message Date
proski
d818daa1f2 Merge some comment changes from madwifi-dfs
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3787 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-17 04:50:29 +00:00
proski
da7fdf05c1 Remove trailing whitespace where it's not in madwifi-dfs branch
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3783 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-17 03:44:41 +00:00
proski
4878463bdb Wireless extensions changes are for 2.6.27, not 2.6.26
Don't use compatibility code if IW_REQUEST_FLAG_COMPAT is defined, which
means that the kernel identifies itself as 2.6.26, but acts like 2.6.27
would.

Remove unneeded use of ellipsis in iwe_stream_lcp_len() definition.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3767 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-10 14:50:56 +00:00
mentor
c4c202073b Use iwe_stream_lcp_len instead of IW_EV_LCP_LEN for 2.6.26+
Addendum to r3750
Ticket: #2022


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3760 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-07 19:28:08 +00:00
mentor
caa352fdd2 Remove, rename, and move various mystery meat defines
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3756 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-06 02:31:09 +00:00
mentor
130324108b Update iwe_stream_add_* API usage for 2.6.26+.
Ticket: #2022


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3750 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-05 02:21:38 +00:00
mentor
9a2f6efd63 Correctly name Data type Null subtype frame.
Do not try to process Null and QoS Null frames as data.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3749 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-07-05 01:00:32 +00:00
mentor
70e6e83fc8 Add an informational message when debug flags are changed.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3744 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-22 05:32:29 +00:00
mentor
78cbb40469 Convert various _debug style char *func and int line passing to use dump_stack. This may possibly be a tad noisy still.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3743 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-22 02:12:53 +00:00
mentor
03dbd3568d Make module loading and unloading much less noisy. I don't believe any of this ifnromation is particularly useful for dbeugging, and definitely not for operational use.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3742 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-21 14:40:43 +00:00
proski
941d62b043 KASSERT should add newline at the end to match FreeBSD behavior
Fix KASSERT calls that add their own newline.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3734 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-19 16:58:07 +00:00
mentor
717cb96dd8 Update roaming iwpriv names to reflect actual format of rate data (i.e., increments of 0.5).
Also, update comments and token names to reflect reality/actual usage. Remove some entirely purposeless padding bytes.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3733 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-19 02:34:23 +00:00
kelmo
0a1bf29ca4 Fix format string bugs.
Closes: #1999


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3726 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-16 08:50:30 +00:00
benoit
3ecbaecf60 Fix needed for wpa_supplicant. It might not be the best fix.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3724 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-13 15:09:58 +00:00
mentor
a3c603b875 Reference the VAP's node in injection/raw output frames. Makes injection work.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3720 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-12 05:22:37 +00:00
mentor
be5b0e727a Move responsibility for removing padding in the RX path entirely to the driver. This allows it to be done once, and thus avoids extra copying of SKBs.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3713 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-08 01:43:53 +00:00
mentor
76cade5dac Make pointer declarations and casting consistent. Some other formatting changes are made in passing
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3710 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 20:32:29 +00:00
mentor
1a24cb141a Use vlan_hwaccel_rx instead of vlan_hwaccel_receive_skb, as this is the non-polling (non-NAPI) version.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3709 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 19:42:24 +00:00
mentor
f259deab93 In some parts of Madwifi, SKBs are dispatched from the VAP device to the physical device using Linux kernel queuing, which does not understand our node reference system, so node references are carefully cleaned up if the packet is dropped.
However, the netif_rx and vlan_hwaccel_receive_skb functions dispatch the SKB to the higher networking levels, out of our domain.

Therefore, handle node references as appropriate.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3708 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 19:21:33 +00:00
mentor
a5680de2b6 Remove sead ALIGNED_POINTER code
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3705 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 01:40:25 +00:00
kelmo
4b2cf1393a Remove modules.order files in Makefile clean targets.
Remove kbuild by-products in regression/Makefile. Also allow
regression/tkip/test_tkip.c to compile (too few arguments to function
ieee80211_crypto_demic).

Closes: #1973


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3699 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-04 12:25:31 +00:00
mentor
bacb36738e Update some strings in ieee80211_dumppkt to be slightly more obvious/correct
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3680 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-25 18:44:50 +00:00
mentor
2cb3887369 Add lots of .PHONY to Makefiles and remove a duplicate rule definition
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3678 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-23 03:49:25 +00:00
benoit
99ead2121d Merge madwifi-dfs r3676
Fixed type of all variables storing jiffies
Converted add_timer() to mod_timer()


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3677 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 20:25:48 +00:00
mentor
c0466a75a6 Record stat's before dispatch, and generally don't try to access NULL pointers
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3674 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 16:09:19 +00:00
mentor
18682f3d29 SKB handling code cleanup:
* Convert last SKB_CB()->ni to SKB_NI
 * Lots of comments
 * Refactor various pieces of code for consistency, readability, and removal of goto


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3666 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 12:58:24 +00:00
mentor
547147362c Random whitespace
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3652 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-20 15:58:00 +00:00
mentor
15abd8d1f1 Formatting - r3634
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3640 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-17 04:44:05 +00:00
br1
3b9f5d1b89 add IEEE80211_TSF_TO_TU macro again and explain it once there instead of
open coding >> 10 and putting notes all over the place.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3635 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 16:09:36 +00:00
br1
86d8de1785 let ieee80211_recv_mgmt() return 0 if the frame is to be discarded and don't
process discarded frames in ath_recv_mgmt(). this reduces the number of times
we attempt to merge IBSS to invalid beacons.

this patch is based on the work of Derek Smithies


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3634 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 16:09:28 +00:00
br1
6da523e4d6 enclose node_print_message() calls in #ifdef IEEE80211_DEBUG
preprocessor directives to avoid this function beeing called
(and allocating stack space) when debugging is disabled.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3631 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 11:34:59 +00:00
mentor
6abd8285aa Whitespace for control statements
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3627 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-14 19:11:57 +00:00
mentor
a192279dd6 Only deliver frames to VAPs that are running.
This includes the reinstatement of the ieee80211_input_all function as this functionality should live in the net80211 layer. Unfortunately the code for this is a tad on the ugly side.

Thanks to OpenWRT/nbd: https://dev.openwrt.org/log/trunk/package/madwifi/patches/334-input.patch


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3621 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-10 06:03:52 +00:00
mentor
ef47acefdd Convert tracked member of ieee80211_cb to be a flag
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3618 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-06 11:31:26 +00:00
mentor
d3842998ca Remove now unused FF next field in ieee80211_cb. This makes ieee80211_cb under 48 bytes on 64-bit with IEEE80211_DEBUG_REFCNT
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3617 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-06 11:22:31 +00:00
mentor
f577062ef7 Move the monitor physical parameter struct inside ieee80211_cb. Have same struct actually be an array. Add an evil struct definition that breaks if ieee80211_cb is bigger than 48 bytes; it serves no other purpose.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3615 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-05 23:51:16 +00:00
proski
a49a973027 Use __skb_queue_after() instead of __skb_append()
Follow the rule of coding for the latest API.  Use __skb_queue_after()
in the code rather than __skb_append(), which is due to be removed in
Linux 2.6.26.  Provide compatibility definitions for __skb_queue_after()
in include/compat.h.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3605 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-05 12:12:43 +00:00
proski
2913278884 Adjust build system for Linux 2.6.26
During the second stage of the module build, Linux 2.6.26 does not
define $(obj).  Try using $(SUBDIRS) as $(obj) before falling back to
the current directory.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3603 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-05 02:00:56 +00:00
proski
32df5a67ce Provide __skb_append() replacement for Linux 2.6.26
__skb_append() will be removed in Linux 2.6.26.  __skb_queue_after()
should be used instead.  Use the new interface on Linux 2.6.25 and
newer.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3602 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-05 01:41:23 +00:00
mentor
380c55d9c9 Rename and move, into the right headers, the SKB and BF macros
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3596 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-04 17:48:59 +00:00
mentor
9538bc8243 Remove the skb_copy call from ieee80211_input. However, create a copied SKB for each call to ieee80211_input when we are sending to all VAPs. Effectively, this means that we are using the SKB from the ath_buf except when ieee80211_input is called multiple times.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3595 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-03 03:49:05 +00:00
mentor
1b318d3853 Tidy RX queue processing code:
* Formatting
 * Add a function to remove SKB from ath_buf.
 * Call aforementioned function early if we are accepting a frame, so that there's not chance the data can get stomped on by DMA. We should probably do this for ignored frames as well, but I got fed up trying to sort out the stack of goto.
 * Remove some KASSERT for skb users, as the SKB are always copied.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3594 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-03 03:40:27 +00:00
mentor
2ecfeab07e Move the maximum monitor headroom definition to a nice header file
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3593 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-01 13:49:09 +00:00
mentor
65868884d2 Do not modify source packet in ieee80211_input_monitor if the headroom is not sufficient. Instead, make sure the copied skb is allocated with enough headroom.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3586 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-30 22:11:27 +00:00
mentor
bbcacb393a Correct terminology in ieee80211_input skb_copy comment
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3585 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-30 22:04:38 +00:00
mentor
ef6d84125b Convert as many things as possible to use kzalloc
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3573 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-24 14:10:42 +00:00
mtaylor
dc1f1c8425 Fix non-debug compilation warnings about unused functions/variables
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3532 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-10 23:48:41 +00:00
mtaylor
fd66cd648f Revert remaining portions of r3405 that broke wpa_supplicant compatibility.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3525 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-10 09:18:50 +00:00
mtaylor
71fd5b074a Add ssid matching to station lookup. Based on a patch from radiodriver.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3520 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-10 06:24:32 +00:00
mtaylor
7c6997619e This commit fixes problems with skbuff cloning and reference counting in input handling. The biggest problem with this code was corruption of memory.
ieee80211_input can receive cloned skb from the bridge layer, and thus makes copies to modify and use.  The original was being freed immediately upon copying.  The problem is that when you issue ANY response other than NETDEV_TX_OK the skb is returned to the kernel queue.  So, basically there were wild pointers to skb in the skb queue, and these skb were being re-used by other applications and drivers - resulting in crashes all over the place.

With this new logic, we keep the original around until we know whether or not we will requeue it NETDEV_TX_BUSY or consume it NETDEV_TX_OK and we correctly free the skb only when appropriate.

We also get rid of the net80211_input_all function which was doing a bunch of unnecessary (and broken) copies and noe updates.



git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3501 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-04-09 23:34:44 +00:00