There is an issue with running a 32 bit wpa_supplicant with a 64 bit kernel. I am not 100% sure if this is a supported configuration (though install linux-image-2.6-amd64 is simply possible on such a system) or that it could ever be generated by a default installer, but it generates the issue described in bug: <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=501859> This makes it impossible to setup wpa networking with wpa_supplicant on a setup with a 64 bit kernel and a 32 bit userland. The issue is caused by the kernel returning data for the 64 bit version of the wext using tools, regardless of what is actually needed. In wireless-tools this is worked around by some ugly kludges that fix the returned structures, however no such workaround is implemented in wpa_supplicant. In the meanwhile it has appaerently been fixed by a new kernel release (2.6.27.3 is supposed to fix it) so the ioctls work correctly. However for Lenny this is not a suitable fix for obvious reasons. wpa_supplicant could be modified to use similair fixes as wireless-tools uses, but for me the code is too hairy to actually implement this in reasonable time. I think this should atleast be documented in the release notes that wpa_supplicant from an i386 only works with a 32 bit kernel and not the amd64 one. Preferable would ofcourse be a fixed wpa_supplicant package, so it will work, I will continue working on it, but don't expect any results soon. Ilja Kamps, who is not happy to have discovered this only just now....
Attachment:
signature.asc
Description: Digital signature