WEP has a few problems with it, and getting a linux client connected can prove difficult. First off, a 128 bit WEP password can ONLY be 13 chars long to work properly. A 64 bit can only be 5. The problem is if the password isn't the "correct" length, the router will basically fill in the blanks, or take letters away, to get it to the correct number of digits. Some routers chop off the end of the password, others the beginning, in short, it is a royal mess. My sister is using 128 bit WEP, and with a linksys router, the ascii -> hexi-decimal conversion is "wrong". By that I mean if you dump her password into an online converter, it will say the hexi passphrase should be cc6e4773f09e83752c8d123456, but her router says it should be another string, meaning the router simply isn't converting the password correctly.
The key to gaining authentication against WEP is to see what hexi-string the router has on itself. I copied the string off my sister's, and now I use that string as my authentication, with the help of the iwconfig command.
Also, for the record, WEP is hyper insecure. It is virtually no protection at all. Anybody with 2 seconds of linux skills can crack a WEP key in literally 5 seconds. All the headers of the allegedly encrypted traffic contains the key in them. By collecting enough packets going to or from the router, you can crack the key. WPA is the only authentication that is actually secure. You can crack a WEP key by capturing any packets, getting a WPA key means you have to capture a whole slew of packets as a user is authenticating against the router, which usually isn't possible.