netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ipw2100: Fix dropping fragmented small packet problem
@ 2006-12-20  8:11 Zhu Yi
  0 siblings, 0 replies; only message in thread
From: Zhu Yi @ 2006-12-20  8:11 UTC (permalink / raw)
  To: netdev, John W. Linville

The rx_data.header struct is ieee80211_hdr_4addr. If a wireless frame uses
ieee80211_hdr_3addr header and is less than 6 bytes, it will be discarded.
This is not likely going to happen for normal packets (since there is TCP, IP
headers). But if fragmentation is used, there will be such small trailing
packets. And they will be lost for ever.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>

diff -urp ipw2100-1.2.1/ipw2100.c ipw2100-1.2.1-frag/ipw2100.c
--- ipw2100-1.2.1/ipw2100.c	2006-02-22 02:46:17.000000000 +0800
+++ ipw2100-1.2.1-frag/ipw2100.c	2006-12-15 17:16:15.000000000 +0800
@@ -2658,7 +2658,7 @@ static void __ipw2100_rx_process(struct 
 				break;
 			}
 #endif
-			if (stats.len < sizeof(u->rx_data.header))
+			if (stats.len < sizeof(struct ieee80211_hdr_3addr))
 				break;
 			switch (WLAN_FC_GET_TYPE(u->rx_data.header.frame_ctl)) {
 			case IEEE80211_FTYPE_MGMT:

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-12-20  8:14 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-20  8:11 [PATCH] ipw2100: Fix dropping fragmented small packet problem Zhu Yi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).