How to handle multiple SSIDs with the same BSS
Marcel Holtmann
marcel
Sun Dec 27 18:43:48 PST 2009
Hi Jouni,
> > > Actually, now that I added a preliminary implementation of BSS table
> > > management into wpa_supplicant, I do have a unique identifier (unsigned
> > > int) for each BSS. In other words, there should be no need to
> > > concatenate BSSID and SSID in hex here and we could just use that new
> > > identifier and make D-Bus code use the BSS table as the source of the
> > > information.
> >
> > sounds great. This should make things work smoothly soon.
>
> I converted the new D-Bus API to use the BSS table instead of scan
> results. This will hopefully resolve the multi-SSID issue you mentioned
> earlier. I did only minimal testing with the wpas-dbus-new.py script and
> d-feet, so please let me know if I missed something in the changes.
be careful with the D-Bus object path. If you give invalid characters
then it will crash.
#0 0x000000391e8326b5 in raise (sig=<value optimized out>)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x000000391e833e95 in abort () at abort.c:92
#2 0x0000003924c2a795 in _dbus_abort () at dbus-sysdeps.c:88
#3 0x0000003924c26665 in _dbus_warn_check_failed (
format=0x3924c33740 "arguments to %s() were incorrect, assertion \"%s\" failed in file %s line %d.\nThis is normally a bug in some application usi
ng the D-Bus library.\n")
at dbus-internals.c:283
#4 0x0000003924c0c66c in dbus_connection_unregister_object_path (connection=0xa64ba0,
path=0xa64eb0 "(null)/BSSs/76") at dbus-connection.c:5607
#5 0x000000000042d9ac in wpa_dbus_unregister_object_per_iface (
ctrl_iface=<value optimized out>, path=<value optimized out>)
at dbus/dbus_new_helpers.c:1497
#6 0x000000000042f760 in wpas_dbus_unregister_bss (wpa_s=0xa67880,
bssid=<value optimized out>, id=<value optimized out>) at dbus/dbus_new.c:1272
#7 0x000000000040a310 in wpas_notify_bss_removed (wpa_s=0xa67880, bssid=0xa83940 "", id=76)
at notify.c:258
#8 0x000000000040aa32 in wpa_bss_remove (wpa_s=0xa67880, bss=0xa83910) at bss.c:63
#9 0x000000000040aa7b in wpa_bss_deinit (wpa_s=0xa67880) at bss.c:264
#10 0x00000000004387ed in wpa_supplicant_cleanup (wpa_s=<value optimized out>)
at wpa_supplicant.c:402
#11 wpa_supplicant_deinit_iface (wpa_s=<value optimized out>) at wpa_supplicant.c:2117
#12 0x00000000004388b5 in wpa_supplicant_remove_iface (global=<value optimized out>,
wpa_s=0xa67880) at wpa_supplicant.c:2220
#13 0x0000000000438910 in wpa_supplicant_deinit (global=0xa637c0) at wpa_supplicant.c:2393
#14 0x000000000043dbac in main (argc=<value optimized out>, argv=<value optimized out>)
at main.c:276
This happens when shutting down wpa_supplicant. See the (null) in the
object path on unregister.
Regards
Marcel
More information about the Hostap
mailing list