* netdev-2.6 queue updated
@ 2005-02-13 20:38 Jeff Garzik
2005-02-13 23:24 ` [patch 2.6.11-rc4-netdev1 1/4] ieee80211: failure of ieee80211_crypto_init() Francois Romieu
2005-02-13 23:30 ` [patch 2.6.11-rc4-netdev1 1/2] strip: clash with include/linux/netdevice.h Francois Romieu
0 siblings, 2 replies; 8+ messages in thread
From: Jeff Garzik @ 2005-02-13 20:38 UTC (permalink / raw)
To: Netdev; +Cc: Linux Kernel
[-- Attachment #1: Type: text/plain, Size: 387 bytes --]
See attached for list of changes, BK info, and patch URL.
Recent changes:
* posted patch against 2.6.11-rc4 (see attached)
* incorporated ieee80211 lib code into the wireless-2.6 sub-tree, which
is included in this queue. This code will form the basis of the "Linux
wireless stack". Wireless hackers... start hacking!
* r8169 fixes, sundance fix, bonding update, smc91x update
[-- Attachment #2: netdev.txt --]
[-- Type: text/plain, Size: 16345 bytes --]
BK users:
bk pull bk://gkernel.bkbits.net/netdev-2.6
Patch:
http://www.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.11-rc4-netdev1.patch.bz2
This will update the following files:
drivers/net/bagetlance.c | 1368 -----
include/linux/dp83840.h | 41
Documentation/networking/bonding.txt | 2101 +++++----
Documentation/networking/e100.txt | 3
Documentation/networking/ixgb.txt | 9
MAINTAINERS | 7
arch/arm/mach-pxa/lubbock.c | 2
arch/arm/mach-sa1100/neponset.c | 2
drivers/net/3c503.c | 67
drivers/net/3c515.c | 32
drivers/net/8139cp.c | 100
drivers/net/8139too.c | 291 -
drivers/net/Kconfig | 56
drivers/net/Makefile | 2
drivers/net/Space.c | 11
drivers/net/arcnet/arc-rawmode.c | 4
drivers/net/arcnet/arc-rimi.c | 14
drivers/net/arcnet/arcnet.c | 30
drivers/net/arcnet/com20020.c | 6
drivers/net/arcnet/com90io.c | 4
drivers/net/arcnet/com90xx.c | 8
drivers/net/arcnet/rfc1051.c | 8
drivers/net/arcnet/rfc1201.c | 12
drivers/net/au1000_eth.c | 1361 ++++-
drivers/net/au1000_eth.h | 55
drivers/net/b44.h | 14
drivers/net/bonding/bond_alb.c | 8
drivers/net/bonding/bond_main.c | 35
drivers/net/cs89x0.c | 4
drivers/net/eepro100.c | 10
drivers/net/es3210.c | 32
drivers/net/ewrk3.c | 87
drivers/net/fealnx.c | 275 -
drivers/net/hamradio/baycom_epp.c | 53
drivers/net/hamradio/baycom_par.c | 8
drivers/net/hamradio/baycom_ser_fdx.c | 7
drivers/net/hamradio/baycom_ser_hdx.c | 7
drivers/net/hamradio/bpqether.c | 17
drivers/net/hamradio/dmascc.c | 2073 ++++----
drivers/net/hamradio/hdlcdrv.c | 48
drivers/net/hamradio/mkiss.c | 12
drivers/net/hamradio/yam.c | 38
drivers/net/ibm_emac/ibm_emac.h | 4
drivers/net/ibmlana.c | 99
drivers/net/ibmlana.h | 1
drivers/net/ioc3-eth.c | 83
drivers/net/irda/act200l-sir.c | 3
drivers/net/irda/irtty-sir.c | 4
drivers/net/irda/ma600-sir.c | 12
drivers/net/irda/sir_dev.c | 4
drivers/net/irda/tekram-sir.c | 3
drivers/net/jazzsonic.c | 217
drivers/net/meth.c | 275 -
drivers/net/meth.h | 2
drivers/net/mv643xx_eth.c | 2400 +++++-----
drivers/net/mv643xx_eth.h | 603 --
drivers/net/ni65.c | 3
drivers/net/ns83820.c | 3
drivers/net/pcmcia/ibmtr_cs.c | 7
drivers/net/pcmcia/xirc2ps_cs.c | 23
drivers/net/pcnet32.c | 47
drivers/net/ppp_generic.c | 2
drivers/net/r8169.c | 92
drivers/net/s2io.c | 45
drivers/net/sb1250-mac.c | 109
drivers/net/sgiseeq.c | 70
drivers/net/sis900.c | 195
drivers/net/sk_mca.c | 126
drivers/net/sk_mca.h | 19
drivers/net/skge.c | 3334 ++++++++++++++
drivers/net/skge.h | 3005 ++++++++++++
drivers/net/smc-mca.c | 37
drivers/net/smc-ultra.c | 34
drivers/net/smc-ultra32.c | 30
drivers/net/smc91x.c | 203
drivers/net/smc91x.h | 79
drivers/net/sonic.c | 4
drivers/net/sundance.c | 7
drivers/net/tg3.h | 14
drivers/net/tokenring/ibmtr.c | 158
drivers/net/typhoon-firmware.h | 5568 ++++++++++--------------
drivers/net/typhoon.c | 244 -
drivers/net/wan/cosa.c | 7
drivers/net/wan/dscc4.c | 117
drivers/net/wd.c | 36
drivers/net/wireless/Kconfig | 2
drivers/net/wireless/Makefile | 2
drivers/net/wireless/airo.c | 25
drivers/net/wireless/airport.c | 5
drivers/net/wireless/arlan.h | 4
drivers/net/wireless/atmel_cs.c | 3
drivers/net/wireless/hermes.c | 43
drivers/net/wireless/hermes.h | 62
drivers/net/wireless/hostap/Kconfig | 104
drivers/net/wireless/hostap/Makefile | 8
drivers/net/wireless/hostap/hostap.c | 1205 +++++
drivers/net/wireless/hostap/hostap.h | 57
drivers/net/wireless/hostap/hostap_80211.h | 107
drivers/net/wireless/hostap/hostap_80211_rx.c | 1080 ++++
drivers/net/wireless/hostap/hostap_80211_tx.c | 522 ++
drivers/net/wireless/hostap/hostap_ap.c | 3259 ++++++++++++++
drivers/net/wireless/hostap/hostap_ap.h | 272 +
drivers/net/wireless/hostap/hostap_common.h | 556 ++
drivers/net/wireless/hostap/hostap_config.h | 86
drivers/net/wireless/hostap/hostap_crypt.c | 167
drivers/net/wireless/hostap/hostap_crypt.h | 50
drivers/net/wireless/hostap/hostap_crypt_ccmp.c | 486 ++
drivers/net/wireless/hostap/hostap_crypt_tkip.c | 696 +++
drivers/net/wireless/hostap/hostap_crypt_wep.c | 281 +
drivers/net/wireless/hostap/hostap_cs.c | 785 +++
drivers/net/wireless/hostap/hostap_download.c | 761 +++
drivers/net/wireless/hostap/hostap_hw.c | 3607 +++++++++++++++
drivers/net/wireless/hostap/hostap_info.c | 469 ++
drivers/net/wireless/hostap/hostap_ioctl.c | 3624 +++++++++++++++
drivers/net/wireless/hostap/hostap_pci.c | 452 +
drivers/net/wireless/hostap/hostap_plx.c | 611 ++
drivers/net/wireless/hostap/hostap_proc.c | 466 ++
drivers/net/wireless/hostap/hostap_wlan.h | 1071 ++++
drivers/net/wireless/orinoco_cs.c | 10
drivers/net/wireless/orinoco_pci.c | 7
drivers/net/wireless/orinoco_plx.c | 82
drivers/net/wireless/orinoco_tmd.c | 51
drivers/net/wireless/prism54/isl_ioctl.c | 2
drivers/net/wireless/ray_cs.c | 5
include/linux/ibmtr.h | 15
include/linux/mii.h | 4
include/linux/mv643xx.h | 434 +
include/linux/netdevice.h | 2
include/linux/pci_ids.h | 8
include/net/ieee80211.h | 883 +++
include/net/ieee80211_crypt.h | 86
net/Kconfig | 2
net/Makefile | 1
net/core/dev.c | 28
net/ieee80211/Kconfig | 71
net/ieee80211/Makefile | 11
net/ieee80211/ieee80211_crypt.c | 253 +
net/ieee80211/ieee80211_crypt_ccmp.c | 473 ++
net/ieee80211/ieee80211_crypt_tkip.c | 711 +++
net/ieee80211/ieee80211_crypt_wep.c | 275 +
net/ieee80211/ieee80211_module.c | 268 +
net/ieee80211/ieee80211_rx.c | 1206 +++++
net/ieee80211/ieee80211_tx.c | 448 +
net/ieee80211/ieee80211_wx.c | 471 ++
144 files changed, 42414 insertions(+), 9971 deletions(-)
through these ChangeSets:
<andi:cosy.sbg.ac.at>:
o sundance: attempt to address high irqs due to TX overflow
<dfarnsworth:mvista.com>:
o Big rename
o Rename MV_READ => mv_read and MV_WRITE => mv_write
o Additional whitespace cleanups, mostly changing spaces to tabs in comments
o Run mv643xx_eth.[ch] through scripts/Lindent
o Add a function to detect at runtime whether a PHY is attached to the specified port, and use it to cause the probe routine to fail when there is no PHY.
o This one liner removes a spurious left paren fixing an obvious syntax error in the #ifndef MV64340_NAPI case
o Add support for PHYs/boards that don't support autonegotiation
o With this patch, the driver now calls netif_carrier_off/netif_carrier_on
o This patch cleans up the handling of receive skb sizing
<jketreno:linux.intel.com>:
o ieee80211 subsystem
<philipp.gortan:tttech.com>:
o [netdrvr 8139cp] add PCI ID
Adrian Bunk:
o remove dp83840.h
Alexander Viro:
o 3c503 (iomem + isa-ectomy)
o ibmlana part 2 (iomem annotations and isa-ectomy)
o ibmlana part 1 (netdev_priv())
o sk_mca - iomem and isa-ectomy
o sk_mca - netdev_priv()
o ibmtr 2/2: ibmtr annotations - the rest
o ibmtr 1/2: iomem annotations - trivial part
o es3210 iomem annotions and isa-ectomy
o ewrk3 iomem annotations + isa-ectomy
o wd iomem annotations + isa-ectomy
o smc-ultra32 iomem annotations + isa-ectomy
o smc-ultra iomem annotations + isa-ectomy
o smc-mca iomem annotations and isa-ectomy
o fealnx iomem annotations, switch to io{read,write}
o wireless iomem annotations and fixes, switch to io{read,write}
Dale Farnsworth:
o This patch simplifies the mv64340_eth_set_rx_mode function without changing its behavior.
o This patch makes the use of the MV64340_RX_QUEUE_FILL_ON_TASK config macro more consistent, though the macro remains undefined, since the feature still does not work properly.
o This patch adds support for passing additional parameters via the platform_device interface. These additional parameters are:
o This patch adds device driver model support to the mv643xx_eth driver
o This patch replaces the use of the pci_map_* functions with the corresponding dma_map_* functions.
o This patch fixes the code that enables hardware checksum generation
o This patch removes spin delays (count to 1000000, ugh) and instead waits with udelay or msleep for hardware flags to change.
o This patch removes code that is redundant or useless
Daniele Venzano:
o sis900: chiprev i/o cleanups
o sis900: debugging output update
o sis900 printk audit
o sis900: version bump; remove broken URL
o sis900: add infrastructure needed for standard netif messages
David Dillow:
o Bump version and release date
o Version 03.001.008 of the Typhoon firmware, courtesy of 3Com
o Fixup the version reporting to match 3Com
o Use module_param() and add descriptions
o Teach typhoon to use port IO on machines that need it. It will attempt to use MMIO, but if that fails (or the user asks), it will fallback to port IO.
o Enable bus mastering before saving our state, or we'll only be able to load the modules one time.
David T. Hollis:
o Move MII-related constants from b44/tg3 drivers to linux/mii.h
Domen Puncer:
o net/ewrk3: replace schedule_timeout() with msleep_interruptible()
o net/tekram-sir: replace schedule_timeout() with msleep()
o net/ns83820: replace schedule_timeout() with msleep()
o net/ni65: replace schedule_timeout() with msleep()
o net/sir_dev: replace schedule_timeout() with msleep()
o net/xirc2ps_cs: replace Wait() with msleep()
o net/ma600-sir: replace schedule_timeout() with msleep()
o net/irtty-sir: replace schedule_timeout() with msleep()
o net/act2001-sir: replace schedule_timeout() with msleep()
o arcnet: remove casts
Don Fry:
o pcnet32: 79c976 with fiber optic fix
Felipe Damasio:
o 8139cp net driver: add MODULE_VERSION
François Romieu:
o r8169: synchronization and balancing when the device is closed
o r8169: screaming irq when the device is closed
o r8169: typo in debugging code
o r8169: merge of Realtek's code
o r8169: endianness fixes
o dscc4: removal of unneeded variable
o dscc4: removal of unneeded casts
o dscc4: error status checking and pci janitoring
o dscc4: code factorisation
o dscc4: use of uncompletely initialized struct
o 8139cp: SG support fixes
Ganesh Venkatesan:
o ixgb: Documentation/networking/ixgb.txt
Ian Campbell:
o use datacs in smc91x driver
o smc91x: power down PHY on suspend
Jay Vosburgh:
o bonding: Update/rewrite bonding.txt
o bonding: Update kconfig description
o bonding: change misleading warning
o bonding: use wrappers to change mtu and MAC
o net/core: move set MAC into separate function
Jeff Garzik:
o [wireless hostap] update for new pci_save_state()
o [netdrvr 8139cp] TSO support
Joshua Kwan:
o hostap: fix Kconfig typos and missing select CRYPTO
Jouni Malinen:
o Host AP: Replaced MODULE_PARM with module_param*
o Host AP: Replaced direct dev->priv references with netdev_priv(dev)
o Host AP: Updated to use Linux wireless extensions v17
o Host AP: pci_register_driver() return value changes
o Host AP: Fix netif_carrier_off() in non-client modes
o Host AP: Fix PRISM2_IO_DEBUG
o Host AP: Use void __iomem * with {read,write}{b,w}
o Host AP: Fix card enabling after firmware download
o Host AP: Do not bridge packets to unauthorized ports
o Host AP: Fix compilation with PRISM2_NO_STATION_MODES defined
o Host AP: Prevent STAs from associating using AP address
o Host AP: Fix hw address changing for wifi# interface
o Host AP: Remove ioctl debug messages
o Host AP: Ignore (Re)AssocResp messages silently
o Host AP: Fix interface packet counters
o Host AP: Disable EAPOL TX/RX debug messages
o fix hostap crypto bugs
o Add HostAP wireless driver
JustMan:
o atmel_cs: Add support LG LW2100N WLAN PCMCIA card
Matt Porter:
o Add PPC440SP support to IBM EMAC driver
Nicolas Pitre:
o smc91x: allow RX of VLAN packets
Nishanth Aravamudan:
o net/cosa: replace schedule_timeout() with msleep()
o net/airo: replace schedule_timeout() with msleep()/ssleep()
o net/cs89x0: replace schedule_timeout() with msleep()
Paul Mackerras:
o remove bogus exports in ppp
Pavel Machek:
o eepro100 kill obsolete ifdefs
Pekka Enberg:
o 8139too: use iomap for pio/mmio
Ralf Bächle:
o Reformat DMASCC driver
o Use netdev_priv in baycom_epp driver
o Use netdev_priv in baycom_ser_fdx driver
o Use netdev_priv in hdlcdrv driver
o Use netdev_priv in baycom_ser_hdx driver
o Use netdev_priv in baycom_par driver
o Use netdev_priv in bpqether driver
o Use netdev_priv in mkiss driver
o Use netdev_priv in YAM driver
o SGI Seeq updates
o SB1250 driver updates
o S2IO syntax fixes
o Meth driver updates
o Marvell MV-64340 driver upda
o Jazzsonic driver updates
o IOC3 driver updates
o Remove Baget network driver
o Au1000 driver updates
Randy Dunlap:
o ray_cs: reduce stack usage (sockaddr)
o prism54: use NULL for pointer
o (v2) arlan: remove gcc warning with CONFIG_PROC_FS=n
Rene Herman:
o 8139too Interframe Gap Time
Scott Feldman:
o e100: remove reference to NAPI config option
Steffen Klassert:
o Add MODULE_VERSION to the 3c515 driver
o Use netdev_priv in the 3c515 driver
o 8139cp - add netpoll support
Stephen Hemminger:
o skge driver (0.5)
o 8139too: use netdev_priv
o 8139cp - module_param
Thomas Gleixner:
o rtl8139too.c: Fix missing pci_disable_dev
o rtl8139too.c: Fix missing pci_disable_dev
Tony Lindgren:
o Add OMAP support to smc91x Ethernet driver
^ permalink raw reply [flat|nested] 8+ messages in thread* [patch 2.6.11-rc4-netdev1 1/4] ieee80211: failure of ieee80211_crypto_init()
2005-02-13 20:38 netdev-2.6 queue updated Jeff Garzik
@ 2005-02-13 23:24 ` Francois Romieu
2005-02-13 23:25 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Francois Romieu
2005-02-13 23:30 ` [patch 2.6.11-rc4-netdev1 1/2] strip: clash with include/linux/netdevice.h Francois Romieu
1 sibling, 1 reply; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:24 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev, Stephen Hemminger, Randy Dunlap, James Ketrenos
Tell the world that ieee80211_crypto_init() failed and propagate its
status code.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN net/ieee80211/ieee80211_crypt.c~80211-000 net/ieee80211/ieee80211_crypt.c
--- a/net/ieee80211/ieee80211_crypt.c~80211-000 2005-02-13 23:38:22.751792758 +0100
+++ b/net/ieee80211/ieee80211_crypt.c 2005-02-13 23:38:22.762790957 +0100
@@ -207,17 +207,23 @@ static struct ieee80211_crypto_ops ieee8
static int __init ieee80211_crypto_init(void)
{
+ int ret = -ENOMEM;
+
hcrypt = kmalloc(sizeof(*hcrypt), GFP_KERNEL);
- if (hcrypt == NULL)
- return -ENOMEM;
+ if (!hcrypt)
+ goto out;
memset(hcrypt, 0, sizeof(*hcrypt));
INIT_LIST_HEAD(&hcrypt->algs);
spin_lock_init(&hcrypt->lock);
- (void) ieee80211_register_crypto_ops(&ieee80211_crypt_null);
-
- return 0;
+ ret = ieee80211_register_crypto_ops(&ieee80211_crypt_null);
+ if (ret < 0) {
+ kfree(hcrypt);
+ hcrypt = NULL;
+ }
+out:
+ return ret;
}
diff -puN net/ieee80211/ieee80211_crypt_ccmp.c~80211-000 net/ieee80211/ieee80211_crypt_ccmp.c
--- a/net/ieee80211/ieee80211_crypt_ccmp.c~80211-000 2005-02-13 23:38:22.754792267 +0100
+++ b/net/ieee80211/ieee80211_crypt_ccmp.c 2005-02-13 23:38:22.763790793 +0100
@@ -456,10 +456,7 @@ static struct ieee80211_crypto_ops ieee8
static int __init ieee80211_crypto_ccmp_init(void)
{
- if (ieee80211_register_crypto_ops(&ieee80211_crypt_ccmp) < 0)
- return -1;
-
- return 0;
+ return ieee80211_register_crypto_ops(&ieee80211_crypt_ccmp);
}
diff -puN net/ieee80211/ieee80211_crypt_tkip.c~80211-000 net/ieee80211/ieee80211_crypt_tkip.c
--- a/net/ieee80211/ieee80211_crypt_tkip.c~80211-000 2005-02-13 23:38:22.757791776 +0100
+++ b/net/ieee80211/ieee80211_crypt_tkip.c 2005-02-13 23:38:22.764790629 +0100
@@ -694,10 +694,7 @@ static struct ieee80211_crypto_ops ieee8
static int __init ieee80211_crypto_tkip_init(void)
{
- if (ieee80211_register_crypto_ops(&ieee80211_crypt_tkip) < 0)
- return -1;
-
- return 0;
+ return ieee80211_register_crypto_ops(&ieee80211_crypt_tkip);
}
diff -puN net/ieee80211/ieee80211_crypt_wep.c~80211-000 net/ieee80211/ieee80211_crypt_wep.c
--- a/net/ieee80211/ieee80211_crypt_wep.c~80211-000 2005-02-13 23:38:22.759791448 +0100
+++ b/net/ieee80211/ieee80211_crypt_wep.c 2005-02-13 23:38:22.764790629 +0100
@@ -258,10 +258,7 @@ static struct ieee80211_crypto_ops ieee8
static int __init ieee80211_crypto_wep_init(void)
{
- if (ieee80211_register_crypto_ops(&ieee80211_crypt_wep) < 0)
- return -1;
-
- return 0;
+ return ieee80211_register_crypto_ops(&ieee80211_crypt_wep);
}
_
^ permalink raw reply [flat|nested] 8+ messages in thread* [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks
2005-02-13 23:24 ` [patch 2.6.11-rc4-netdev1 1/4] ieee80211: failure of ieee80211_crypto_init() Francois Romieu
@ 2005-02-13 23:25 ` Francois Romieu
2005-02-13 23:27 ` [patch 2.6.11-rc4-netdev1 3/4] ieee80211: C99 initialization for eap_types Francois Romieu
2005-02-24 6:16 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Jeff Garzik
0 siblings, 2 replies; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:25 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev, Stephen Hemminger, Randy Dunlap, James Ketrenos
Remove several checks before free/undo.
It turns out that crypto_free_tfm() did not need to be issued
in ieee80211_ccmp_init() nor in prism2_wep_init().
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN net/ieee80211/ieee80211_crypt_ccmp.c~80211-010 net/ieee80211/ieee80211_crypt_ccmp.c
--- a/net/ieee80211/ieee80211_crypt_ccmp.c~80211-010 2005-02-13 23:39:29.137921826 +0100
+++ b/net/ieee80211/ieee80211_crypt_ccmp.c 2005-02-13 23:39:59.957874980 +0100
@@ -81,7 +81,7 @@ static void * ieee80211_ccmp_init(int ke
priv = kmalloc(sizeof(*priv), GFP_ATOMIC);
if (priv == NULL)
- goto fail;
+ goto out;
memset(priv, 0, sizeof(*priv));
priv->key_idx = key_idx;
@@ -89,19 +89,11 @@ static void * ieee80211_ccmp_init(int ke
if (priv->tfm == NULL) {
printk(KERN_DEBUG "ieee80211_crypt_ccmp: could not allocate "
"crypto API aes\n");
- goto fail;
- }
-
- return priv;
-
-fail:
- if (priv) {
- if (priv->tfm)
- crypto_free_tfm(priv->tfm);
kfree(priv);
+ priv = NULL;
}
-
- return NULL;
+out:
+ return priv;
}
diff -puN net/ieee80211/ieee80211_crypt_tkip.c~80211-010 net/ieee80211/ieee80211_crypt_tkip.c
--- a/net/ieee80211/ieee80211_crypt_tkip.c~80211-010 2005-02-13 23:39:29.140921334 +0100
+++ b/net/ieee80211/ieee80211_crypt_tkip.c 2005-02-14 00:10:37.681957335 +0100
@@ -67,37 +67,35 @@ static void * ieee80211_tkip_init(int ke
struct ieee80211_tkip_data *priv;
priv = kmalloc(sizeof(*priv), GFP_ATOMIC);
- if (priv == NULL)
- goto fail;
- memset(priv, 0, sizeof(*priv));
- priv->key_idx = key_idx;
-
- priv->tfm_arc4 = crypto_alloc_tfm("arc4", 0);
- if (priv->tfm_arc4 == NULL) {
- printk(KERN_DEBUG "ieee80211_crypt_tkip: could not allocate "
- "crypto API arc4\n");
- goto fail;
- }
-
- priv->tfm_michael = crypto_alloc_tfm("michael_mic", 0);
- if (priv->tfm_michael == NULL) {
- printk(KERN_DEBUG "ieee80211_crypt_tkip: could not allocate "
- "crypto API michael_mic\n");
- goto fail;
- }
-
- return priv;
-
-fail:
if (priv) {
- if (priv->tfm_michael)
- crypto_free_tfm(priv->tfm_michael);
- if (priv->tfm_arc4)
- crypto_free_tfm(priv->tfm_arc4);
- kfree(priv);
+ struct {
+ struct crypto_tfm **tfm;
+ char *name;
+ } tab[] = {
+ { &priv->tfm_arc4, "arc4" },
+ { &priv->tfm_michael, "michael_mic" },
+ { NULL, NULL }
+ }, *p;
+
+ memset(priv, 0, sizeof(*priv));
+ priv->key_idx = key_idx;
+
+ for (p = tab; p->name; p++) {
+ *p->tfm = crypto_alloc_tfm(p->name, 0);
+ if (!*p->tfm) {
+ printk(KERN_DEBUG "ieee80211_crypt_tkip: "
+ "could not allocate crypto API %s\n",
+ p->name);
+ while (p-- != tab)
+ crypto_free_tfm(*p->tfm);
+ kfree(priv);
+ priv = NULL;
+ break;
+ }
+ }
}
- return NULL;
+ return priv;
}
diff -puN net/ieee80211/ieee80211_crypt_wep.c~80211-010 net/ieee80211/ieee80211_crypt_wep.c
--- a/net/ieee80211/ieee80211_crypt_wep.c~80211-010 2005-02-13 23:39:29.143920843 +0100
+++ b/net/ieee80211/ieee80211_crypt_wep.c 2005-02-13 23:39:29.148920025 +0100
@@ -45,30 +45,24 @@ static void * prism2_wep_init(int keyidx
struct prism2_wep_data *priv;
priv = kmalloc(sizeof(*priv), GFP_ATOMIC);
- if (priv == NULL)
- goto fail;
+ if (!priv)
+ goto out;
memset(priv, 0, sizeof(*priv));
priv->key_idx = keyidx;
priv->tfm = crypto_alloc_tfm("arc4", 0);
- if (priv->tfm == NULL) {
+ if (!priv->tfm) {
printk(KERN_DEBUG "ieee80211_crypt_wep: could not allocate "
"crypto API arc4\n");
- goto fail;
+ kfree(priv);
+ priv = NULL;
+ goto out;
}
/* start WEP IV from a random value */
get_random_bytes(&priv->iv, 4);
-
+out:
return priv;
-
-fail:
- if (priv) {
- if (priv->tfm)
- crypto_free_tfm(priv->tfm);
- kfree(priv);
- }
- return NULL;
}
_
^ permalink raw reply [flat|nested] 8+ messages in thread* [patch 2.6.11-rc4-netdev1 3/4] ieee80211: C99 initialization for eap_types
2005-02-13 23:25 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Francois Romieu
@ 2005-02-13 23:27 ` Francois Romieu
2005-02-13 23:28 ` [patch 2.6.11-rc4-netdev1 4/4] ieee80211: offset_in_page() removal Francois Romieu
2005-02-24 6:16 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Jeff Garzik
1 sibling, 1 reply; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:27 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev, Stephen Hemminger, Randy Dunlap, James Ketrenos
C99 initialization for eap_types.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN include/net/ieee80211.h~80211-020 include/net/ieee80211.h
--- a/include/net/ieee80211.h~80211-020 2005-02-14 00:10:49.003115207 +0100
+++ b/include/net/ieee80211.h 2005-02-14 00:10:49.007114556 +0100
@@ -64,16 +64,25 @@ struct ieee80211_hdr_3addr {
u16 seq_ctl;
} __attribute__ ((packed));
+enum eap_type {
+ EAP_PACKET = 0,
+ EAPOL_START,
+ EAPOL_LOGOFF,
+ EAPOL_KEY,
+ EAPOL_ENCAP_ASF_ALERT
+};
+
static const char *eap_types[] = {
- "EAP-Packet", "EAPOL-Start", "EAPOL-Logoff", "EAPOL-Key",
- "EAPOL-Encap-ASF-Alert", "Unknown"
+ [EAP_PACKET] = "EAP-Packet",
+ [EAPOL_START] = "EAPOL-Start",
+ [EAPOL_LOGOFF] = "EAPOL-Logoff",
+ [EAPOL_KEY] = "EAPOL-Key",
+ [EAPOL_ENCAP_ASF_ALERT] = "EAPOL-Encap-ASF-Alert"
};
static inline const char *eap_get_type(int type)
{
- if (type > ARRAY_SIZE(eap_types))
- type = ARRAY_SIZE(eap_types) - 1;
- return eap_types[type];
+ return (type >= ARRAY_SIZE(eap_types)) ? "Unknown" : eap_types[type];
}
struct eapol {
_
^ permalink raw reply [flat|nested] 8+ messages in thread* [patch 2.6.11-rc4-netdev1 4/4] ieee80211: offset_in_page() removal
2005-02-13 23:27 ` [patch 2.6.11-rc4-netdev1 3/4] ieee80211: C99 initialization for eap_types Francois Romieu
@ 2005-02-13 23:28 ` Francois Romieu
0 siblings, 0 replies; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:28 UTC (permalink / raw)
To: Jeff Garzik, netdev; +Cc: Stephen Hemminger, Randy Dunlap, James Ketrenos
offset_in_page() removal.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN include/net/ieee80211.h~80211-030 include/net/ieee80211.h
--- a/include/net/ieee80211.h~80211-030 2005-02-14 00:10:56.416908756 +0100
+++ b/include/net/ieee80211.h 2005-02-14 00:10:56.419908268 +0100
@@ -884,9 +884,4 @@ static inline const char *escape_essid(c
*d = '\0';
return escaped;
}
-
-#ifndef offset_in_page
-#define offset_in_page(p) ((unsigned long)(p) & ~PAGE_MASK)
-#endif
-
#endif /* IEEE80211_H */
_
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks
2005-02-13 23:25 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Francois Romieu
2005-02-13 23:27 ` [patch 2.6.11-rc4-netdev1 3/4] ieee80211: C99 initialization for eap_types Francois Romieu
@ 2005-02-24 6:16 ` Jeff Garzik
1 sibling, 0 replies; 8+ messages in thread
From: Jeff Garzik @ 2005-02-24 6:16 UTC (permalink / raw)
To: Francois Romieu; +Cc: netdev, Stephen Hemminger, Randy Dunlap, James Ketrenos
applied patches 1, 3, and 4.
I thought this patch (#2) needed splitting up, but otherwise OK.
Jeff
^ permalink raw reply [flat|nested] 8+ messages in thread
* [patch 2.6.11-rc4-netdev1 1/2] strip: clash with include/linux/netdevice.h
2005-02-13 20:38 netdev-2.6 queue updated Jeff Garzik
2005-02-13 23:24 ` [patch 2.6.11-rc4-netdev1 1/4] ieee80211: failure of ieee80211_crypto_init() Francois Romieu
@ 2005-02-13 23:30 ` Francois Romieu
2005-02-13 23:32 ` [patch 2.6.11-rc4-netdev1 2/2] strip: use of netdev_priv Francois Romieu
1 sibling, 1 reply; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:30 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev
Clash with include/linux/netdevice.h
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN drivers/net/wireless/strip.c~strip-000 drivers/net/wireless/strip.c
--- a/drivers/net/wireless/strip.c~strip-000 2005-02-14 00:11:04.238635826 +0100
+++ b/drivers/net/wireless/strip.c 2005-02-14 00:11:04.242635176 +0100
@@ -2398,10 +2398,11 @@ static int set_mac_address(struct strip
return 0;
}
-static int dev_set_mac_address(struct net_device *dev, void *addr)
+static int strip_set_mac_address(struct net_device *dev, void *addr)
{
struct strip *strip_info = (struct strip *) (dev->priv);
struct sockaddr *sa = addr;
+
printk(KERN_INFO "%s: strip_set_dev_mac_address called\n", dev->name);
set_mac_address(strip_info, (MetricomAddress *) sa->sa_data);
return 0;
@@ -2552,7 +2553,7 @@ static void strip_dev_setup(struct net_d
dev->hard_start_xmit = strip_xmit;
dev->hard_header = strip_header;
dev->rebuild_header = strip_rebuild_header;
- dev->set_mac_address = dev_set_mac_address;
+ dev->set_mac_address = strip_set_mac_address;
dev->get_stats = strip_get_stats;
dev->change_mtu = strip_change_mtu;
}
_
^ permalink raw reply [flat|nested] 8+ messages in thread* [patch 2.6.11-rc4-netdev1 2/2] strip: use of netdev_priv
2005-02-13 23:30 ` [patch 2.6.11-rc4-netdev1 1/2] strip: clash with include/linux/netdevice.h Francois Romieu
@ 2005-02-13 23:32 ` Francois Romieu
0 siblings, 0 replies; 8+ messages in thread
From: Francois Romieu @ 2005-02-13 23:32 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev
Use of netdev_priv.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
diff -puN drivers/net/wireless/strip.c~strip-010 drivers/net/wireless/strip.c
--- a/drivers/net/wireless/strip.c~strip-010 2005-02-14 00:11:08.527937733 +0100
+++ b/drivers/net/wireless/strip.c 2005-02-14 00:11:08.532936920 +0100
@@ -876,7 +876,7 @@ static int allocate_buffers(struct strip
*/
static int strip_change_mtu(struct net_device *dev, int new_mtu)
{
- struct strip *strip_info = dev->priv;
+ struct strip *strip_info = netdev_priv(dev);
int old_mtu = strip_info->mtu;
unsigned char *orbuff = strip_info->rx_buff;
unsigned char *osbuff = strip_info->sx_buff;
@@ -1563,7 +1563,7 @@ static void strip_send(struct strip *str
/* Encapsulate a datagram and kick it into a TTY queue. */
static int strip_xmit(struct sk_buff *skb, struct net_device *dev)
{
- struct strip *strip_info = (struct strip *) (dev->priv);
+ struct strip *strip_info = netdev_priv(dev);
if (!netif_running(dev)) {
printk(KERN_ERR "%s: xmit call when iface is down\n",
@@ -1639,7 +1639,7 @@ static int strip_header(struct sk_buff *
unsigned short type, void *daddr, void *saddr,
unsigned len)
{
- struct strip *strip_info = (struct strip *) (dev->priv);
+ struct strip *strip_info = netdev_priv(dev);
STRIP_Header *header = (STRIP_Header *) skb_push(skb, sizeof(STRIP_Header));
/*printk(KERN_INFO "%s: strip_header 0x%04X %s\n", dev->name, type,
@@ -1648,7 +1648,7 @@ static int strip_header(struct sk_buff *
header->src_addr = strip_info->true_dev_addr;
header->protocol = htons(type);
- /*HexDump("strip_header", (struct strip *)(dev->priv), skb->data, skb->data + skb->len); */
+ /*HexDump("strip_header", netdev_priv(dev), skb->data, skb->data + skb->len); */
if (!daddr)
return (-dev->hard_header_len);
@@ -2400,7 +2400,7 @@ static int set_mac_address(struct strip
static int strip_set_mac_address(struct net_device *dev, void *addr)
{
- struct strip *strip_info = (struct strip *) (dev->priv);
+ struct strip *strip_info = netdev_priv(dev);
struct sockaddr *sa = addr;
printk(KERN_INFO "%s: strip_set_dev_mac_address called\n", dev->name);
@@ -2410,8 +2410,8 @@ static int strip_set_mac_address(struct
static struct net_device_stats *strip_get_stats(struct net_device *dev)
{
+ struct strip *strip_info = netdev_priv(dev);
static struct net_device_stats stats;
- struct strip *strip_info = (struct strip *) (dev->priv);
memset(&stats, 0, sizeof(struct net_device_stats));
@@ -2455,7 +2455,7 @@ static struct net_device_stats *strip_ge
static int strip_open_low(struct net_device *dev)
{
- struct strip *strip_info = (struct strip *) (dev->priv);
+ struct strip *strip_info = netdev_priv(dev);
if (strip_info->tty == NULL)
return (-ENODEV);
@@ -2488,7 +2488,7 @@ static int strip_open_low(struct net_dev
static int strip_close_low(struct net_device *dev)
{
- struct strip *strip_info = (struct strip *) (dev->priv);
+ struct strip *strip_info = netdev_priv(dev);
if (strip_info->tty == NULL)
return -EBUSY;
_
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2005-02-24 6:16 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-02-13 20:38 netdev-2.6 queue updated Jeff Garzik
2005-02-13 23:24 ` [patch 2.6.11-rc4-netdev1 1/4] ieee80211: failure of ieee80211_crypto_init() Francois Romieu
2005-02-13 23:25 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Francois Romieu
2005-02-13 23:27 ` [patch 2.6.11-rc4-netdev1 3/4] ieee80211: C99 initialization for eap_types Francois Romieu
2005-02-13 23:28 ` [patch 2.6.11-rc4-netdev1 4/4] ieee80211: offset_in_page() removal Francois Romieu
2005-02-24 6:16 ` [patch 2.6.11-rc4-netdev1 2/4] ieee80211: removal of unneeded checks Jeff Garzik
2005-02-13 23:30 ` [patch 2.6.11-rc4-netdev1 1/2] strip: clash with include/linux/netdevice.h Francois Romieu
2005-02-13 23:32 ` [patch 2.6.11-rc4-netdev1 2/2] strip: use of netdev_priv Francois Romieu
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).