SOLVED - [kind of] 3.0 Shared Key Wireless Error

Please post any bugs you have found
Message
Author
tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#16 Post by tempestuous »

peterw,
I suggest you try the WPA commands manually, so we can locate the problem.
First ope the configuration file /etc/wpa_supplicant.conf in geany (or wpa_supplicant2.conf for WPA2) and modify it to include your SSID and Personal Security Key (PSK).
The PSK can be either passphrase or hex key.
Now run thes commands -

Code: Select all

ifconfig ath0 up
rm /var/run/wpa_supplicant/*
wpa_supplicant -i ath0 -D wext -c /etc/wpa_supplicant.conf -dd
This process can take up to 30 seconds. If it runs without error, you can now open a second command prompt and run this

Code: Select all

rm /etc/dhcpc/*.pid
dhcpcd -t 30 -h puppypc -d ath0

peterw
Posts: 430
Joined: Wed 19 Jul 2006, 12:12
Location: UK

WPA Atheros

#17 Post by peterw »

Thanks for the help tempestuos. It is much appreciated by strugglers such as myself.

I have tried your suggestions with the following results:

/etc/wpa_supplicant.conf already had the SSID and hex key from previous attempts to get connected using the wizard. After a few attempts following the instructions with no joy I added the SSID and passphrase to the wpa_supplicant2.conf in the hope that it might help.

To ensure that the situation was not being confused by old commands I frequently rebooted to refresh the starting point.

Most of the time after typing "ifconfig ath0 up" and enter the prompt reappeared, although on some occasions I sometimes got the response "ifconfig: SIOCGIFFLAGS :no such device".

On the occasions when I got the prompt the "rm /var/run/wpa_supplicant/*" command resulted in this response "rm: cannot remove 'var/run/wpa_supplicant/*': no such file or directory.

If I ignored this and pushed on with the "wpa_ ......conf -dd" command, I got the response that it was trying "WPA enabled AP" and "non-WPA AP" every 5 seconds without success.

I had to shut down the terminal to regain control of the process.

Blinky tells me that wifi0 is transmitting and receiving something. Ie For example 47.08 kB sent and 238 bytes received.

I know my Atheros card works with XP.

Just a thought, the processor is a AMD Turion 64 bit Mobile one and I am assuming it is compatable with Puppy. (Some distros have 64 bit versions)

Any thoughts would be appreciated.

Thanks

User avatar
Pizzasgood
Posts: 6183
Joined: Wed 04 May 2005, 20:28
Location: Knoxville, TN, USA

#18 Post by Pizzasgood »

Just a thought, the processor is a AMD Turion 64 bit Mobile one and I am assuming it is compatable with Puppy. (Some distros have 64 bit versions)
It shouldn't be a problem. AFAIK, most if not all 64 bit processors include support for 32 bit operating systems. The thing to remember is that if you run a 32 bit operating system on a 64 bit processor, you need to use the 32 bit drivers. 64 bit drivers are only for a 64 bit operating system.

My own processor is 64 bit, but I haven't had any issues running Puppy on it, with drivers for all sorts of gadgets.


I don't know anything worth stating about WPA, but one thing you said does send up a red flag in my mind:
Blinky tells me that wifi0 is transmitting
Blinky is saying you're using wifi0. But the commands you're using are for ath0. So it makes me wonder if maybe some other script has been automatically configuring the card as wifi0, and thus messing up your attempts to use it as ath0.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

Re: WPA Atheros

#19 Post by tempestuous »

Well the good news is that the Network Wizard is not at fault.
peterw wrote:sometimes got the response "ifconfig: SIOCGIFFLAGS :no such device".
That means that the ath0 interface does not exist, probably because Puppy did not automatically load the ath_pci module. So let's deal with that problem by making the first command this -

Code: Select all

modprobe ath_pci
Ignore the "wifi0" interface. This is just a quirk of the ath_pci driver, it's a "virtual" or "placeholder" interface.
peterw wrote:rm: cannot remove 'var/run/wpa_supplicant/*': no such file or directory.
No problem. We just need to make sure that file doesn't exist before launching wpa_supplicant.

You need to find out for certain whether your wifi access point is using WPA or WPA2. If WPA2, you must adjust the contents of /etc/wpa_supplicant2.conf and then specify this configuration file in the wpa_supplicant command, as such -

Code: Select all

wpa_supplicant -i ath0 -D wext -c /etc/wpa_supplicant2.conf -dd

friedsonjm
Posts: 208
Joined: Sat 10 Mar 2007, 14:49

#20 Post by friedsonjm »

Wow... Puppy/WPA for Linux gurus only? WEP security is so busted that WPA is a must, and this is a distro that, IMHO, should work for most people, not only the skilled and enlightened few.

Best of luck to those who are working to fix this!

jf

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#21 Post by tempestuous »

I now suspect there may be a problem with the ath_pci driver, or maybe a problem with wpa_supplicant. It will take me a day or two to look into it.

friedsonjm
Posts: 208
Joined: Sat 10 Mar 2007, 14:49

#22 Post by friedsonjm »

tempestuous wrote:I now suspect there may be a problem with the ath_pci driver, or maybe a problem with wpa_supplicant. It will take me a day or two to look into it.
For what it is worth, the driver that PCLOS uses works OK, BUT, strangely enough, it is NOT as good as the Atheros driver that one gets under Windows.
A marginal connection - or none - with the Linux driver is much better when using Windows natively. I used a dual boot machine to test and verify this.

jf

peterw
Posts: 430
Joined: Wed 19 Jul 2006, 12:12
Location: UK

#23 Post by peterw »

Thanks for the help. Comments from all members are good. I will await the conclusions of tempestuous's investigation. I have been trying to get the Atheros catrd to work in Puppy since last July and if we get success I will be so thankful. At last someone with a much greater knowledge than I is looking at the problem.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#24 Post by tempestuous »

Before I go to the trouble of compiling wpa_supplicant and ath_pci, I'm reminded of the need for encryption modules by forum member symx -
http://www.murga-linux.com/puppy/viewto ... 938#147938
In particular, he mentions the little-known "ecb" module.

So I think it's worth loading ALL wifi-related encryption modules -

Code: Select all

modprobe arc4
modprobe ecb
modprobe crc32c
modprobe aes
modprobe michael_mic
I'm not sure exactly which of these modules are needed for WPA encryption, but it shouldn't hurt to load all of them.

Now load the ath_pci module and try the wpa_supplicant command again.

User avatar
Barburo
Posts: 298
Joined: Thu 14 Jun 2007, 18:49

WiFi still not connecting

#25 Post by Barburo »

I just read pizzasgood post about 64 bit machines.
Still no joy getting my HP TX1000 connected but it uses AMD Turion 64 Dual core processor. I have Vista on this machine (it comes pre-installed) and Vista connects every boot with no problems.
In Puppy (3.01) I've tried the following (no wizard):
- Manually entering the commands suggested by tempetuous (can be a bit error prone).
- Using rarsa's suggestion and unloading and loading bcm43xx before starting - doesn't change anything.
- Executing a shell script of the commands (better control - same result "CTRL -EVENT-DISCONNECT - Disconnect Event - Remove Keys" repeated endlessly until I close the terminal).
- I've entered my passkey in the wpa_supplicant.conf and ...2.conf files as ascii (in quotes) and as Hex (output from the wpa_passphrase command cut and pasted).
- I've tried wpa_supplicant with both WPA and WPA2 (although I'm sure my router uses WPA2).

I've also tried the built-in puppy wizard numerous times and I'm pretty sure something is seriously amiss.
Hints: I get varying number of results from scanning for connections - sometimes just my own ssid, sometimes neighbours', sometimes mine is missing. (remember Vista always finds and connects so I don't think it's the router)
When I enter a valid 8 character ascii key for WPA2 I get an error message that the key must be 8 characters or 64 Hex.
If I cut and paste the hex key into the wizard it gets past the error message and tries to connect, but times out every time. It then checks to see if there's an "alive connection" and reports none.

Hope this may assist in diagnosing and solving the problem.

friedsonjm
Posts: 208
Joined: Sat 10 Mar 2007, 14:49

#26 Post by friedsonjm »

You are getting the same results I am - and I'm using an old Crusoe processor laptop that emulates an Intel piece! Does not seem to matter how many bits... we still are not getting a bite.
jf
p.s. Yes, that was a joke, and yes, I'm still planning to keep my day job!
Nonetheless... bite [Puppy] byte [Computer] get it?

peterw
Posts: 430
Joined: Wed 19 Jul 2006, 12:12
Location: UK

#27 Post by peterw »

Hello tempestuous

Have checked my modem and believe it to be WPA since no mention of WPA2 which is a newer even more secure system.

Have modeprobed the list, arc4 to michael_mic ok

Then modprobe ath_pci

Then I ifconfig -a, and ath0 showed no RX or TX packets,
eth0 showed no RX or TX packets (I did have the ethernet cable unplugged), lo showed no RX or TX packets and wifi0-00 showed no RX and TX 305 packets.

pingged my router - no response

Then:
ifconfig ath0 up
rm /var/run/wpa_supplicant/*
wpa_ supplicant -i ath0 -D wext -c /etc/wpa_supplicant.cnf -dd
It responded:
Initializing interface 'ath0' conf '/etc/wpa_supplicant.cnf' driver 'wext' ctrl_interface 'N/A' bridge 'N/A'
configuration file ........ /etc/wpa_supplicant.cnf'.
Failed to add interface ath0
cancelling scan request
cancelling authentician timeout

Went back into /etc/wpa/supplicant file and changed hex password to password phrase.

Tried last section again and same result

Tried the new Ubuntu 7.10 i386 version and it manages to link happily with WPA Personal. Is there any clues here?

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#28 Post by tempestuous »

peterw,
I see a typographical error several times in your post; "wpa_supplicant.cnf"
It should be "wpa_supplicant.conf"
peterw wrote:Tried the new Ubuntu 7.10 i386 version and it manages to link happily with WPA Personal. Is there any clues here?
Yes, run "lsmod" to see which encryption modules are loaded.

PaulBx1
Posts: 2312
Joined: Sat 17 Jun 2006, 03:11
Location: Wyoming, USA

#29 Post by PaulBx1 »

And print out the wpa_supplicant.conf file as well, just to see what Ubuntu uses. And any associated scripts...

Probably won't turn up anything, but worth a look.

vientito
Posts: 83
Joined: Sun 17 Sep 2006, 23:22

#30 Post by vientito »

nice to know i am not alone in this struggle to get my friend's laptop on her wifi wpa-psk link. it seems that the connection wizard is still not mature yet for that purpose.

i guess i have to wait a month or two before things could get to be a bit more useable.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#31 Post by tempestuous »

vientito wrote:it seems that the connection wizard is still not mature yet for that purpose.
No, that assumption is likely to be wrong.
Since the wpa_supplicant command is failing when run separately, then the Wizard is not at fault.

There are a few instances on the forum of modules failing to load the other modules they depend on, so this is suspect.
I also see that the "insmod" command is faulty, this could have a bearing.
And there are instances of wifi modules failing to load properly early in the boot sequence.

All of these problems require investigation.

peterw
Posts: 430
Joined: Wed 19 Jul 2006, 12:12
Location: UK

WPA and Atheros cards

#32 Post by peterw »

Hi,

Sorry about the delay in responding, I am away from home for a few days.
Thanks for the suggestions and pointing out my errors. I am trying to type the correct code. So far I have tried all the ideas without success.

To further the process, I have booted a PCLinux CD which acquires the network connection during the boot process. I have copied the lsmod for it and the wpa_supplicant file (although most it is #ed out and merely instruction). It is shorter than the one in Puppy.

I have also copied Puppy's lsmod before and after modprobeing the encryption modules.

I have also copied Puppy's response to the commands you asked me to try. I hope I have typed them correctly.

Thanks

C Linux Live CD wirelessly connected to NETGEAR DG834G WPA enabled
[root@localhost root]# lsmod
Module Size Used by
wlan_tkip 12224 2
wlan_wep 6784 0
wlan_scan_sta 13792 1
ath_rate_sample 12992 1
ath_pci 96480 0
wlan 204100 6 wlan_tkip,wlan_wep,wlan_scan_sta,ath_rate_sample,ath_pci
ath_hal 191728 3 ath_rate_sample,ath_pci
af_packet 22120 4
snd_seq_dummy 3908 0
snd_seq_oss 32512 0
snd_seq_midi_event 7616 1 snd_seq_oss
snd_seq 52272 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device 8268 3 snd_seq_dummy,snd_seq_oss,snd_seq
ipv6 257888 12
snd_pcm_oss 43072 0
snd_mixer_oss 16608 1 snd_pcm_oss
snd_hda_intel 19320 1
snd_hda_codec 163072 1 snd_hda_intel
snd_pcm 76868 3 snd_pcm_oss,snd_hda_intel,snd_hda_codec
snd_timer 22884 2 snd_seq,snd_pcm
snd_page_alloc 10152 2 snd_hda_intel,snd_pcm
snd 52708 11 snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer
soundcore 9824 1 snd
binfmt_misc 11912 1
dm_mirror 21616 0
dm_mod 56440 1 dm_mirror
nvram 9000 0
martian_dev 19156 0
mmc_block 8136 0
sdhci 18476 0
mmc_core 24448 2 mmc_block,sdhci
8250_pci 21120 0
ohci1394 35152 0
ieee1394 297848 1 ohci1394
bttv 172308 0
video_buf 25220 1 bttv
ir_common 28196 1 bttv
compat_ioctl32 1472 1 bttv
i2c_algo_bit 9288 1 bttv
btcx_risc 5096 1 bttv
tveeprom 15056 1 bttv
i2c_core 21376 3 bttv,i2c_algo_bit,tveeprom
videodev 24960 1 bttv
v4l1_compat 14148 1 videodev
v4l2_common 23328 2 bttv,videodev
capability 5000 0
commoncap 7360 1 capability
usbmouse 5696 0
joydev 9920 0
cpufreq_ondemand 6956 0
cpufreq_conservative 7592 0
cpufreq_powersave 1920 0
powernow_k8 14880 0
freq_table 4960 1 powernow_k8
processor 28776 1 powernow_k8
evdev 9888 2
amd64_agp 12644 0
agpgart 32424 1 amd64_agp
usbhid 51712 0
pcmcia 37580 0
firmware_class 10112 2 bttv,pcmcia
yenta_socket 26700 1
rsrc_nonstatic 13792 1 yenta_socket
pcmcia_core 40244 3 pcmcia,yenta_socket,rsrc_nonstatic
aufs 105092 1
usb_storage 80704 0
ehci_hcd 32488 0
ohci_hcd 20516 0
uhci_hcd 23784 0
usbcore 127364 7 usbmouse,usbhid,usb_storage,ehci_hcd,ohci_hcd,uhci_hcd
3w_xxxx 27168 0
mptscsih 23968 0
sx8 18796 0
tmscsim 22784 0
sata_vsc 9156 0
sata_via 10532 0
sata_uli 8100 0
sata_sx4 14532 0
sata_svw 8452 0
sata_sis 8644 0
sata_sil 11912 1
sata_qstor 10180 0
sata_promise 12484 0
sata_nv 11364 0
dmx3191d 12992 0
BusLogic 71380 0
aic7xxx 172084 0
ahci 16900 0
squashfs 48452 1
mptbase 51488 1 mptscsih
scsi_transport_spi 24448 2 dmx3191d,aic7xxx
sd_mod 21216 2
sg 34840 0
ata_piix 14472 0
libata 100820 12 sata_vsc,sata_via,sata_uli,sata_sx4,sata_svw,sata_sis,sata_sil,sata_qstor,sata_promise,sata_nv,ahci,ata_piix
sr_mod 17572 0
scsi_mod 134600 13 usb_storage,3w_xxxx,mptscsih,tmscsim,dmx3191d,BusLogic,aic7xxx,ahci,scsi_transport_spi,sd_mod,sg,libata,sr_mod
loop 16328 2
ide_cd 39712 1
cdrom 36928 2 sr_mod,ide_cd
isofs 35484 1
nls_utf8 2208 0
ntfs 269948 0
vfat 13280 0
msdos 9792 0
fat 53148 2 vfat,msdos
reiserfs 256676 0
ext3 135016 0
jbd 57576 1 ext3
nls_cp437 5952 0
nls_iso8859_2 4864 0
nls_iso8859_1 4288 1
[root@localhost root]#


wpa_supplicant.conf from PCLinux

##### Example wpa_supplicant configuration file ###############################
#
# This file describes configuration file format and lists all available option.
# Please also take a look at simpler configuration examples in 'examples'
# subdirectory.
#
# Empty lines and lines starting with # are ignored

# NOTE! This file may contain password information and should probably be made
# readable only by root user on multiuser systems.

# Note: All file paths in this configuration file should use full (absolute,
# not relative to working directory) path in order to allow working directory
# to be changed. This can happen if wpa_supplicant is run in the background.

# Whether to allow wpa_supplicant to update (overwrite) configuration
#
# This option can be used to allow wpa_supplicant to overwrite configuration
# file whenever configuration is changed (e.g., new network block is added with
# wpa_cli or wpa_gui, or a password is changed). This is required for
# wpa_cli/wpa_gui to be able to store the configuration changes permanently.
# Please note that overwriting configuration file will remove the comments from
# it.
#update_config=1

# global configuration (shared by all network blocks)
#
# Parameters for the control interface. If this is specified, wpa_supplicant
# will open a control interface that is available for external programs to
# manage wpa_supplicant. The meaning of this string depends on which control
# interface mechanism is used. For all cases, the existance of this parameter
# in configuration is used to determine whether the control interface is
# enabled.
#
# For UNIX domain sockets (default on Linux and BSD): This is a directory that
# will be created for UNIX domain sockets for listening to requests from
# external programs (CLI/GUI, etc.) for status information and configuration.
# The socket file will be named based on the interface name, so multiple
# wpa_supplicant processes can be run at the same time if more than one
# interface is used.
# /var/run/wpa_supplicant is the recommended directory for sockets and by
# default, wpa_cli will use it when trying to connect with wpa_supplicant.
#
# Access control for the control interface can be configured by setting the
# directory to allow only members of a group to use sockets. This way, it is
# possible to run wpa_supplicant as root (since it needs to change network
# configuration and open raw sockets) and still allow GUI/CLI components to be
# run as non-root users. However, since the control interface can be used to
# change the network configuration, this access needs to be protected in many
# cases. By default, wpa_supplicant is configured to use gid 0 (root). If you
# want to allow non-root users to use the control interface, add a new group
# and change this value to match with that group. Add users that should have
# control interface access to this group. If this variable is commented out or
# not included in the configuration file, group will not be changed from the
# value it got by default when the directory or socket was created.
#
# When configuring both the directory and group, use following format:
# DIR=/var/run/wpa_supplicant GROUP=wheel
# DIR=/var/run/wpa_supplicant GROUP=0
# (group can be either group name or gid)
#
# For UDP connections (default on Windows): The value will be ignored. This
# variable is just used to select that the control interface is to be created.
# The value can be set to, e.g., udp (ctrl_interface=udp)
#
# For Windows Named Pipe: This value can be used to set the security descriptor
# for controlling access to the control interface. Security descriptor can be
# set using Security Descriptor String Format (see http://msdn.microsoft.com/
# library/default.asp?url=/library/en-us/secauthz/security/
# security_descriptor_string_format.asp). The descriptor string needs to be
# prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty
# DACL (which will reject all connections). See README-Windows.txt for more
# information about SDDL string format.
#
ctrl_interface=/var/run/wpa_supplicant

# IEEE 802.1X/EAPOL version
# wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines
# EAPOL version 2. However, there are many APs that do not handle the new
# version number correctly (they seem to drop the frames completely). In order
# to make wpa_supplicant interoperate with these APs, the version number is set
# to 1 by default. This configuration value can be used to set it to the new
# version (2).
eapol_version=1

# AP scanning/selection
# By default, wpa_supplicant requests driver to perform AP scanning and then
# uses the scan results to select a suitable AP. Another alternative is to
# allow the driver to take care of AP scanning and selection and use
# wpa_supplicant just to process EAPOL frames based on IEEE 802.11 association
# information from the driver.
# 1: wpa_supplicant initiates scanning and AP selection
# 0: driver takes care of scanning, AP selection, and IEEE 802.11 association
# parameters (e.g., WPA IE generation); this mode can also be used with
# non-WPA drivers when using IEEE 802.1X mode; do not try to associate with
# APs (i.e., external program needs to control association). This mode must
# also be used when using wired Ethernet drivers.
# 2: like 0, but associate with APs using security policy and SSID (but not
# BSSID); this can be used, e.g., with ndiswrapper and NDIS drivers to
# enable operation with hidden SSIDs and optimized roaming; in this mode,
# the network blocks in the configuration file are tried one by one until
# the driver reports successful association; each network block should have
# explicit security policy (i.e., only one option in the lists) for
# key_mgmt, pairwise, group, proto variables
ap_scan=1

# EAP fast re-authentication
# By default, fast re-authentication is enabled for all EAP methods that
# support it. This variable can be used to disable fast re-authentication.
# Normally, there is no need to disable this.
fast_reauth=1

# OpenSSL Engine support
# These options can be used to load OpenSSL engines.
# The two engines that are supported currently are shown below:
# They are both from the opensc project (http://www.opensc.org/)
# By default no engines are loaded.
# make the opensc engine available
#opensc_engine_path=/usr/lib/opensc/engine_opensc.so
# make the pkcs11 engine available
#pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
# configure the path to the pkcs11 module required by the pkcs11 engine
#pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so

# Dynamic EAP methods
# If EAP methods were built dynamically as shared object files, they need to be
# loaded here before being used in the network blocks. By default, EAP methods
# are included statically in the build, so these lines are not needed
#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so
#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so

# Driver interface parameters
# This field can be used to configure arbitrary driver interace parameters. The
# format is specific to the selected driver interface. This field is not used
# in most cases.
#driver_param="field=value"

# Maximum lifetime for PMKSA in seconds; default 43200
#dot11RSNAConfigPMKLifetime=43200
# Threshold for reauthentication (percentage of PMK lifetime); default 70
#dot11RSNAConfigPMKReauthThreshold=70
# Timeout for security association negotiation in seconds; default 60
#dot11RSNAConfigSATimeout=60

# network block
#
# Each network (usually AP's sharing the same SSID) is configured as a separate
# block in this configuration file. The network blocks are in preference order
# (the first match is used).
#
# network block fields:
#
# disabled:
# 0 = this network can be used (default)
# 1 = this network block is disabled (can be enabled through ctrl_iface,
# e.g., with wpa_cli or wpa_gui)
#
# id_str: Network identifier string for external scripts. This value is passed
# to external action script through wpa_cli as WPA_ID_STR environment
# variable to make it easier to do network specific configuration.
#
# ssid: SSID (mandatory); either as an ASCII string with double quotation or
# as hex string; network name
#
# scan_ssid:
# 0 = do not scan this SSID with specific Probe Request frames (default)
# 1 = scan with SSID-specific Probe Request frames (this can be used to
# find APs that do not accept broadcast SSID or use multiple SSIDs;
# this will add latency to scanning, so enable this only when needed)
#
# bssid: BSSID (optional); if set, this network block is used only when
# associating with the AP using the configured BSSID
#
# priority: priority group (integer)
# By default, all networks will get same priority group (0). If some of the
# networks are more desirable, this field can be used to change the order in
# which wpa_supplicant goes through the networks when selecting a BSS. The
# priority groups will be iterated in decreasing priority (i.e., the larger the
# priority value, the sooner the network is matched against the scan results).
# Within each priority group, networks will be selected based on security
# policy, signal strength, etc.
# Please note that AP scanning with scan_ssid=1 and ap_scan=2 mode are not
# using this priority to select the order for scanning. Instead, they try the
# networks in the order that used in the configuration file.
#
# mode: IEEE 802.11 operation mode
# 0 = infrastructure (Managed) mode, i.e., associate with an AP (default)
# 1 = IBSS (ad-hoc, peer-to-peer)
# Note: IBSS can only be used with key_mgmt NONE (plaintext and static WEP)
# and key_mgmt=WPA-NONE (fixed group key TKIP/CCMP). In addition, ap_scan has
# to be set to 2 for IBSS. WPA-None requires following network block options:
# proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP (or CCMP, but not
# both), and psk must also be set.
#
# proto: list of accepted protocols
# WPA = WPA/IEEE 802.11i/D3.0
# RSN = WPA2/IEEE 802.11i (also WPA2 can be used as an alias for RSN)
# If not set, this defaults to: WPA RSN
#
# key_mgmt: list of accepted authenticated key management protocols
# WPA-PSK = WPA pre-shared key (this requires 'psk' field)
# WPA-EAP = WPA using EAP authentication (this can use an external
# program, e.g., Xsupplicant, for IEEE 802.1X EAP Authentication
# IEEE8021X = IEEE 802.1X using EAP authentication and (optionally) dynamically
# generated WEP keys
# NONE = WPA is not used; plaintext or static WEP could be used
# If not set, this defaults to: WPA-PSK WPA-EAP
#
# auth_alg: list of allowed IEEE 802.11 authentication algorithms
# OPEN = Open System authentication (required for WPA/WPA2)
# SHARED = Shared Key authentication (requires static WEP keys)
# LEAP = LEAP/Network EAP (only used with LEAP)
# If not set, automatic selection is used (Open System with LEAP enabled if
# LEAP is allowed as one of the EAP methods).
#
# pairwise: list of accepted pairwise (unicast) ciphers for WPA
# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
# NONE = Use only Group Keys (deprecated, should not be included if APs support
# pairwise keys)
# If not set, this defaults to: CCMP TKIP
#
# group: list of accepted group (broadcast/multicast) ciphers for WPA
# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
# WEP104 = WEP (Wired Equivalent Privacy) with 104-bit key
# WEP40 = WEP (Wired Equivalent Privacy) with 40-bit key [IEEE 802.11]
# If not set, this defaults to: CCMP TKIP WEP104 WEP40
#
# psk: WPA preshared key; 256-bit pre-shared key
# The key used in WPA-PSK mode can be entered either as 64 hex-digits, i.e.,
# 32 bytes or as an ASCII passphrase (in which case, the real PSK will be
# generated using the passphrase and SSID). ASCII passphrase must be between
# 8 and 63 characters (inclusive).
# This field is not needed, if WPA-EAP is used.
# Note: Separate tool, wpa_passphrase, can be used to generate 256-bit keys
# from ASCII passphrase. This process uses lot of CPU and wpa_supplicant
# startup and reconfiguration time can be optimized by generating the PSK only
# only when the passphrase or SSID has actually changed.
#
# eapol_flags: IEEE 802.1X/EAPOL options (bit field)
# Dynamic WEP key required for non-WPA mode
# bit0 (1): require dynamically generated unicast WEP key
# bit1 (2): require dynamically generated broadcast WEP key
# (3 = require both keys; default)
# Note: When using wired authentication, eapol_flags must be set to 0 for the
# authentication to be completed successfully.
#
# proactive_key_caching:
# Enable/disable opportunistic PMKSA caching for WPA2.
# 0 = disabled (default)
# 1 = enabled
#
# wep_key0..3: Static WEP key (ASCII in double quotation, e.g. "abcde" or
# hex without quotation, e.g., 0102030405)
# wep_tx_keyidx: Default WEP key index (TX) (0..3)
#
# stakey: Whether STAKey negotiation for direct links (IEEE 802.11e) is
# allowed. This is only used with RSN/WPA2.
# 0 = disabled (default)
# 1 = enabled
#stakey=1
#
# Following fields are only used with internal EAP implementation.
# eap: space-separated list of accepted EAP methods
# MD5 = EAP-MD5 (unsecure and does not generate keying material ->
# cannot be used with WPA; to be used as a Phase 2 method
# with EAP-PEAP or EAP-TTLS)
# MSCHAPV2 = EAP-MSCHAPv2 (cannot be used separately with WPA; to be used
# as a Phase 2 method with EAP-PEAP or EAP-TTLS)
# OTP = EAP-OTP (cannot be used separately with WPA; to be used
# as a Phase 2 method with EAP-PEAP or EAP-TTLS)
# GTC = EAP-GTC (cannot be used separately with WPA; to be used
# as a Phase 2 method with EAP-PEAP or EAP-TTLS)
# TLS = EAP-TLS (client and server certificate)
# PEAP = EAP-PEAP (with tunnelled EAP authentication)
# TTLS = EAP-TTLS (with tunnelled EAP or PAP/CHAP/MSCHAP/MSCHAPV2
# authentication)
# If not set, all compiled in methods are allowed.
#
# identity: Identity string for EAP
# anonymous_identity: Anonymous identity string for EAP (to be used as the
# unencrypted identity with EAP types that support different tunnelled
# identity, e.g., EAP-TTLS)
# password: Password string for EAP
# ca_cert: File path to CA certificate file (PEM/DER). This file can have one
# or more trusted CA certificates. If ca_cert and ca_path are not
# included, server certificate will not be verified. This is insecure and
# a trusted CA certificate should always be configured when using
# EAP-TLS/TTLS/PEAP. Full path should be used since working directory may
# change when wpa_supplicant is run in the background.
# On Windows, trusted CA certificates can be loaded from the system
# certificate store by setting this to cert_store://<name>, e.g.,
# ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT".
# Note that when running wpa_supplicant as an application, the user
# certificate store (My user account) is used, whereas computer store
# (Computer account) is used when running wpasvc as a service.
# ca_path: Directory path for CA certificate files (PEM). This path may
# contain multiple CA certificates in OpenSSL format. Common use for this
# is to point to system trusted CA list which is often installed into
# directory like /etc/ssl/certs. If configured, these certificates are
# added to the list of trusted CAs. ca_cert may also be included in that
# case, but it is not required.
# client_cert: File path to client certificate file (PEM/DER)
# Full path should be used since working directory may change when
# wpa_supplicant is run in the background.
# Alternatively, a named configuration blob can be used by setting this
# to blob://<blob name>.
# private_key: File path to client private key file (PEM/DER/PFX)
# When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be
# commented out. Both the private key and certificate will be read from
# the PKCS#12 file in this case. Full path should be used since working
# directory may change when wpa_supplicant is run in the background.
# Windows certificate store can be used by leaving client_cert out and
# configuring private_key in one of the following formats:
# cert://substring_to_match
# hash://certificate_thumbprint_in_hex
# for example: private_key="hash://63093aa9c47f56ae88334c7b65a4"
# Note that when running wpa_supplicant as an application, the user
# certificate store (My user account) is used, whereas computer store
# (Computer account) is used when running wpasvc as a service.
# Alternatively, a named configuration blob can be used by setting this
# to blob://<blob name>.
# private_key_passwd: Password for private key file (if left out, this will be
# asked through control interface)
# dh_file: File path to DH/DSA parameters file (in PEM format)
# This is an optional configuration file for setting parameters for an
# ephemeral DH key exchange. In most cases, the default RSA
# authentication does not use this configuration. However, it is possible
# setup RSA to use ephemeral DH key exchange. In addition, ciphers with
# DSA keys always use ephemeral DH keys. This can be used to achieve
# forward secrecy. If the file is in DSA parameters format, it will be
# automatically converted into DH params.
# subject_match: Substring to be matched against the subject of the
# authentication server certificate. If this string is set, the server
# sertificate is only accepted if it contains this string in the subject.
# The subject string is in following format:
# /C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com
# altsubject_match: Substring to be matched against the alternative subject
# name of the authentication server certificate. If this string is set,
# the server sertificate is only accepted if it contains this string in
# an alternative subject name extension.
# altSubjectName string is in following format: TYPE:VALUE
# Example: DNS:server.example.com
# Following types are supported: EMAIL, DNS, URI
# phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters
# (string with field-value pairs, e.g., "peapver=0" or
# "peapver=1 peaplabel=1")
# 'peapver' can be used to force which PEAP version (0 or 1) is used.
# 'peaplabel=1' can be used to force new label, "client PEAP encryption",
# to be used during key derivation when PEAPv1 or newer. Most existing
# PEAPv1 implementation seem to be using the old label, "client EAP
# encryption", and wpa_supplicant is now using that as the default value.
# Some servers, e.g., Radiator, may require peaplabel=1 configuration to
# interoperate with PEAPv1; see eap_testing.txt for more details.
# 'peap_outer_success=0' can be used to terminate PEAP authentication on
# tunneled EAP-Success. This is required with some RADIUS servers that
# implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g.,
# Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode)
# include_tls_length=1 can be used to force wpa_supplicant to include
# TLS Message Length field in all TLS messages even if they are not
# fragmented.
# sim_min_num_chal=3 can be used to configure EAP-SIM to require three
# challenges (by default, it accepts 2 or 3)
# phase2: Phase2 (inner authentication with TLS tunnel) parameters
# (string with field-value pairs, e.g., "auth=MSCHAPV2" for EAP-PEAP or
# "autheap=MSCHAPV2 autheap=MD5" for EAP-TTLS)
# Following certificate/private key fields are used in inner Phase2
# authentication when using EAP-TTLS or EAP-PEAP.
# ca_cert2: File path to CA certificate file. This file can have one or more
# trusted CA certificates. If ca_cert2 and ca_path2 are not included,
# server certificate will not be verified. This is insecure and a trusted
# CA certificate should always be configured.
# ca_path2: Directory path for CA certificate files (PEM)
# client_cert2: File path to client certificate file
# private_key2: File path to client private key file
# private_key2_passwd: Password for private key file
# dh_file2: File path to DH/DSA parameters file (in PEM format)
# subject_match2: Substring to be matched against the subject of the
# authentication server certificate.
# altsubject_match2: Substring to be matched against the alternative subject
# name of the authentication server certificate.
#
# fragment_size: Maximum EAP fragment size in bytes (default 1398).
# This value limits the fragment size for EAP methods that support
# fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set
# small enough to make the EAP messages fit in MTU of the network
# interface used for EAPOL. The default value is suitable for most
# cases.
#
# EAP-PSK variables:
# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
# nai: user NAI
#
# EAP-PAX variables:
# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
#
# EAP-SAKE variables:
# eappsk: 32-byte (256-bit, 64 hex digits) pre-shared key in hex format
# (this is concatenation of Root-Secret-A and Root-Secret-B)
# nai: user NAI (PEERID)
#
# EAP-GPSK variables:
# eappsk: Pre-shared key in hex format (at least 128 bits, i.e., 32 hex digits)
# nai: user NAI (ID_Client)
#
# EAP-FAST variables:
# pac_file: File path for the PAC entries. wpa_supplicant will need to be able
# to create this file and write updates to it when PAC is being
# provisioned or refreshed. Full path to the file should be used since
# working directory may change when wpa_supplicant is run in the
# background. Alternatively, a named configuration blob can be used by
# setting this to blob://<blob name>
# phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST
# credentials (PAC)
#
# wpa_supplicant supports number of "EAP workarounds" to work around
# interoperability issues with incorrectly behaving authentication servers.
# These are enabled by default because some of the issues are present in large
# number of authentication servers. Strict EAP conformance mode can be
# configured by disabling workarounds with eap_workaround=0.

# Example blocks:

# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
# network={
# ssid="simple"
# psk="very secret passphrase"
# priority=5
# }

# Same as previous, but request SSID-specific scanning (for APs that reject
# broadcast SSID)
# network={
# ssid="second ssid"
# scan_ssid=1
# psk="very secret passphrase"
# priority=2
# }

# Only WPA-PSK is used. Any valid cipher combination is accepted.
# network={
# ssid="example"
# proto=WPA
# key_mgmt=WPA-PSK
# pairwise=CCMP TKIP
# group=CCMP TKIP WEP104 WEP40
# psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
# priority=2
# }

# Only WPA-EAP is used. Both CCMP and TKIP is accepted. An AP that used WEP104
# or WEP40 as the group cipher will not be accepted.
# network={
# ssid="example"
# proto=RSN
# key_mgmt=WPA-EAP
# pairwise=CCMP TKIP
# group=CCMP TKIP
# eap=TLS
# identity="user@example.com"
# ca_cert="/etc/cert/ca.pem"
# client_cert="/etc/cert/user.pem"
# private_key="/etc/cert/user.prv"
# private_key_passwd="password"
# priority=1
# }

# EAP-PEAP/MSCHAPv2 configuration for RADIUS servers that use the new peaplabel
# (e.g., Radiator)
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=PEAP
# identity="user@example.com"
# password="foobar"
# ca_cert="/etc/cert/ca.pem"
# phase1="peaplabel=1"
# phase2="auth=MSCHAPV2"
# priority=10
# }

# EAP-TTLS/EAP-MD5-Challenge configuration with anonymous identity for the
# unencrypted use. Real identity is sent only within an encrypted TLS tunnel.
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=TTLS
# identity="user@example.com"
# anonymous_identity="anonymous@example.com"
# password="foobar"
# ca_cert="/etc/cert/ca.pem"
# priority=2
# }

# EAP-TTLS/MSCHAPv2 configuration with anonymous identity for the unencrypted
# use. Real identity is sent only within an encrypted TLS tunnel.
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=TTLS
# identity="user@example.com"
# anonymous_identity="anonymous@example.com"
# password="foobar"
# ca_cert="/etc/cert/ca.pem"
# phase2="auth=MSCHAPV2"
# }

# WPA-EAP, EAP-TTLS with different CA certificate used for outer and inner
# authentication.
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=TTLS
# # Phase1 / outer authentication
# anonymous_identity="anonymous@example.com"
# ca_cert="/etc/cert/ca.pem"
# # Phase 2 / inner authentication
# phase2="autheap=TLS"
# ca_cert2="/etc/cert/ca2.pem"
# client_cert2="/etc/cer/user.pem"
# private_key2="/etc/cer/user.prv"
# private_key2_passwd="password"
# priority=2
# }

# Both WPA-PSK and WPA-EAP is accepted. Only CCMP is accepted as pairwise and
# group cipher.
# network={
# ssid="example"
# bssid=00:11:22:33:44:55
# proto=WPA RSN
# key_mgmt=WPA-PSK WPA-EAP
# pairwise=CCMP
# group=CCMP
# psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
# }

# Special characters in SSID, so use hex string. Default to WPA-PSK, WPA-EAP
# and all valid ciphers.
# network={
# ssid=00010203
# psk=000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
# }


# EAP-SIM with a GSM SIM or USIM
# network={
# ssid="eap-sim-test"
# key_mgmt=WPA-EAP
# eap=SIM
# pin="1234"
# pcsc=""
# }


# EAP-PSK
# network={
# ssid="eap-psk-test"
# key_mgmt=WPA-EAP
# eap=PSK
# identity="eap_psk_user"
# eappsk=06b4be19da289f475aa46a33cb793029
# nai="eap_psk_user@example.com"
# }


# IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using
# EAP-TLS for authentication and key generation; require both unicast and
# broadcast WEP keys.
# network={
# ssid="1x-test"
# key_mgmt=IEEE8021X
# eap=TLS
# identity="user@example.com"
# ca_cert="/etc/cert/ca.pem"
# client_cert="/etc/cert/user.pem"
# private_key="/etc/cert/user.prv"
# private_key_passwd="password"
# eapol_flags=3
# }


# LEAP with dynamic WEP keys
# network={
# ssid="leap-example"
# key_mgmt=IEEE8021X
# eap=LEAP
# identity="user"
# password="foobar"
# }

# EAP-FAST with WPA (WPA or WPA2)
# network={
# ssid="eap-fast-test"
# key_mgmt=WPA-EAP
# eap=FAST
# anonymous_identity="FAST-000102030405"
# identity="username"
# password="password"
# phase1="fast_provisioning=1"
# pac_file="/etc/wpa_supplicant.eap-fast-pac"
# }

# network={
# ssid="eap-fast-test"
# key_mgmt=WPA-EAP
# eap=FAST
# anonymous_identity="FAST-000102030405"
# identity="username"
# password="password"
# phase1="fast_provisioning=1"
# pac_file="blob://eap-fast-pac"
# }

# Plaintext connection (no WPA, no IEEE 802.1X)
# network={
# ssid="plaintext-test"
# key_mgmt=NONE
# }


# Shared WEP key connection (no WPA, no IEEE 802.1X)
# network={
# ssid="static-wep-test"
# key_mgmt=NONE
# wep_key0="abcde"
# wep_key1=0102030405
# wep_key2="1234567890123"
# wep_tx_keyidx=0
# priority=5
# }


# Shared WEP key connection (no WPA, no IEEE 802.1X) using Shared Key
# IEEE 802.11 authentication
# network={
# ssid="static-wep-test2"
# key_mgmt=NONE
# wep_key0="abcde"
# wep_key1=0102030405
# wep_key2="1234567890123"
# wep_tx_keyidx=0
# priority=5
# auth_alg=SHARED
# }


# IBSS/ad-hoc network with WPA-None/TKIP.
# network={
# ssid="test adhoc"
# mode=1
# proto=WPA
# key_mgmt=WPA-NONE
# pairwise=NONE
# group=TKIP
# psk="secret passphrase"
# }


# Catch all example that allows more or less all configuration modes
# network={
# ssid="example"
# scan_ssid=1
# key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
# pairwise=CCMP TKIP
# group=CCMP TKIP WEP104 WEP40
# psk="very secret passphrase"
# eap=TTLS PEAP TLS
# identity="user@example.com"
# password="foobar"
# ca_cert="/etc/cert/ca.pem"
# client_cert="/etc/cert/user.pem"
# private_key="/etc/cert/user.prv"
# private_key_passwd="password"
# phase1="peaplabel=0"
# }

# Example of EAP-TLS with smartcard (openssl engine)
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=TLS
# proto=RSN
# pairwise=CCMP TKIP
# group=CCMP TKIP
# identity="user@example.com"
# ca_cert="/etc/cert/ca.pem"
# client_cert="/etc/cert/user.pem"
#
# engine=1
#
# # The engine configured here must be available. Look at
# # OpenSSL engine support in the global section.
# # The key available through the engine must be the private key
# # matching the client certificate configured above.
#
# # use the opensc engine
# #engine_id="opensc"
# #key_id="45"
#
# # use the pkcs11 engine
# engine_id="pkcs11"
# key_id="id_45"
#
# # Optional PIN configuration; this can be left out and PIN will be
# # asked through the control interface
# pin="1234"
# }

# Example configuration showing how to use an inlined blob as a CA certificate
# data instead of using external file
# network={
# ssid="example"
# key_mgmt=WPA-EAP
# eap=TTLS
# identity="user@example.com"
# anonymous_identity="anonymous@example.com"
# password="foobar"
# ca_cert="blob://exampleblob"
# priority=20
# }

blob-base64-exampleblob={
SGVsbG8gV29ybGQhCg==
}


# Wildcard match for SSID (plaintext APs only). This example select any
# open AP regardless of its SSID.
# network={
# key_mgmt=NONE
# }

network={
psk="xxxxxxxxxxxxxxxxx"
scan_ssid=1
ssid="XXXXXXXXXXXXX"
}

Puppy 3.01 Live CD

lsmod before modprobe action
# lsmod
Module Size Used by
snd_pcm_oss 41888 0
snd_mixer_oss 16896 1 snd_pcm_oss
usblp 14080 0
wlan_scan_sta 13440 1
ath_rate_sample 13696 1
ath_pci 96800 0
wlan 206020 4 wlan_scan_sta,ath_rate_sample,ath_pci
ath_hal 191568 3 ath_rate_sample,ath_pci
8139too 25088 0
mii 5888 1 8139too
sdhci 17548 0
mmc_block 8712 0
mmc_core 27284 2 sdhci,mmc_block
yenta_socket 26892 2
rsrc_nonstatic 13312 1 yenta_socket
snd_hda_intel 289308 0
snd_pcm 75656 2 snd_pcm_oss,snd_hda_intel
snd_timer 22020 1 snd_pcm
snd_page_alloc 10120 2 snd_hda_intel,snd_pcm
snd_hwdep 9220 1 snd_hda_intel
snd 52068 6 snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_pcm, snd_timer,snd_hwdep
soundcore 7520 1 snd
i2c_piix4 8716 0
i2c_core 22032 1 i2c_piix4
fuse 44052 0
unionfs 83732 1
nls_iso8859_1 4224 0
nls_cp437 5888 0
usbhid 24928 0
usb_storage 83264 0
ehci_hcd 31116 0
ohci_hcd 21252 0
usbcore 127128 6 usblp,usbhid,usb_storage,ehci_hcd,ohci_hcd
sr_mod 17188 0
ide_cd 39200 0
cdrom 36768 2 sr_mod,ide_cd
squashfs 47620 1

lsmod after modprobe activity

# ifconfig ath0 up
# lsmod
Module Size Used by
michael_mic 2688 0
aes 28224 0
crc32c 2176 0
libcrc32c 2816 1 crc32c
ecb 3584 0
blkcipher 6532 1 ecb
arc4 2176 0
snd_pcm_oss 41888 0
snd_mixer_oss 16896 1 snd_pcm_oss
usblp 14080 0
wlan_scan_sta 13440 1
ath_rate_sample 13696 1
ath_pci 96800 0
wlan 206020 4 wlan_scan_sta,ath_rate_sample,ath_pci
ath_hal 191568 3 ath_rate_sample,ath_pci
8139too 25088 0
mii 5888 1 8139too
sdhci 17548 0
mmc_block 8712 0
mmc_core 27284 2 sdhci,mmc_block
yenta_socket 26892 2
rsrc_nonstatic 13312 1 yenta_socket
snd_hda_intel 289308 0
snd_pcm 75656 2 snd_pcm_oss,snd_hda_intel
snd_timer 22020 1 snd_pcm
snd_page_alloc 10120 2 snd_hda_intel,snd_pcm
snd_hwdep 9220 1 snd_hda_intel
snd 52068 6 snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_pcm, snd_timer,snd_hwdep
soundcore 7520 1 snd
i2c_piix4 8716 0
i2c_core 22032 1 i2c_piix4
fuse 44052 0
unionfs 83732 1
nls_iso8859_1 4224 0
nls_cp437 5888 0
usbhid 24928 0
usb_storage 83264 0
ehci_hcd 31116 0
ohci_hcd 21252 0
usbcore 127128 6 usblp,usbhid,usb_storage,ehci_hcd,ohci_hcd
sr_mod 17188 0
ide_cd 39200 0
cdrom 36768 2 sr_mod,ide_cd
squashfs 47620 1
# rm /var/run/wpa_supplicant/*

After rm var/run/wpa_supplicant/*

# rm /var/run/wpa_supplicant/*
# wpa_supplicant -i ath0 -D wext -c /etc/wpa_supplicant.conf -dd
Initializing interface 'ath0' conf '/etc/wpa_supplicant.conf' driver 'wext' ctrl _interface 'N/A' bridge 'N/A'
Configuration file '/etc/wpa_supplicant.conf' -> '/etc/wpa_supplicant.conf'
Reading configuration file '/etc/wpa_supplicant.conf'
ctrl_interface='/var/run/wpa_supplicant'
ap_scan=2
update_config=1
Line: 5 - start of a new network block
ssid - hexdump_ascii(len=8):
57 69 6e 67 59 69 6e 67 WingYing
PSK - hexdump(len=32): [REMOVED]
proto: 0x1
key_mgmt: 0x2
pairwise: 0x8
group: 0x8
Priority group 0
id=0 ssid='WingYing'
Initializing interface (2) 'ath0'
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: KEY_RX entering state NO_KEY_RECEIVE
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
SIOCGIWRANGE: WE(compiled)=22 WE(source)=13 enc_capa=0xf
capabilities: key_mgmt 0xf enc 0xf
WEXT: Operstate: linkmode=1, operstate=5
Own MAC address: 00:19:7d:43:b6:16
wpa_driver_wext_set_wpa
wpa_driver_wext_set_key: alg=0 key_idx=0 set_tx=0 seq_len=0 key_len=0
wpa_driver_wext_set_key: alg=0 key_idx=1 set_tx=0 seq_len=0 key_len=0
wpa_driver_wext_set_key: alg=0 key_idx=2 set_tx=0 seq_len=0 key_len=0
wpa_driver_wext_set_key: alg=0 key_idx=3 set_tx=0 seq_len=0 key_len=0
wpa_driver_wext_set_countermeasures
wpa_driver_wext_set_drop_unencrypted
Setting scan request: 0 sec 100000 usec
Using existing control interface directory.
Added interface ath0
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
Wireless event: cmd=0x8b06 len=8
State: DISCONNECTED -> SCANNING
Trying to associate with SSID 'XXXXXXXX'
Cancelling scan request
WPA: clearing own WPA/RSN IE
Automatic auth_alg selection: 0x1
WPA: No WPA/RSN IE available from association info
WPA: Set cipher suites based on configuration
WPA: Selected cipher suites: group 8 pairwise 8 key_mgmt 2 proto 1
WPA: clearing AP WPA IE
WPA: clearing AP RSN IE
WPA: using GTK TKIP
WPA: using PTK TKIP
WPA: using KEY_MGMT WPA-PSK
WPA: Set own WPA IE default - hexdump(len=24): dd 16 00 50 f2 01 01 00 00 50 f2 02 01 00 00 50 f2 02 01 00 00 50 f2 02
No keys have been configured - skip key clearing
wpa_driver_wext_set_drop_unencrypted
State: SCANNING -> ASSOCIATING
wpa_driver_wext_set_operstate: operstate 0->0 (DORMANT)
WEXT: Operstate: linkmode=-1, operstate=5
wpa_driver_wext_associate
Setting authentication timeout: 60 sec 0 usec
EAPOL: External notification - EAP success=0
EAPOL: External notification - EAP fail=0
EAPOL: External notification - portControl=Auto
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
Wireless event: cmd=0x8b06 len=8
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
Wireless event: cmd=0x8b1a len=16
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
Wireless event: cmd=0x8b06 len=8
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
Wireless event: cmd=0x8b1a len=16
Authentication with 00:00:00:00:00:00 timed out.
Added BSSID 00:00:00:00:00:00 into blacklist
No keys have been configured - skip key clearing
State: ASSOCIATING -> DISCONNECTED
wpa_driver_wext_set_operstate: operstate 0->0 (DORMANT)
WEXT: Operstate: linkmode=-1, operstate=5
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
EAPOL: External notification - EAP success=0
Setting scan request: 0 sec 0 usec
State: DISCONNECTED -> SCANNING
Trying to associate with SSID 'XXXXXXX'
Cancelling scan request

Etc, Etc

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#33 Post by tempestuous »

Good reporting. It appears that the ath_pci driver has its own encryption sub-modules, so the standard kernel encryption modules are not necessary.
peterw wrote:driver 'wext' ctrl _interface 'N/A' bridge 'N/A'
That's useful information. I googled for that phrase, and got this -
http://madwifi.org/ticket/1030
It appears there is a problem with the way that the madwifi driver interacts with wpa_supplicant. Some users claim it is related to certain versions of the madwifi driver. This is certainly possible; Puppy 2.17 contains madwifi-0.9.3.1 and Puppy 3.00 contains madwifi 0.9.3.2.
There are several "workarounds" mentioned in that thread, and a patch for the driver which increases the "preempt_scan" period.
Let's try the most straightforward suggestions first. Assuming your wifi access point suports G mode, just before "ifconfig ath0 up" (or just after?) do this -

Code: Select all

iwpriv ath0 mode 3
This will force the adaptor into pure G mode, and stop a lot of mode-related confusion by the driver.
Now run the wpa_supplicant command.
If no success, try adding this line to /etc/wpa_supplicant.conf

Code: Select all

auth_alg=OPEN
And as a last resort; Pavel Roskin, a madwifi developer, suggests using a bogus SSID value, which will force the driver to rescan for your access point.
I consider this a rather ugly workaround.

If none of these work, I will compile the madwifi driver with the preempt_scan patch.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#34 Post by tempestuous »

Here is the patched ath_pci driver package. The preempt_scan value has been increased from 100 to 1000 (1/10th second to 1 second).

EDIT Nov 16 2007: MADWiFi (ath_pci) driver moved to here -
http://www.murga-linux.com/puppy/viewto ... 643#153643
Last edited by tempestuous on Thu 15 Nov 2007, 18:12, edited 2 times in total.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#35 Post by tempestuous »

I just realised something really basic; there are instances of modules failing to load the other modules they depend on, so the solution might be as simple as pre-loading those other modules.
In the case of the ath_pci module, that means:

EDIT: extra command added to first unload ath_pci

Code: Select all

rmmod ath_pci
modprobe ath_hal
modprobe wlan
modprobe wlan_scan_ap
modprobe wlan_wep
modprobe wlan_tkip
modprobe wlan_ccmp
modprobe ath_pci
Last edited by tempestuous on Wed 24 Oct 2007, 04:28, edited 1 time in total.

Post Reply