I'm seeing really weird behaviour with the new baselayout & WEP, when trying to run my Allnet All0271 card (Prism54 drivers) in master mode: durex ~ # /etc/init.d/net.eth1 start * Re-caching dependency info (mtimes differ)... * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP disabled) * Bringing up eth1 * 192.168.0.1 [ ok ] durex ~ # /etc/init.d/net.eth1 restart * Stopping eth1 * Bringing down eth1 * Shutting down eth1 ... [ ok ] * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP enabled - restricted) * Bringing up eth1 * 192.168.0.1 [ ok ] durex ~ # /etc/init.d/net.eth1 stop * Stopping eth1 * Bringing down eth1 * Shutting down eth1 ... [ ok ] durex ~ # /etc/init.d/net.eth1 start * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP disabled) * Bringing up eth1 * 192.168.0.1 [ ok ] durex ~ # /etc/init.d/net.eth1 restart * Stopping eth1 * Bringing down eth1 * Shutting down eth1 ... [ ok ] * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP enabled - restricted) * Bringing up eth1 * 192.168.0.1 [ ok ] durex ~ # /etc/init.d/net.eth1 stop * Stopping eth1 * Bringing down eth1 * Shutting down eth1 ... [ ok ] durex ~ # /etc/init.d/net.eth1 start * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP disabled) * Bringing up eth1 * 192.168.0.1 [ ok ] durex ~ # /etc/init.d/net.eth1 restart * Stopping eth1 * Bringing down eth1 * Shutting down eth1 ... [ ok ] * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP enabled - restricted) * Bringing up eth1 * 192.168.0.1 durex ~ # This is absolutely reproducible - since the principal use of this box is to be a wireless access point & I'm early in the build I even went so far as to `rm -rf` my whole system & reinstall from 2004.3 stage 3 - I still got the same thing. If I watch using KisMAC on another machine it confirms that the network is seen to come up with & without WEP as per the output above. I have also tried this with two different Allnert ALL0271 cards. Now, what's really weird, is that I started to file this bug three days ago before & I decided to reboot the machine & document whether WEP was enabled or not when I added eth1 to the default runlevel. Thereafter I get: # /etc/init.d/net.eth1 start * Starting eth1 * Configuring wireless network for eth1 * eth1 connected as "NedNet" * in master mode (WEP disabled) * Bringing up eth1 * 192.168.0.1 [ !! ] Thereafter, even following reboots of the system, removing net.eth1 from the default runlevel & rebooting again, I STILL get the same result of being unable to start the interface. And this is the same before AND after the rebuild. Initially I thought this was related to #74786, but `dmesg` shows: ... eth1: islpci_open() eth1: resetting device... eth1: uploading firmware... eth1: firmware uploaded done, now triggering reset... eth1: prism54_set_txpower() auto power will be implemented later. eth1: prism54_set_txpower() auto power will be implemented later. eth1: islpci_close () Which I think indicates that the firmware has been loaded successfully. I have tried with more than one kernel - gentoo-dev-sources-2.6.10 & gentoo-dev-sources-2.6.9, I think, and I have tried using the Prism54 ebuild & using the prism54 module supplied with the kernel, compiled as a module. I have also tried baselayout-1.11.7-r2 (currently baselayout-1.11.8). I have tried adding NET_DEBUG=1 to my /etc/conf.d/wireless, but the output is all Perl to me. Configuration is: durex ~ # cat /etc/conf.d/net.eth0 /etc/conf.d/wireless # For a static configuration, use something like this ifconfig_eth0=( "192.168.1.44/24" ) routes_eth0=( "default via 192.168.1.1" ) modules_eth1=( "iwconfig" ) ifconfig_eth1=( "192.168.0.1" ) mode_eth1="Master" essid_eth1="NedNet" channel_eth1="1" key_NedNet="a8880b1056a1368d5a31de14fb" durex ~ # Reproducible: Always Steps to Reproduce: 1. Install Gentoo from Stage3 using 2004.3 CD. 2. Package unmask =sys-apps/baselayout-1.11.8 =sys-libs/readline-5.0-r1 >=sys-apps/sysvinit-2.84 >=app-shells/bash-3.0-r7 3. emerge world && USE="~x86" emerge baselayout-1.11.8 && emerge hotplug wireless-tools 4. Configure the wireless interface & try to bring it up, as above Actual Results: See above Expected Results: Brought the wireless interface up in WEP mode. durex ~ # emerge info Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.9-gentoo- r13 i686) ============================================================== === System uname: 2.6.9-gentoo-r13 i686 AMD Duron(tm) processor Gentoo Base System version 1.6.8 distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 Headers: sys-kernel/linux-headers-2.4.21-r1 Libtools: sys-devel/libtool-1.5.2-r7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/ qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox sfperms" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/ gentoo" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 acl apm arts avi berkdb bitmap-fonts crypt cups encode extensions foomaticdb fortran gdbm gif gpm gtk2 jpeg justify kde libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl oss pam pdflib perl pica png python qt quicktime readline sdl spell ssl svga tcpd tiff truetype xml2 xmms xv zlib"
Created attachment 47995 [details] Results of manually application of `ifconfig` & `iwconfig` I've taken a bit of a closer look at things & it seems that manually applying `ifconfig` will bring the interface up - so I don't know what the init scripts are doing wrong. Since just `ifconfig eth1 up` works, it seems like they're allocating the interface its IP address, but not bringing it up; Also note how they seem to be doing this stuff to eth1, even though eth1 isn't part of the default runlevel. :/ I've appended a bunch of documentary output as an attachment, otherwise this bug report will get very hard to read.
Could you test with the patch posted for bug #74802 please - it should address the wep key problem
Created attachment 48161 [details] Further diagnostic output, follwing application of patch Ok, I've applied the patch as requested & it seems to make some improvement. WEP is now applied perfectly if the interface is not started at bootup, but in order to achieve this you'll see that I had to comment out all the config for eth1, as the init scripts still seem to be sourcing it, even though that interface isn't specified in the default runlevel. Roy: let me know if you'd like to shell into this box - email me at stroller at < stellar dot eclipse dot co dot uk > for the details. I'm quite keen to get this fixed - and then move on to bridging the interfaces & add in PPPoA ADSL - and I reckon you could diagnose stuff a lot more quickly than I can.
Created attachment 48181 [details, diff] removes addresses when configuring device Joe, I think I have the problem nailed down thanks to Xamindar http://forums.gentoo.org/viewtopic.php?t=276931 However, this is *not* a permament fix as it will break people who configure their network settings via kernel start parameters
I have a fix in CVS now - will be in baselayout-1.11.9
I haven't had a chance yet to try the patch you attached above - I'll be able to do so c 10pm or midnight GMT. Is the fix in CVS based on this patch, or on the more permanent solution you mention as being required for those using kernel start parameters? Do you have any idea when baselayout-1.11.9 will be ready for testing?
It's a permament solution - but the end fix is still the same for this problem. Basically we need to remove all addresses from the interface before configuring it - however that may not be desired as some people need to configure their nic via the kernel command line. So to satisfy everyone a "noop" config parameter has been introduced. noop means no operation if the interface is up and has an address - otherwise continue as normal.
Were you able to test this Joe?
Created attachment 48297 [details] For some reason the patch wouldn't apply. Oooops.... sorry about the delay - I had a long day yesterday. The patch wouldn't apply cleanly, for some reason. Since it was very apparent where it should go in /etc/init.d/net.lo I copied & pasted it in manually & it seems fix the WEP problem - WEP always seems to be applied when stopping & starting the interface. There is a remaining problem, however, in that now eth1 is being started even when it's not in the default runlevel (I'm not using any other runlevels). I don't configure my interfaces from the kernel command-line, so I'm not clear on what's going on there - when I used to have a Linux laptop I had separate "work" and "home" runlevels which were called by grub at boottime. However it seems to me that - in my case, anyway - it would'nt be necessary to we remove all addresses from the interface before configuring it if the interface didn't already have an address! In my case the interface is sourcing the config for eth1, even when that interface isn't supposed to be starting!! Smiley for the day - confused: :-/ Broadcast message from root (pts/0) (Wed Jan 12 14:47:44 2005): The system is going down for reboot NOW! logout Connection to durex closed. 919 ~ $ ssh durex Last login: Wed Jan 12 14:46:55 2005 from silva.stroller.uk.eu.org stroller@durex ~ $ ifconfig eth0 Link encap:Ethernet HWaddr 00:04:75:DE:6F:78 inet addr:192.168.1.44 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:44 errors:0 dropped:0 overruns:0 frame:0 TX packets:40 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:6083 (5.9 Kb) TX bytes:5411 (5.2 Kb) Interrupt:11 Base address:0xec00 eth1 Link encap:Ethernet HWaddr 00:01:36:07:00:D7 inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) Interrupt:5 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) stroller@durex ~ $ ls /etc/runlevels/default/ local net.eth0 netmount sshd stroller@durex ~ $
Fixed by baselayout-1.11.9