rpms/kernel/F-7 git-wireless-dev.patch, 1.23, 1.24 kernel-2.6.spec, 1.3336, 1.3337 linux-2.6-wireless-pending.patch, 1.1, 1.2 linux-2.6-wireless.patch, 1.8, 1.9 linux-2.6-mac80211-local-mcast-filter.patch, 1.3, NONE
John W. Linville (linville)
fedora-extras-commits at redhat.com
Thu Aug 30 21:54:19 UTC 2007
- Previous message (by thread): rpms/sugar-presence-service/OLPC-2 .cvsignore, 1.15, 1.16 sources, 1.15, 1.16 sugar-presence-service.spec, 1.15, 1.16
- Next message (by thread): devel/anaconda .cvsignore, 1.438, 1.439 anaconda.spec, 1.574, 1.575 sources, 1.566, 1.567
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: linville
Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19628
Modified Files:
git-wireless-dev.patch kernel-2.6.spec
linux-2.6-wireless-pending.patch linux-2.6-wireless.patch
Removed Files:
linux-2.6-mac80211-local-mcast-filter.patch
Log Message:
Update bits from wireless-2.6 and wireless-dev
git-wireless-dev.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.23 -r 1.24 git-wireless-dev.patch
Index: git-wireless-dev.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/git-wireless-dev.patch,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- git-wireless-dev.patch 25 Aug 2007 02:33:49 -0000 1.23
+++ git-wireless-dev.patch 30 Aug 2007 21:54:14 -0000 1.24
@@ -1,5 +1,5 @@
--- linux-2.6.22.noarch/CREDITS.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/CREDITS 2007-08-24 11:42:09.000000000 -0400
++++ linux-2.6.22.noarch/CREDITS 2007-08-30 17:37:10.000000000 -0400
@@ -665,6 +665,11 @@ D: Minor updates to SCSI types, added /p
S: (ask for current address)
S: USA
@@ -67,7 +67,7 @@
E: liw at iki.fi
D: Linux System Administrator's Guide, author, former maintainer
--- linux-2.6.22.noarch/include/linux/nl80211.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/nl80211.h 2007-08-24 11:42:09.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/nl80211.h 2007-08-30 17:37:10.000000000 -0400
@@ -7,6 +7,201 @@
*/
@@ -328,7 +328,7 @@
+
#endif /* __LINUX_NL80211_H */
--- linux-2.6.22.noarch/include/linux/mod_devicetable.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/mod_devicetable.h 2007-08-24 11:42:15.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/mod_devicetable.h 2007-08-30 17:37:10.000000000 -0400
@@ -333,4 +333,19 @@ struct parisc_device_id {
#define PA_HVERSION_ANY_ID 0xffff
#define PA_SVERSION_ANY_ID 0xffffffff
@@ -349,8 +349,8 @@
+#define SSB_ANY_REV 0xFF
+
#endif /* LINUX_MOD_DEVICETABLE_H */
---- linux-2.6.22.noarch/include/linux/ieee80211.h.orig 2007-08-24 11:41:51.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/ieee80211.h 2007-08-24 11:42:09.000000000 -0400
+--- linux-2.6.22.noarch/include/linux/ieee80211.h.orig 2007-08-30 17:36:08.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/ieee80211.h 2007-08-30 17:37:10.000000000 -0400
@@ -106,6 +106,75 @@ struct ieee80211_hdr {
} __attribute__ ((packed));
@@ -649,8 +649,8 @@
+};
+
#endif /* IEEE80211_H */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_chipcommon.h 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_chipcommon.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,396 @@
+#ifndef LINUX_SSB_CHIPCO_H_
+#define LINUX_SSB_CHIPCO_H_
@@ -1048,8 +1048,8 @@
+#endif /* CONFIG_SSB_SERIAL */
+
+#endif /* LINUX_SSB_CHIPCO_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_extif.h 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_extif.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,204 @@
+/*
+ * Hardware-specific External Interface I/O core definitions
@@ -1255,8 +1255,8 @@
+
+#endif /* CONFIG_SSB_DRIVER_EXTIF */
+#endif /* LINUX_SSB_EXTIFCORE_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_mips.h 2007-08-24 11:42:09.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_mips.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,46 @@
+#ifndef LINUX_SSB_MIPSCORE_H_
+#define LINUX_SSB_MIPSCORE_H_
@@ -1304,8 +1304,8 @@
+#endif /* CONFIG_SSB_DRIVER_MIPS */
+
+#endif /* LINUX_SSB_MIPSCORE_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_regs.h 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_regs.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,292 @@
+#ifndef LINUX_SSB_REGS_H_
+#define LINUX_SSB_REGS_H_
@@ -1599,8 +1599,8 @@
+
+
+#endif /* LINUX_SSB_REGS_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_pci.h 2007-08-24 11:42:09.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_pci.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,106 @@
+#ifndef LINUX_SSB_PCICORE_H_
+#define LINUX_SSB_PCICORE_H_
@@ -1708,8 +1708,8 @@
+
+#endif /* CONFIG_SSB_DRIVER_PCICORE */
+#endif /* LINUX_SSB_PCICORE_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb.h 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,424 @@
+#ifndef LINUX_SSB_H_
+#define LINUX_SSB_H_
@@ -2135,8 +2135,8 @@
+
+
+#endif /* LINUX_SSB_H_ */
---- linux-2.6.22.noarch/include/net/cfg80211.h.orig 2007-08-24 11:41:51.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/cfg80211.h 2007-08-24 11:42:09.000000000 -0400
+--- linux-2.6.22.noarch/include/net/cfg80211.h.orig 2007-08-30 17:36:08.000000000 -0400
++++ linux-2.6.22.noarch/include/net/cfg80211.h 2007-08-30 17:37:10.000000000 -0400
@@ -3,6 +3,7 @@
#include <linux/netlink.h>
@@ -2279,220 +2279,9 @@
+ u32 seq, int flags, u8 cmd);
+
#endif /* __NET_CFG80211_H */
---- linux-2.6.22.noarch/include/net/mac80211.h.orig 2007-08-24 11:41:51.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/mac80211.h 2007-08-24 11:44:39.000000000 -0400
-@@ -1,7 +1,9 @@
- /*
-- * Low-level hardware driver -- IEEE 802.11 driver (80211.o) interface
-+ * mac80211 <-> driver interface
-+ *
- * Copyright 2002-2005, Devicescape Software, Inc.
- * Copyright 2006-2007 Jiri Benc <jbenc at suse.cz>
-+ * Copyright 2007 Johannes Berg <johannes at sipsolutions.net>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
-@@ -192,13 +194,19 @@ struct ieee80211_tx_control {
- #define IEEE80211_TXCTL_FIRST_FRAGMENT (1<<8) /* this is a first fragment of
- * the frame */
- #define IEEE80211_TXCTL_TKIP_NEW_PHASE1_KEY (1<<9)
-+#define IEEE80211_TXCTL_LONG_RETRY_LIMIT (1<<10) /* this frame should be send
-+ * using the through
-+ * set_retry_limit configured
-+ * long retry value */
- u32 flags; /* tx control flags defined
- * above */
-- u8 retry_limit; /* 1 = only first attempt, 2 = one retry, .. */
-+ u8 retry_limit; /* 1 = only first attempt, 2 = one retry, ..
-+ * This could be used when set_retry_limit
-+ * is not implemented by the driver */
- u8 power_level; /* per-packet transmit power level, in dBm */
- u8 antenna_sel_tx; /* 0 = default/diversity, 1 = Ant0, 2 = Ant1 */
-- s8 key_idx; /* -1 = do not encrypt, >= 0 keyidx from
-- * hw->set_key() */
-+ s8 key_idx; /* HW_KEY_IDX_INVALID = do not encrypt,
-+ * other values: keyidx from hw->set_key() */
- u8 icv_len; /* length of the ICV/MIC field in octets */
- u8 iv_len; /* length of the IV field in octets */
- u8 tkip_key[16]; /* generated phase2/phase1 key for hw TKIP */
-@@ -288,28 +296,10 @@ struct ieee80211_conf {
- u8 power_level; /* transmit power limit for current
- * regulatory domain; in dBm */
- u8 antenna_max; /* maximum antenna gain */
-- short tx_power_reduction; /* in 0.1 dBm */
-
- /* 0 = default/diversity, 1 = Ant0, 2 = Ant1 */
- u8 antenna_sel_tx;
- u8 antenna_sel_rx;
--
-- int antenna_def;
-- int antenna_mode;
--
-- /* Following five fields are used for IEEE 802.11H */
-- unsigned int radar_detect;
-- unsigned int spect_mgmt;
-- /* All following fields are currently unused. */
-- unsigned int quiet_duration; /* duration of quiet period */
-- unsigned int quiet_offset; /* how far into the beacon is the quiet
-- * period */
-- unsigned int quiet_period;
-- u8 radar_firpwr_threshold;
-- u8 radar_rssi_threshold;
-- u8 pulse_height_threshold;
-- u8 pulse_rssi_threshold;
-- u8 pulse_inband_threshold;
- };
-
- /**
-@@ -402,29 +392,47 @@ struct ieee80211_if_conf {
- struct ieee80211_tx_control *beacon_control;
- };
-
--typedef enum { ALG_NONE, ALG_WEP, ALG_TKIP, ALG_CCMP, ALG_NULL }
--ieee80211_key_alg;
-+typedef enum {
-+ ALG_NONE,
-+ ALG_WEP,
-+ ALG_TKIP,
[...20827 lines suppressed...]
+/******************************************************************************
+ *
@@ -131540,8 +118596,8 @@
+ return cpu_to_le16((u16)rate|flags);
+}
+#endif
---- linux-2.6.22.noarch/drivers/net/wireless/ath5k_base.h.orig 2007-08-24 11:44:40.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/ath5k_base.h 2007-08-24 11:44:40.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/ath5k_base.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,204 @@
+/*-
+ * Copyright (c) 2002-2007 Sam Leffler, Errno Consulting
@@ -131747,8 +118803,8 @@
+ (ath5k_hw_get_capability(_ah, AR5K_CAP_VEOL, 0, NULL) == 0)
+
+#endif
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/adm8211.c 2007-08-24 11:44:39.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/adm8211.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,2127 @@
+
+/*
@@ -133877,8 +120933,8 @@
+
+module_init(adm8211_init);
+module_exit(adm8211_exit);
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/p54usb.h 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/p54usb.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,133 @@
+#ifndef PRISM54USB_H
+#define PRISM54USB_H
@@ -134013,8 +121069,8 @@
+};
+
+#endif /* PRISM54USB_H */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/iwl-helpers.h 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/iwl-helpers.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,255 @@
+/******************************************************************************
+ *
@@ -134271,8 +121327,8 @@
+}
+
+#endif /* __iwl_helpers_h__ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/iwl-3945-rs.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/iwl-3945-rs.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,985 @@
+/******************************************************************************
+ *
@@ -135259,8 +122315,8 @@
+}
+
+
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/b43_pci_bridge.c 2007-08-24 11:44:39.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/b43_pci_bridge.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,46 @@
+/*
+ * Broadcom 43xx PCI-SSB bridge module
@@ -135308,8 +122364,8 @@
+{
+ ssb_pcihost_unregister(&b43_pci_bridge_driver);
+}
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/Makefile 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/Makefile 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,18 @@
+# core
+ssb-y += main.o scan.o
@@ -135329,8 +122385,8 @@
+ssb-$(CONFIG_SSB_PCIHOST) += b43_pci_bridge.o
+
+obj-$(CONFIG_SSB) += ssb.o
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pcmcia.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pcmcia.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,271 @@
+/*
+ * Sonics Silicon Backplane
@@ -135603,8 +122659,8 @@
+error:
+ return -ENODEV;
+}
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/main.c 2007-08-24 11:44:39.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/main.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,1162 @@
+/*
+ * Sonics Silicon Backplane
@@ -136768,8 +123824,8 @@
+ bus_unregister(&ssb_bustype);
+}
+module_exit(ssb_modexit)
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pcihost_wrapper.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pcihost_wrapper.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,104 @@
+/*
+ * Sonics Silicon Backplane
@@ -136875,8 +123931,8 @@
+ return pci_register_driver(driver);
+}
+EXPORT_SYMBOL(ssb_pcihost_register);
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_mipscore.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_mipscore.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,223 @@
+/*
+ * Sonics Silicon Backplane
@@ -137101,8 +124157,8 @@
+ ssb_mips_serial_init(mcore);
+ ssb_mips_flash_detect(mcore);
+}
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/ssb_private.h 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/ssb_private.h 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,136 @@
+#ifndef LINUX_SSB_PRIVATE_H_
+#define LINUX_SSB_PRIVATE_H_
@@ -137240,8 +124296,8 @@
+#endif /* CONFIG_SSB_PCIHOST */
+
+#endif /* LINUX_SSB_PRIVATE_H_ */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pci.c 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pci.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,740 @@
+/*
+ * Sonics Silicon Backplane PCI-Hostbus related functions.
@@ -137983,8 +125039,8 @@
+out:
+ return err;
+}
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_chipcommon.c 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_chipcommon.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,446 @@
+/*
+ * Sonics Silicon Backplane
@@ -138432,8 +125488,8 @@
+ return nr_ports;
+}
+#endif /* CONFIG_SSB_SERIAL */
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/Kconfig 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/Kconfig 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,117 @@
+menu "Sonics Silicon Backplane"
+
@@ -138552,8 +125608,8 @@
+ If unsure, say N
+
+endmenu
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/scan.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/scan.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,413 @@
+/*
+ * Sonics Silicon Backplane
@@ -138968,8 +126024,8 @@
+ ssb_iounmap(bus);
+ goto out;
+}
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_extif.c 2007-08-24 11:42:15.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_extif.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,129 @@
+/*
+ * Sonics Silicon Backplane
@@ -139100,8 +126156,8 @@
+ mask, value);
+}
+
---- /dev/null 2007-08-24 08:13:44.541426538 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_pcicore.c 2007-08-24 11:42:10.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_pcicore.c 2007-08-30 17:37:10.000000000 -0400
@@ -0,0 +1,576 @@
+/*
+ * Sonics Silicon Backplane
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3336
retrieving revision 1.3337
diff -u -r1.3336 -r1.3337
--- kernel-2.6.spec 30 Aug 2007 16:44:26 -0000 1.3336
+++ kernel-2.6.spec 30 Aug 2007 21:54:14 -0000 1.3337
@@ -599,7 +599,6 @@
Patch682: linux-2.6-wireless-pending.patch
Patch683: linux-2.6-bcm43xx-pci-neuter.patch
Patch690: git-wireless-dev.patch
-Patch691: linux-2.6-mac80211-local-mcast-filter.patch
Patch700: linux-2.6-iwlwifi-fw-name-compat.patch
Patch701: linux-2.6-b43-module-alias.patch
Patch702: linux-2.6-b43-use-old-fw.patch
@@ -1310,8 +1309,6 @@
# Add wireless stack and driver updates from wireless-dev
ApplyPatch git-wireless-dev.patch
-# mac80211: Filter locally-originated multicast frames echoed by AP
-ApplyPatch linux-2.6-mac80211-local-mcast-filter.patch
# temp compat patch for iwlwifi firmware filenames
ApplyPatch linux-2.6-iwlwifi-fw-name-compat.patch
# avoid bcm3xx vs bcm43xx-mac80211 PCI ID conflicts
@@ -2309,6 +2306,9 @@
%endif
%changelog
+* Thu Aug 30 2007 John W. Linville <linville at redhat.com>
+- Update bits from wireless-2.6 and wireless-dev
+
* Thu Aug 30 2007 Chuck Ebbert <cebbert at redhat.com>
- Linux 2.6.22.6-rc1
linux-2.6-wireless-pending.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.1 -r 1.2 linux-2.6-wireless-pending.patch
Index: linux-2.6-wireless-pending.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/linux-2.6-wireless-pending.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-wireless-pending.patch 8 Aug 2007 20:59:44 -0000 1.1
+++ linux-2.6-wireless-pending.patch 30 Aug 2007 21:54:14 -0000 1.2
@@ -1,5 +1,13069 @@
+--- linux-2.6.22.noarch/include/net/mac80211.h.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/include/net/mac80211.h 2007-08-30 17:32:02.000000000 -0400
+@@ -1,7 +1,9 @@
+ /*
+- * Low-level hardware driver -- IEEE 802.11 driver (80211.o) interface
++ * mac80211 <-> driver interface
++ *
+ * Copyright 2002-2005, Devicescape Software, Inc.
+ * Copyright 2006-2007 Jiri Benc <jbenc at suse.cz>
++ * Copyright 2007 Johannes Berg <johannes at sipsolutions.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+@@ -192,13 +194,19 @@ struct ieee80211_tx_control {
+ #define IEEE80211_TXCTL_FIRST_FRAGMENT (1<<8) /* this is a first fragment of
+ * the frame */
+ #define IEEE80211_TXCTL_TKIP_NEW_PHASE1_KEY (1<<9)
++#define IEEE80211_TXCTL_LONG_RETRY_LIMIT (1<<10) /* this frame should be send
++ * using the through
++ * set_retry_limit configured
++ * long retry value */
+ u32 flags; /* tx control flags defined
+ * above */
+- u8 retry_limit; /* 1 = only first attempt, 2 = one retry, .. */
++ u8 retry_limit; /* 1 = only first attempt, 2 = one retry, ..
++ * This could be used when set_retry_limit
++ * is not implemented by the driver */
+ u8 power_level; /* per-packet transmit power level, in dBm */
+ u8 antenna_sel_tx; /* 0 = default/diversity, 1 = Ant0, 2 = Ant1 */
+- s8 key_idx; /* -1 = do not encrypt, >= 0 keyidx from
+- * hw->set_key() */
++ s8 key_idx; /* HW_KEY_IDX_INVALID = do not encrypt,
++ * other values: keyidx from hw->set_key() */
+ u8 icv_len; /* length of the ICV/MIC field in octets */
+ u8 iv_len; /* length of the IV field in octets */
+ u8 tkip_key[16]; /* generated phase2/phase1 key for hw TKIP */
+@@ -288,28 +296,10 @@ struct ieee80211_conf {
+ u8 power_level; /* transmit power limit for current
+ * regulatory domain; in dBm */
+ u8 antenna_max; /* maximum antenna gain */
+- short tx_power_reduction; /* in 0.1 dBm */
+
+ /* 0 = default/diversity, 1 = Ant0, 2 = Ant1 */
+ u8 antenna_sel_tx;
+ u8 antenna_sel_rx;
+-
+- int antenna_def;
+- int antenna_mode;
+-
+- /* Following five fields are used for IEEE 802.11H */
+- unsigned int radar_detect;
+- unsigned int spect_mgmt;
+- /* All following fields are currently unused. */
+- unsigned int quiet_duration; /* duration of quiet period */
+- unsigned int quiet_offset; /* how far into the beacon is the quiet
+- * period */
+- unsigned int quiet_period;
+- u8 radar_firpwr_threshold;
+- u8 radar_rssi_threshold;
+- u8 pulse_height_threshold;
+- u8 pulse_rssi_threshold;
+- u8 pulse_inband_threshold;
+ };
+
+ /**
+@@ -402,29 +392,41 @@ struct ieee80211_if_conf {
+ struct ieee80211_tx_control *beacon_control;
+ };
+
+-typedef enum { ALG_NONE, ALG_WEP, ALG_TKIP, ALG_CCMP, ALG_NULL }
+-ieee80211_key_alg;
++typedef enum {
++ ALG_NONE,
++ ALG_WEP,
++ ALG_TKIP,
++ ALG_CCMP,
++} ieee80211_key_alg;
+
++/*
++ * This flag indiciates that the station this key is being
++ * configured for may use QoS. If your hardware cannot handle
++ * that situation it should reject that key.
++ */
++#define IEEE80211_KEY_FLAG_WMM_STA (1<<0)
+
+ struct ieee80211_key_conf {
++ /*
++ * To be set by the driver to the key index it would like to
++ * get in the ieee80211_tx_control.key_idx which defaults
++ * to HW_KEY_IDX_INVALID so that shouldn't be used.
++ */
++ int hw_key_idx;
+
+- int hw_key_idx; /* filled + used by low-level driver */
++ /* key algorithm, ALG_NONE should never be seen by the driver */
+ ieee80211_key_alg alg;
+- int keylen;
+
+-#define IEEE80211_KEY_FORCE_SW_ENCRYPT (1<<0) /* to be cleared by low-level
+- driver */
+-#define IEEE80211_KEY_DEFAULT_TX_KEY (1<<1) /* This key is the new default TX
+- key (used only for broadcast
+- keys). */
+-#define IEEE80211_KEY_DEFAULT_WEP_ONLY (1<<2) /* static WEP is the only
+- configured security policy;
+- this allows some low-level
+- drivers to determine when
+- hwaccel can be used */
+- u32 flags; /* key configuration flags defined above */
++ /* key flags, see above */
++ u8 flags;
++
++ /* key index: 0-3 */
++ s8 keyidx;
++
++ /* length of key material */
++ u8 keylen;
+
+- s8 keyidx; /* WEP key index */
++ /* the key material */
+ u8 key[0];
+ };
+
+@@ -432,7 +434,7 @@ struct ieee80211_key_conf {
+ #define IEEE80211_SEQ_COUNTER_TX 1
+
+ typedef enum {
+- SET_KEY, DISABLE_KEY, REMOVE_ALL_KEYS,
++ SET_KEY, DISABLE_KEY,
+ } set_key_cmd;
+
+ /* This is driver-visible part of the per-hw state the stack keeps. */
+@@ -457,20 +459,25 @@ struct ieee80211_hw {
+
+ /* TODO: frame_type 802.11/802.3, sw_encryption requirements */
+
+- /* Some wireless LAN chipsets generate beacons in the hardware/firmware
+- * and others rely on host generated beacons. This option is used to
+- * configure the upper layer IEEE 802.11 module to generate beacons.
+- * The low-level driver can use ieee80211_beacon_get() to fetch the
+- * next beacon frame. */
+-#define IEEE80211_HW_HOST_GEN_BEACON (1<<0)
++/* hole at 0 */
+
+- /* The device needs to be supplied with a beacon template only. */
++ /*
++ * The device only needs to be supplied with a beacon template.
++ * If you need the host to generate each beacon then don't use
++ * this flag and use ieee80211_beacon_get().
++ */
+ #define IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE (1<<1)
+
+- /* Some devices handle decryption internally and do not
++ /*
++ * Some devices handle decryption internally and do not
+ * indicate whether the frame was encrypted (unencrypted frames
+ * will be dropped by the hardware, unless specifically allowed
+- * through) */
++ * through.)
++ * It is permissible to not handle all encrypted frames and fall
++ * back to software encryption; however, if this flag is set
++ * unencrypted frames must be dropped unless the driver is told
++ * otherwise via the set_ieee8021x() callback.
++ */
+ #define IEEE80211_HW_DEVICE_HIDES_WEP (1<<2)
+
+ /* Whether RX frames passed to ieee80211_rx() include FCS in the end */
+@@ -484,19 +491,30 @@ struct ieee80211_hw {
+ * can fetch them with ieee80211_get_buffered_bc(). */
+ #define IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING (1<<4)
+
++ /*
++ * This flag is only relevant if hardware encryption is used.
++ * If set, it has two meanings:
++ * 1) the IV and ICV are present in received frames that have
++ * been decrypted (unless IEEE80211_HW_DEVICE_HIDES_WEP is
++ * also set)
++ * 2) on transmission, the IV should be generated in software.
++ *
++ * Please let us know if you *don't* use this flag, the stack would
++ * really like to be able to get the IV to keep key statistics
++ * accurate.
++ */
+ #define IEEE80211_HW_WEP_INCLUDE_IV (1<<5)
+
+- /* will data nullfunc frames get proper TX status callback */
+-#define IEEE80211_HW_DATA_NULLFUNC_ACK (1<<6)
++/* hole at 6 */
+
+- /* Force software encryption for TKIP packets if WMM is enabled. */
+-#define IEEE80211_HW_NO_TKIP_WMM_HWACCEL (1<<7)
[...16561 lines suppressed...]
+- (char *)kmalloc(eeprom->len+sizeof(regctrl), GFP_KERNEL);
++ adapter->prdeeprom = kmalloc(eeprom->len+sizeof(regctrl), GFP_KERNEL);
+ if (!adapter->prdeeprom)
+ return -ENOMEM;
+ memcpy(adapter->prdeeprom, ®ctrl, sizeof(regctrl));
+@@ -72,9 +71,9 @@ static int libertas_ethtool_get_eeprom(s
regctrl.action, regctrl.offset, regctrl.NOB);
ret = libertas_prepare_and_send_command(priv,
@@ -11653,7 +25730,7 @@
®ctrl);
if (ret) {
-@@ -138,8 +138,8 @@ static int libertas_ethtool_get_stats_co
+@@ -138,8 +137,8 @@ static int libertas_ethtool_get_stats_co
/* Get Mesh Statistics */
ret = libertas_prepare_and_send_command(priv,
@@ -11665,7 +25742,7 @@
if (ret) {
ret = 0;
--- linux-2.6.22.noarch/drivers/net/wireless/libertas/decl.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/decl.h 2007-08-08 16:42:22.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/decl.h 2007-08-30 17:32:02.000000000 -0400
@@ -15,14 +15,9 @@ struct wlan_private;
struct sk_buff;
struct net_device;
@@ -11701,7 +25778,7 @@
void __libertas_cleanup_and_insert_cmd(wlan_private * priv,
struct cmd_ctrl_node *ptempcmd);
-@@ -75,17 +68,14 @@ void libertas_mac_event_disconnected(wla
+@@ -75,17 +68,15 @@ void libertas_mac_event_disconnected(wla
void libertas_send_iwevcustom_event(wlan_private * priv, s8 * str);
@@ -11713,16 +25790,27 @@
int *cfp_no);
wlan_private *libertas_add_card(void *card, struct device *dmdev);
-int libertas_activate_card(wlan_private *priv, char *fw_name);
-+int libertas_activate_card(wlan_private *priv);
int libertas_remove_card(wlan_private *priv);
++int libertas_start_card(wlan_private *priv);
++int libertas_stop_card(wlan_private *priv);
int libertas_add_mesh(wlan_private *priv, struct device *dev);
void libertas_remove_mesh(wlan_private *priv);
-
+int libertas_reset_device(wlan_private *priv);
#endif /* _WLAN_DECL_H_ */
---- linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c.orig 2007-08-08 16:42:02.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c 2007-08-08 16:42:22.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/rtl8187.h.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/rtl8187.h 2007-08-30 17:32:02.000000000 -0400
+@@ -67,6 +67,7 @@ struct rtl8187_priv {
+ struct rtl818x_csr *map;
+ void (*rf_init)(struct ieee80211_hw *);
+ int mode;
++ int if_id;
+
+ /* rtl8187 specific */
+ struct ieee80211_channel channels[14];
+--- linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c 2007-08-30 17:32:02.000000000 -0400
@@ -1753,7 +1753,7 @@ prism54_get_oid(struct net_device *ndev,
int rvalue;
enum oid_num_t n = dwrq->flags;
@@ -11751,7 +25839,7 @@
void
--- linux-2.6.22.noarch/drivers/net/wireless/prism54/oid_mgt.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/oid_mgt.c 2007-08-08 16:42:22.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/oid_mgt.c 2007-08-30 17:32:02.000000000 -0400
@@ -244,13 +244,11 @@ mgt_init(islpci_private *priv)
/* Alloc the cache */
for (i = 0; i < OID_NUM_LAST; i++) {
@@ -11767,8 +25855,8 @@
} else
priv->mib[i] = NULL;
}
---- linux-2.6.22.noarch/drivers/net/wireless/Kconfig.orig 2007-08-08 16:42:02.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/Kconfig 2007-08-08 16:42:22.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/Kconfig.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/Kconfig 2007-08-30 17:32:02.000000000 -0400
@@ -63,11 +63,6 @@ config WAVELAN
a Radio LAN (wireless Ethernet-like Local Area Network) using the
radio frequencies 900 MHz and 2.4 GHz.
@@ -11903,8 +25991,8 @@
config PCMCIA_WL3501
tristate "Planet WL3501 PCMCIA cards"
depends on EXPERIMENTAL && PCMCIA && WLAN_80211
---- linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c.orig 2007-08-08 16:42:02.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c 2007-08-08 16:42:22.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c 2007-08-30 17:32:02.000000000 -0400
@@ -859,7 +859,7 @@ static int wl3501_esbq_confirm(struct wl
static void wl3501_online(struct net_device *dev)
@@ -12156,7 +26244,15 @@
int rc = wl3501_get_mib_value(this,
WL3501_MIB_ATTR_PRIV_OPT_IMPLEMENTED,
&implemented, sizeof(implemented));
-@@ -1852,7 +1852,7 @@ static int wl3501_get_power(struct net_d
+@@ -1841,7 +1841,6 @@ static int wl3501_get_encode(struct net_
+ tocopy = min_t(u8, len_keys, wrqu->encoding.length);
+ tocopy = min_t(u8, tocopy, 100);
+ wrqu->encoding.length = tocopy;
+- memset(extra, 0, tocopy);
+ memcpy(extra, keys, tocopy);
+ out:
+ return rc;
+@@ -1852,7 +1851,7 @@ static int wl3501_get_power(struct net_d
union iwreq_data *wrqu, char *extra)
{
u8 pwr_state;
@@ -12165,7 +26261,7 @@
int rc = wl3501_get_mib_value(this,
WL3501_MIB_ATTR_CURRENT_PWR_STATE,
&pwr_state, sizeof(pwr_state));
-@@ -1937,7 +1937,7 @@ static int wl3501_probe(struct pcmcia_de
+@@ -1937,7 +1936,7 @@ static int wl3501_probe(struct pcmcia_de
dev->tx_timeout = wl3501_tx_timeout;
dev->watchdog_timeo = 5 * HZ;
dev->get_stats = wl3501_get_stats;
@@ -12174,7 +26270,7 @@
this->wireless_data.spy_data = &this->spy_data;
this->p_dev = p_dev;
dev->wireless_data = &this->wireless_data;
-@@ -2006,7 +2006,7 @@ static int wl3501_config(struct pcmcia_d
+@@ -2006,7 +2005,7 @@ static int wl3501_config(struct pcmcia_d
SET_MODULE_OWNER(dev);
@@ -12183,7 +26279,7 @@
/*
* At this point, the dev_node_t structure(s) should be initialized and
* arranged in a linked list at link->dev_node.
-@@ -2079,7 +2079,7 @@ static int wl3501_suspend(struct pcmcia_
+@@ -2079,7 +2078,7 @@ static int wl3501_suspend(struct pcmcia_
{
struct net_device *dev = link->priv;
@@ -12192,7 +26288,7 @@
if (link->open)
netif_device_detach(dev);
-@@ -2090,7 +2090,7 @@ static int wl3501_resume(struct pcmcia_d
+@@ -2090,7 +2089,7 @@ static int wl3501_resume(struct pcmcia_d
{
struct net_device *dev = link->priv;
@@ -12202,7 +26298,7 @@
wl3501_reset(dev);
netif_device_attach(dev);
--- linux-2.6.22.noarch/drivers/net/wireless/arlan-proc.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/arlan-proc.c 2007-08-08 16:42:22.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/arlan-proc.c 2007-08-30 17:32:02.000000000 -0400
@@ -435,7 +435,7 @@ static int arlan_sysctl_info(ctl_table *
goto final;
}
@@ -12267,7 +26363,7 @@
} else
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_wlan.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_wlan.h 2007-08-08 16:42:22.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_wlan.h 2007-08-30 17:32:02.000000000 -0400
@@ -3,6 +3,7 @@
#include <linux/wireless.h>
@@ -12285,8 +26381,8 @@
u16 infofid; /* MAC buffer id for info frame */
/* txfid, intransmitfid, next_txtid, and next_alloc are protected by
* txfidlock */
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig 2007-08-08 16:42:02.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c 2007-08-08 16:42:22.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c 2007-08-30 17:32:02.000000000 -0400
@@ -272,7 +272,7 @@ static int sandisk_enable_wireless(struc
{
int res, ret = 0;
@@ -12297,7 +26393,7 @@
tuple_t tuple;
cisparse_t *parse = NULL;
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_hw.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_hw.c 2007-08-08 16:42:22.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_hw.c 2007-08-30 17:32:02.000000000 -0400
@@ -825,7 +825,7 @@ static int hfa384x_get_rid(struct net_de
local->hw_downloading)
return -ENODEV;
@@ -12367,8 +26463,8 @@
local = iface->local;
/* Send disconnect event, e.g., to trigger reassociation after resume
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig 2007-08-08 16:42:02.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2007-08-08 16:42:22.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig 2007-08-30 17:28:10.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2007-08-30 17:32:02.000000000 -0400
@@ -3088,7 +3088,7 @@ static int prism2_ioctl_priv_download(lo
static int prism2_set_genericelement(struct net_device *dev, u8 *elem,
size_t len)
linux-2.6-wireless.patch:
Index: linux-2.6-wireless.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/linux-2.6-wireless.patch,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- linux-2.6-wireless.patch 8 Aug 2007 20:59:44 -0000 1.8
+++ linux-2.6-wireless.patch 30 Aug 2007 21:54:14 -0000 1.9
@@ -1,5 +1,5 @@
--- linux-2.6.22.noarch/include/linux/ieee80211.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/ieee80211.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/ieee80211.h 2007-08-30 17:19:20.000000000 -0400
@@ -227,6 +227,17 @@ struct ieee80211_cts {
#define WLAN_CAPABILITY_SHORT_SLOT_TIME (1<<10)
#define WLAN_CAPABILITY_DSSS_OFDM (1<<13)
@@ -19,7 +19,7 @@
enum ieee80211_statuscode {
WLAN_STATUS_SUCCESS = 0,
--- linux-2.6.22.noarch/include/net/cfg80211.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/cfg80211.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/include/net/cfg80211.h 2007-08-30 17:22:48.000000000 -0400
@@ -11,6 +11,44 @@
* Copyright 2006 Johannes Berg <johannes at sipsolutions.net>
*/
@@ -66,7 +66,7 @@
struct wiphy;
--- linux-2.6.22.noarch/include/net/mac80211.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/mac80211.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/include/net/mac80211.h 2007-08-30 17:19:20.000000000 -0400
@@ -347,9 +347,16 @@ enum ieee80211_if_types {
* @mac_addr: pointer to MAC address of the interface. This pointer is valid
* until the interface is removed (i.e. it cannot be used after
@@ -114,7 +114,7 @@
* returns the 802.11 header length in bytes (not including encryption
* headers). If the data in the sk_buff is too short to contain a valid 802.11
--- linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c 2007-08-30 17:19:20.000000000 -0400
@@ -90,14 +90,11 @@ static char *ieee80211_translate_scan(st
}
@@ -132,8 +132,8 @@
start = iwe_stream_add_event(start, stop, &iwe, IW_EV_FREQ_LEN);
/* Add encryption capability */
---- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c 2007-08-08 16:40:24.000000000 -0400
+--- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c.orig 2007-08-30 17:18:45.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c 2007-08-30 17:19:20.000000000 -0400
@@ -271,8 +271,11 @@ ieee80211softmac_assoc_work(struct work_
*/
dprintk(KERN_INFO PFX "Associate: Scanning for networks first.\n");
@@ -148,7 +148,7 @@
} else {
mac->associnfo.associating = 0;
--- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c 2007-08-30 17:19:20.000000000 -0400
@@ -456,18 +456,13 @@ void
ieee80211softmac_add_network_locked(struct ieee80211softmac_device *mac,
struct ieee80211softmac_network *add_net)
@@ -209,7 +209,7 @@
!memcmp(softmac_net->essid.data, essid->data, essid->len))
return softmac_net;
--- linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c 2007-08-30 17:19:20.000000000 -0400
@@ -157,6 +157,8 @@ void ieee80211_if_set_type(struct net_de
struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);
int oldtype = sdata->type;
@@ -228,7 +228,7 @@
default:
printk(KERN_WARNING "%s: %s: Unknown interface type 0x%x",
--- linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c 2007-08-08 16:40:38.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c 2007-08-30 17:19:20.000000000 -0400
@@ -27,20 +27,6 @@
#include "aes_ccm.h"
#include "debugfs_key.h"
@@ -740,7 +740,7 @@
(iw_handler) ieee80211_ioctl_giwrts, /* SIOCGIWRTS */
(iw_handler) ieee80211_ioctl_siwfrag, /* SIOCSIWFRAG */
--- linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c 2007-08-30 17:19:20.000000000 -0400
@@ -24,11 +24,10 @@ int ieee80211_rate_control_register(stru
{
struct rate_control_alg *alg;
@@ -755,7 +755,7 @@
mutex_lock(&rate_ctrl_mutex);
--- linux-2.6.22.noarch/net/mac80211/Makefile.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/Makefile 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/Makefile 2007-08-30 17:19:20.000000000 -0400
@@ -13,6 +13,7 @@ mac80211-objs := \
ieee80211_iface.o \
ieee80211_rate.o \
@@ -764,8 +764,8 @@
tkip.o \
aes_ccm.o \
wme.o \
---- /dev/null 2007-08-08 08:21:33.519325700 -0400
-+++ linux-2.6.22.noarch/net/mac80211/regdomain.c 2007-08-08 16:40:24.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/net/mac80211/regdomain.c 2007-08-30 17:19:20.000000000 -0400
@@ -0,0 +1,158 @@
+/*
+ * Copyright 2002-2005, Instant802 Networks, Inc.
@@ -926,7 +926,7 @@
+}
+
--- linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h 2007-08-30 17:19:20.000000000 -0400
@@ -26,24 +26,16 @@
* mess shall be deleted completely. */
enum {
@@ -953,7 +953,7 @@
PRISM2_PARAM_KEY_TX_RX_THRESHOLD = 1024,
PRISM2_PARAM_DEFAULT_WEP_ONLY = 1026,
--- linux-2.6.22.noarch/net/mac80211/ieee80211_common.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_common.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_common.h 2007-08-30 17:19:20.000000000 -0400
@@ -47,21 +47,16 @@ enum ieee80211_msg_type {
ieee80211_msg_normal = 0,
ieee80211_msg_tx_callback_ack = 1,
@@ -979,7 +979,7 @@
int tx_rx_count;
char ifname[IFNAMSIZ];
--- linux-2.6.22.noarch/net/mac80211/ieee80211.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211.c 2007-08-08 16:40:38.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211.c 2007-08-30 17:26:39.000000000 -0400
@@ -24,6 +24,7 @@
#include <linux/compiler.h>
#include <linux/bitmap.h>
@@ -1500,7 +1500,7 @@
if (!status) {
printk(KERN_ERR
-@@ -4395,27 +4591,100 @@ void ieee80211_tx_status(struct ieee8021
+@@ -4395,27 +4591,99 @@ void ieee80211_tx_status(struct ieee8021
local->dot11FailedCount++;
}
@@ -1603,7 +1603,6 @@
+ memset(skb->cb, 0, sizeof(skb->cb));
+ netif_rx(skb);
+ skb = skb2;
-+ break;
+ }
+ }
+ out:
@@ -1613,7 +1612,7 @@
}
EXPORT_SYMBOL(ieee80211_tx_status);
-@@ -4619,6 +4888,9 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -4619,6 +4887,9 @@ struct ieee80211_hw *ieee80211_alloc_hw(
((sizeof(struct ieee80211_local) +
NETDEV_ALIGN_CONST) & ~NETDEV_ALIGN_CONST);
@@ -1623,7 +1622,7 @@
local->ops = ops;
/* for now, mdev needs sub_if_data :/ */
-@@ -4647,8 +4919,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -4647,8 +4918,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(
local->short_retry_limit = 7;
local->long_retry_limit = 4;
local->hw.conf.radio_enabled = 1;
@@ -1632,7 +1631,7 @@
local->enabled_modes = (unsigned int) -1;
-@@ -4712,6 +4982,14 @@ int ieee80211_register_hw(struct ieee802
+@@ -4712,6 +4981,14 @@ int ieee80211_register_hw(struct ieee802
goto fail_workqueue;
}
@@ -1647,7 +1646,7 @@
debugfs_hw_add(local);
local->hw.conf.beacon_int = 1000;
-@@ -4818,7 +5096,7 @@ int ieee80211_register_hwmode(struct iee
+@@ -4818,7 +5095,7 @@ int ieee80211_register_hwmode(struct iee
}
if (!(hw->flags & IEEE80211_HW_DEFAULT_REG_DOMAIN_CONFIGURED))
@@ -1656,7 +1655,7 @@
return 0;
}
-@@ -4969,6 +5247,7 @@ static int __init ieee80211_init(void)
+@@ -4969,6 +5246,7 @@ static int __init ieee80211_init(void)
}
ieee80211_debugfs_netdev_init();
@@ -1665,7 +1664,7 @@
return 0;
}
--- linux-2.6.22.noarch/net/mac80211/rc80211_simple.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/rc80211_simple.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/rc80211_simple.c 2007-08-30 17:19:20.000000000 -0400
@@ -187,9 +187,13 @@ static void rate_control_simple_tx_statu
}
#endif
@@ -1705,7 +1704,7 @@
}
--- linux-2.6.22.noarch/net/mac80211/ieee80211_i.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_i.h 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_i.h 2007-08-30 17:19:20.000000000 -0400
@@ -99,6 +99,12 @@ struct ieee80211_sta_bss {
int probe_resp;
unsigned long last_update;
@@ -1789,7 +1788,7 @@
extern void *mac80211_wiphy_privid;
--- linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c 2007-08-30 17:26:39.000000000 -0400
@@ -25,7 +25,6 @@
#include <linux/wireless.h>
#include <linux/random.h>
@@ -2003,7 +2002,7 @@
ieee80211_sta_reset_auth(dev, ifsta);
return 0;
}
-@@ -2121,7 +2150,6 @@ static int ieee80211_sta_config_auth(str
+@@ -2121,18 +2150,20 @@ static int ieee80211_sta_config_auth(str
ieee80211_sta_set_bssid(dev, selected->bssid);
ieee80211_rx_bss_put(dev, selected);
ifsta->state = IEEE80211_AUTHENTICATE;
@@ -2011,7 +2010,15 @@
ieee80211_sta_reset_auth(dev, ifsta);
return 0;
} else {
-@@ -2132,7 +2160,6 @@ static int ieee80211_sta_config_auth(str
+ if (ifsta->state != IEEE80211_AUTHENTICATE) {
+- ieee80211_sta_start_scan(dev, NULL, 0);
++ if (ifsta->auto_ssid_sel)
++ ieee80211_sta_start_scan(dev, NULL, 0);
++ else
++ ieee80211_sta_start_scan(dev, ifsta->ssid,
++ ifsta->ssid_len);
+ ifsta->state = IEEE80211_AUTHENTICATE;
+ set_bit(IEEE80211_STA_REQ_AUTH, &ifsta->request);
} else
ifsta->state = IEEE80211_DISABLED;
}
@@ -2020,7 +2027,7 @@
}
--- linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c 2007-08-08 16:40:38.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c 2007-08-30 17:19:20.000000000 -0400
@@ -118,7 +118,7 @@ static ssize_t ieee80211_if_fmt_flags(
sdata->u.sta.authenticated ? "AUTH\n" : "",
sdata->u.sta.associated ? "ASSOC\n" : "",
@@ -2070,15 +2077,15 @@
return 0;
}
--- linux-2.6.22.noarch/net/wireless/Makefile.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/wireless/Makefile 2007-08-08 16:40:24.000000000 -0400
++++ linux-2.6.22.noarch/net/wireless/Makefile 2007-08-30 17:21:45.000000000 -0400
@@ -1,4 +1,4 @@
obj-$(CONFIG_WIRELESS_EXT) += wext.o
obj-$(CONFIG_CFG80211) += cfg80211.o
-cfg80211-y += core.o sysfs.o
+cfg80211-y += core.o sysfs.o radiotap.o
---- /dev/null 2007-08-08 08:21:33.519325700 -0400
-+++ linux-2.6.22.noarch/net/wireless/radiotap.c 2007-08-08 16:40:24.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/net/wireless/radiotap.c 2007-08-30 17:21:49.000000000 -0400
@@ -0,0 +1,257 @@
+/*
+ * Radiotap parser
@@ -2338,7 +2345,7 @@
+}
+EXPORT_SYMBOL(ieee80211_radiotap_iterator_next);
--- linux-2.6.22.noarch/drivers/net/wireless/airo.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/airo.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/airo.c 2007-08-30 17:19:20.000000000 -0400
@@ -52,6 +52,8 @@
#include "airo.h"
@@ -2955,7 +2962,7 @@
return 0;
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c 2007-08-30 17:19:20.000000000 -0400
@@ -49,8 +49,9 @@ void zd_chip_clear(struct zd_chip *chip)
ZD_MEMCLEAR(chip, sizeof(*chip));
}
@@ -3137,7 +3144,7 @@
ZD_ASSERT(mutex_is_locked(&chip->mutex));
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile 2007-08-30 17:19:20.000000000 -0400
@@ -3,7 +3,7 @@ obj-$(CONFIG_ZD1211RW) += zd1211rw.o
zd1211rw-objs := zd_chip.o zd_ieee80211.o \
zd_mac.o zd_netdev.o \
@@ -3148,7 +3155,7 @@
ifeq ($(CONFIG_ZD1211RW_DEBUG),y)
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h 2007-08-30 17:19:20.000000000 -0400
@@ -26,7 +26,7 @@
#define AL2210_RF 0x7
#define MAXIM_NEW_RF 0x8
@@ -3211,7 +3218,7 @@
#endif /* _ZD_RF_H */
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h 2007-08-30 17:19:20.000000000 -0400
@@ -608,6 +608,9 @@ enum {
#define CR_ZD1211B_TXOP CTL_REG(0x0b20)
#define CR_ZD1211B_RETRY_MAX CTL_REG(0x0b28)
@@ -3266,7 +3273,7 @@
int zd_chip_switch_radio_on(struct zd_chip *chip);
int zd_chip_switch_radio_off(struct zd_chip *chip);
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c 2007-08-30 17:19:20.000000000 -0400
@@ -21,6 +21,8 @@
#include "zd_usb.h"
#include "zd_chip.h"
@@ -3329,7 +3336,7 @@
return 0;
}
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c 2007-08-30 17:19:20.000000000 -0400
@@ -265,7 +265,7 @@ int zd_rf_init_rf2959(struct zd_rf *rf)
{
struct zd_chip *chip = zd_rf_to_chip(rf);
@@ -3340,7 +3347,7 @@
"RF2959 is currently not supported for ZD1211B"
" devices\n");
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h 2007-08-30 17:19:20.000000000 -0400
@@ -188,6 +188,7 @@ struct zd_usb {
struct zd_usb_rx rx;
struct zd_usb_tx tx;
@@ -3359,7 +3366,7 @@
#endif /* _ZD_USB_H */
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c 2007-08-30 17:19:20.000000000 -0400
@@ -34,7 +34,7 @@ static const char * const rfs[] = {
[AL2210_RF] = "AL2210_RF",
[MAXIM_NEW_RF] = "MAXIM_NEW_RF",
@@ -3426,8 +3433,8 @@
rf->type = type;
r = zd_chip_lock_phy_regs(chip);
---- /dev/null 2007-08-08 08:21:33.519325700 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c 2007-08-08 16:40:25.000000000 -0400
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c 2007-08-30 17:19:20.000000000 -0400
@@ -0,0 +1,534 @@
+/* zd_rf_uw2453.c: Functions for the UW2453 RF controller
+ *
@@ -3964,7 +3971,7 @@
+}
+
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h 2007-08-30 17:19:20.000000000 -0400
@@ -189,7 +189,8 @@ int zd_mac_init(struct zd_mac *mac,
struct usb_interface *intf);
void zd_mac_clear(struct zd_mac *mac);
@@ -3976,7 +3983,7 @@
int zd_mac_open(struct net_device *netdev);
int zd_mac_stop(struct net_device *netdev);
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c 2007-08-30 17:19:20.000000000 -0400
@@ -473,7 +473,7 @@ int zd_rf_init_al7230b(struct zd_rf *rf)
{
struct zd_chip *chip = zd_rf_to_chip(rf);
@@ -3995,7 +4002,7 @@
rf->switch_radio_off = al7230b_switch_radio_off;
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c 2007-08-30 17:19:20.000000000 -0400
@@ -15,7 +15,6 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
@@ -4208,7 +4215,7 @@
dev_dbg_f(&intf->dev,
"couldn't initialize mac. Error number %d\n", r);
--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c 2007-08-08 16:40:38.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c 2007-08-30 17:19:20.000000000 -0400
@@ -86,38 +86,46 @@ out:
return r;
}
@@ -4331,7 +4338,7 @@
/*
--- linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c 2007-08-30 17:19:20.000000000 -0400
@@ -1719,9 +1719,6 @@ static int wlan_set_encodeext(struct net
pkey->type = KEY_TYPE_ID_TKIP;
} else if (alg == IW_ENCODE_ALG_CCMP) {
@@ -4343,7 +4350,7 @@
/* If WPA isn't enabled yet, do that now */
--- linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c 2007-08-30 17:19:20.000000000 -0400
@@ -439,7 +439,6 @@ static int process_rxed_802_11_packet(wl
ret = 0;
@@ -4353,7 +4360,7 @@
return ret;
}
--- linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c 2007-08-30 17:19:20.000000000 -0400
@@ -613,6 +613,7 @@ static int wlan_service_main_thread(void
init_waitqueue_entry(&wait, current);
@@ -4363,7 +4370,7 @@
lbs_deb_thread( "main-thread 111: intcounter=%d "
"currenttxskb=%p dnld_sent=%d\n",
--- linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c 2007-08-30 17:19:20.000000000 -0400
@@ -240,7 +240,7 @@ static int wlan_cmd_802_11_enable_rsn(wl
if (*enable)
penableRSN->enable = cpu_to_le16(cmd_enable_rsn);
@@ -4374,7 +4381,7 @@
lbs_deb_leave(LBS_DEB_CMD);
--- linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c 2007-08-30 17:19:20.000000000 -0400
@@ -1768,7 +1768,8 @@ static int ipw2100_up(struct ipw2100_pri
if (priv->stop_rf_kill) {
@@ -4437,7 +4444,7 @@
default:
timeout = timeout_duration[level - 1] / 1000;
--- linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c 2007-08-30 17:19:20.000000000 -0400
@@ -87,7 +87,6 @@ static struct pci_driver prism54_driver
.remove = prism54_remove,
.suspend = prism54_suspend,
@@ -4447,7 +4454,7 @@
/******************************************************************************
--- linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c 2007-08-30 17:19:20.000000000 -0400
@@ -1853,7 +1853,6 @@ prism54_del_mac(struct net_device *ndev,
islpci_private *priv = netdev_priv(ndev);
struct islpci_acl *acl = &priv->acl;
@@ -4522,7 +4529,7 @@
}
}
--- linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c 2007-08-30 17:19:20.000000000 -0400
@@ -70,7 +70,7 @@
#define VQ
#endif
@@ -4605,7 +4612,7 @@
}
--- linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c 2007-08-30 17:19:20.000000000 -0400
@@ -1011,7 +1011,7 @@ static inline void wl3501_md_ind_interru
} else {
skb->dev = dev;
@@ -4616,7 +4623,7 @@
skb_put(skb, pkt_len);
skb->protocol = eth_type_trans(skb, dev);
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c 2007-08-30 17:19:20.000000000 -0400
@@ -326,7 +326,6 @@ static int ap_control_proc_read(char *pa
char *p = page;
struct ap_data *ap = (struct ap_data *) data;
@@ -4742,7 +4749,7 @@
hostap_wds_link_oper(local, sta->addr, WDS_ADD);
}
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h 2007-08-30 17:19:20.000000000 -0400
@@ -1,8 +1,6 @@
#ifndef HOSTAP_CONFIG_H
#define HOSTAP_CONFIG_H
@@ -4753,7 +4760,7 @@
* of IEEE 802.11 management (hostapd) used to be disabled in the default
* configuration. From now on, support for hostapd is always included and it is
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c 2007-08-30 17:19:20.000000000 -0400
@@ -20,7 +20,6 @@
#include "hostap_wlan.h"
@@ -4795,7 +4802,7 @@
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c 2007-08-30 17:19:20.000000000 -0400
@@ -22,7 +22,6 @@
#include "hostap_wlan.h"
@@ -4828,7 +4835,7 @@
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c 2007-08-30 17:19:20.000000000 -0400
@@ -37,7 +37,6 @@
MODULE_AUTHOR("Jouni Malinen");
MODULE_DESCRIPTION("Host AP common routines");
@@ -4838,7 +4845,7 @@
#define TX_TIMEOUT (2 * HZ)
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2007-08-30 17:19:20.000000000 -0400
@@ -3893,8 +3893,6 @@ static void prism2_get_drvinfo(struct ne
local = iface->local;
@@ -4849,7 +4856,7 @@
"%d.%d.%d", (local->sta_fw_ver >> 16) & 0xff,
(local->sta_fw_ver >> 8) & 0xff,
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c.orig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c 2007-08-08 16:40:25.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c 2007-08-30 17:19:20.000000000 -0400
@@ -23,7 +23,6 @@
#include "hostap_wlan.h"
@@ -4891,3 +4898,220 @@
}
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/Documentation/networking/mac80211-injection.txt 2007-08-30 17:21:26.000000000 -0400
+@@ -0,0 +1,59 @@
++How to use packet injection with mac80211
++=========================================
++
++mac80211 now allows arbitrary packets to be injected down any Monitor Mode
++interface from userland. The packet you inject needs to be composed in the
++following format:
++
++ [ radiotap header ]
++ [ ieee80211 header ]
++ [ payload ]
++
++The radiotap format is discussed in
++./Documentation/networking/radiotap-headers.txt.
++
++Despite 13 radiotap argument types are currently defined, most only make sense
++to appear on received packets. Currently three kinds of argument are used by
++the injection code, although it knows to skip any other arguments that are
++present (facilitating replay of captured radiotap headers directly):
++
++ - IEEE80211_RADIOTAP_RATE - u8 arg in 500kbps units (0x02 --> 1Mbps)
++
++ - IEEE80211_RADIOTAP_ANTENNA - u8 arg, 0x00 = ant1, 0x01 = ant2
++
++ - IEEE80211_RADIOTAP_DBM_TX_POWER - u8 arg, dBm
++
++Here is an example valid radiotap header defining these three parameters
++
++ 0x00, 0x00, // <-- radiotap version
++ 0x0b, 0x00, // <- radiotap header length
++ 0x04, 0x0c, 0x00, 0x00, // <-- bitmap
++ 0x6c, // <-- rate
++ 0x0c, //<-- tx power
++ 0x01 //<-- antenna
++
++The ieee80211 header follows immediately afterwards, looking for example like
++this:
++
++ 0x08, 0x01, 0x00, 0x00,
++ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
++ 0x13, 0x22, 0x33, 0x44, 0x55, 0x66,
++ 0x13, 0x22, 0x33, 0x44, 0x55, 0x66,
++ 0x10, 0x86
++
++Then lastly there is the payload.
++
++After composing the packet contents, it is sent by send()-ing it to a logical
++mac80211 interface that is in Monitor mode. Libpcap can also be used,
++(which is easier than doing the work to bind the socket to the right
++interface), along the following lines:
++
++ ppcap = pcap_open_live(szInterfaceName, 800, 1, 20, szErrbuf);
++...
++ r = pcap_inject(ppcap, u8aSendBuffer, nLength);
++
++You can also find sources for a complete inject test applet here:
++
++http://penumbra.warmcat.com/_twk/tiki-index.php?page=packetspammer
++
++Andy Green <andy at warmcat.com>
+--- /dev/null 2007-08-30 08:15:33.553140766 -0400
++++ linux-2.6.22.noarch/Documentation/networking/radiotap-headers.txt 2007-08-30 17:21:26.000000000 -0400
+@@ -0,0 +1,152 @@
++How to use radiotap headers
++===========================
++
++Pointer to the radiotap include file
++------------------------------------
++
++Radiotap headers are variable-length and extensible, you can get most of the
++information you need to know on them from:
++
++./include/net/ieee80211_radiotap.h
++
++This document gives an overview and warns on some corner cases.
++
++
++Structure of the header
++-----------------------
++
++There is a fixed portion at the start which contains a u32 bitmap that defines
++if the possible argument associated with that bit is present or not. So if b0
++of the it_present member of ieee80211_radiotap_header is set, it means that
++the header for argument index 0 (IEEE80211_RADIOTAP_TSFT) is present in the
++argument area.
++
++ < 8-byte ieee80211_radiotap_header >
++ [ <possible argument bitmap extensions ... > ]
++ [ <argument> ... ]
++
++At the moment there are only 13 possible argument indexes defined, but in case
++we run out of space in the u32 it_present member, it is defined that b31 set
++indicates that there is another u32 bitmap following (shown as "possible
++argument bitmap extensions..." above), and the start of the arguments is moved
++forward 4 bytes each time.
++
++Note also that the it_len member __le16 is set to the total number of bytes
++covered by the ieee80211_radiotap_header and any arguments following.
++
++
++Requirements for arguments
++--------------------------
++
++After the fixed part of the header, the arguments follow for each argument
++index whose matching bit is set in the it_present member of
++ieee80211_radiotap_header.
++
++ - the arguments are all stored little-endian!
++
++ - the argument payload for a given argument index has a fixed size. So
++ IEEE80211_RADIOTAP_TSFT being present always indicates an 8-byte argument is
++ present. See the comments in ./include/net/ieee80211_radiotap.h for a nice
++ breakdown of all the argument sizes
++
++ - the arguments must be aligned to a boundary of the argument size using
++ padding. So a u16 argument must start on the next u16 boundary if it isn't
++ already on one, a u32 must start on the next u32 boundary and so on.
++
++ - "alignment" is relative to the start of the ieee80211_radiotap_header, ie,
++ the first byte of the radiotap header. The absolute alignment of that first
++ byte isn't defined. So even if the whole radiotap header is starting at, eg,
++ address 0x00000003, still the first byte of the radiotap header is treated as
++ 0 for alignment purposes.
++
++ - the above point that there may be no absolute alignment for multibyte
++ entities in the fixed radiotap header or the argument region means that you
++ have to take special evasive action when trying to access these multibyte
++ entities. Some arches like Blackfin cannot deal with an attempt to
++ dereference, eg, a u16 pointer that is pointing to an odd address. Instead
++ you have to use a kernel API get_unaligned() to dereference the pointer,
++ which will do it bytewise on the arches that require that.
++
++ - The arguments for a given argument index can be a compound of multiple types
++ together. For example IEEE80211_RADIOTAP_CHANNEL has an argument payload
++ consisting of two u16s of total length 4. When this happens, the padding
++ rule is applied dealing with a u16, NOT dealing with a 4-byte single entity.
++
++
++Example valid radiotap header
++-----------------------------
++
++ 0x00, 0x00, // <-- radiotap version + pad byte
++ 0x0b, 0x00, // <- radiotap header length
++ 0x04, 0x0c, 0x00, 0x00, // <-- bitmap
++ 0x6c, // <-- rate (in 500kHz units)
++ 0x0c, //<-- tx power
++ 0x01 //<-- antenna
++
++
++Using the Radiotap Parser
++-------------------------
++
++If you are having to parse a radiotap struct, you can radically simplify the
++job by using the radiotap parser that lives in net/wireless/radiotap.c and has
++its prototypes available in include/net/cfg80211.h. You use it like this:
++
++#include <net/cfg80211.h>
++
++/* buf points to the start of the radiotap header part */
++
++int MyFunction(u8 * buf, int buflen)
++{
++ int pkt_rate_100kHz = 0, antenna = 0, pwr = 0;
++ struct ieee80211_radiotap_iterator iterator;
++ int ret = ieee80211_radiotap_iterator_init(&iterator, buf, buflen);
++
++ while (!ret) {
++
++ ret = ieee80211_radiotap_iterator_next(&iterator);
++
++ if (ret)
++ continue;
++
++ /* see if this argument is something we can use */
++
++ switch (iterator.this_arg_index) {
++ /*
++ * You must take care when dereferencing iterator.this_arg
++ * for multibyte types... the pointer is not aligned. Use
++ * get_unaligned((type *)iterator.this_arg) to dereference
++ * iterator.this_arg for type "type" safely on all arches.
++ */
++ case IEEE80211_RADIOTAP_RATE:
++ /* radiotap "rate" u8 is in
++ * 500kbps units, eg, 0x02=1Mbps
++ */
++ pkt_rate_100kHz = (*iterator.this_arg) * 5;
++ break;
++
++ case IEEE80211_RADIOTAP_ANTENNA:
++ /* radiotap uses 0 for 1st ant */
++ antenna = *iterator.this_arg);
++ break;
++
++ case IEEE80211_RADIOTAP_DBM_TX_POWER:
++ pwr = *iterator.this_arg;
++ break;
++
++ default:
++ break;
++ }
++ } /* while more rt headers */
++
++ if (ret != -ENOENT)
++ return TXRX_DROP;
++
++ /* discard the radiotap header part */
++ buf += iterator.max_length;
++ buflen -= iterator.max_length;
++
++ ...
++
++}
++
++Andy Green <andy at warmcat.com>
--- linux-2.6-mac80211-local-mcast-filter.patch DELETED ---
- Previous message (by thread): rpms/sugar-presence-service/OLPC-2 .cvsignore, 1.15, 1.16 sources, 1.15, 1.16 sugar-presence-service.spec, 1.15, 1.16
- Next message (by thread): devel/anaconda .cvsignore, 1.438, 1.439 anaconda.spec, 1.574, 1.575 sources, 1.566, 1.567
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list