Mailing List Archive

information required to replace Maemo5 wlan bits
Here is the information on the things you need to know
about/provide/use/etc in order to replace the Maemo5 ICD WLAN plugin with
something better (e.g. based on wpa-supplicant) and have every other
package on the stock install continue to work properly.
You will need to replace the following packages (and update the ICD2
configs accordingly)
osso-wlan
osso-wlan-security
libicd-network-wlan
libicd-network-wps
libicd-network-eap
and possibly icd2-network-wlan-config

You may need to send the following dbus messages
com.nokia.icd_ui.show_private_key_passwd_dlg
com.nokia.icd_ui.show_gtc_dlg
com.nokia.icd_ui.show_server_cert_dlg
com.nokia.icd_ui.show_mschap_change_dlg
com.nokia.icd_ui.show_passwd_dlg

You may need to add handlers for the following dbus signals:
com.nokia.icd_ui.passwd
com.nokia.icd_ui.mschap_change
com.nokia.icd_ui.gtc_response
com.nokia.icd_ui.private_key_passwd
com.nokia.icd_ui.server_cert
com.nokia.wps_ui.method_sig

You will need to respond to the following dbus messages:
com.nokia.wlancond.request

You will need to signal on the following dbus signals:
com.nokia.wlancond.signal.scan_results
com.nokia.eap.signal.wps_success

You may need to read files from /usr/share/sub-ca-certificates
You may need to use maemosec libraries and other things to read certificates

And you will probably need to read or write the following gconf keys (In
particular note that type and wlan_security need to be set to match stock
Maemo. Some keys will need to be read, some will need to be written to,
some will need to be both read and written to. This list is all the
relevant gconf keys referenced by both the packages being replaced and by
other packages on the system. The %s is replaced with the IAP name,
whatever that might be.)
/system/osso/connectivity/IAP/wlan_tx_power
/system/osso/connectivity/IAP/%s/type
/system/osso/connectivity/IAP/%s/wlan_security
/system/osso/connectivity/IAP/%s/wlan_ssid
/system/osso/connectivity/IAP/%s/wlan_wepdefkey
/system/osso/connectivity/IAP/%s/wlan_wepkey1
/system/osso/connectivity/IAP/%s/wlan_wepkey2
/system/osso/connectivity/IAP/%s/wlan_wepkey3
/system/osso/connectivity/IAP/%s/wlan_wepkey4
/system/osso/connectivity/IAP/%s/nai
/system/osso/connectivity/IAP/%s/temporary
/system/osso/connectivity/IAP/%s/wlan_hidden
/system/osso/connectivity/IAP/%s/EAP_wpa2_only_mode
/system/osso/connectivity/IAP/%s/powersave_after_scan
/system/osso/connectivity/IAP/%s/wlan_powersave
/system/osso/connectivity/IAP/%s/wlan_adhoc_channel
/system/osso/connectivity/IAP/%s/EAP_TLS_PEAP_client_certificate_file
/system/osso/connectivity/IAP/%s/EAP_default_type
/system/osso/connectivity/IAP/%s/EAP_wpa_preshared_passphrase
/system/osso/connectivity/IAP/%s/PEAP_tunneled_eap_type
/system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_username
/system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_password
/system/osso/connectivity/IAP/%s/EAP_GTC_identity
/system/osso/connectivity/IAP/%s/EAP_wpa_preshared_key
/system/osso/connectivity/IAP/%s/EAP_SIMPLE_CONFIG_device_password
/system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_password_prompt
/system/osso/connectivity/IAP/%s/EAP_manual_username
/system/osso/connectivity/IAP/%s/EAP_use_manual_username
/system/osso/connectivity/IAP/%s/TLS_server_authenticates_client_policy_in_client


Combining this information with e.g. libicd-network-wpa could allow a
proper open-source drop-in replacement for the WiFi infrastructure on
Maemo5 Fremantle (for e.g. CSSU) that will automatically pick up all your
existing WiFi networks. No I dont have time to actually write any code for
this.
_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: information required to replace Maemo5 wlan bits [ In reply to ]
Hi, Jonathan,

On Thu, Jul 19, 2012 at 4:13 PM, Jonathan Wilson <jfwfreo@tpgi.com.au> wrote:
> Here is the information on the things you need to know about/provide/use/etc
> in order to replace the Maemo5 ICD WLAN plugin with something better (e.g.
> based on wpa-supplicant) and have every other package on the stock install
> continue to work properly.
> [snip]

Just to let you know, that IMHO the analysis and information you are
collecting are even more important than rewriting the proprietary
components. It helps both understanding the inner workings of the
system (what about writing a "Maemo 5 Internals" document for the
proprietary parts? :)) and help people interacting with these
components, customizing them (e.g. binary patching) or replacing them
when necessary.

Anyway, I appreciate reading these RE analysis, even though I'm not
actively using my N900 (now playing with N9). Maybe it could be added
to some wiki section as well?

Best Regards,
--
Anderson Lizardo
_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: information required to replace Maemo5 wlan bits [ In reply to ]
Timur Kristóf wrote:
> I'm not sure what would be the point of replacing the proprietary WLAN bits.
1.Ability to support WiFi security mechanisms that the stock bits dont support
2.Support for assigning higher priorities to different wireless networks
(i.e. if you move into range of a higher-priority network than the one you
are on, it will join to that)

Probably other things too.

_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: information required to replace Maemo5 wlan bits [ In reply to ]
> Just to let you know, that IMHO the analysis and information you are
> collecting are even more important than rewriting the proprietary
> components. It helps both understanding the inner workings of the
> system (what about writing a "Maemo 5 Internals" document for the
> proprietary parts? :)) and help people interacting with these
> components, customizing them (e.g. binary patching) or replacing them
> when necessary.
>
> Anyway, I appreciate reading these RE analysis, even though I'm not
> actively using my N900 (now playing with N9). Maybe it could be added
> to some wiki section as well?

Agreed, I am also immensely grateful for all the reverse-engineering
that goes on. One day I'll finally get around to reimplementing the
conversations and address books ;)

I also think the wiki is far more visible long-term than the mailing
list archive (though it's good to have it in more than one place), so
putting things there would be great. The mailing list is obviously far
better for drawing attention to it though (as is posting to TMO, as you
have been).

>> I'm not sure what would be the point of replacing the proprietary
>> WLAN bits.
> 1.Ability to support WiFi security mechanisms that the stock bits
> dont support
> 2.Support for assigning higher priorities to different wireless
> networks
> (i.e. if you move into range of a higher-priority network than the
> one you
> are on, it will join to that)
>
> Probably other things too.

The particular reason I briefly looked at this a while back was to be
able to have WiFi and cellular active at the same time without having to
run a hotspot application (i.e. the WiFi as a client to my existing
wireless network, not a new AP). In my case, I just wanted to be able to
SSH to my phone over WiFi whilst it was sharing it's cellular signal
over PC-Suite/Unix-mode USB. In the end I set the N900 up as a router
and switched to Windows-mode USB networking, but it would be nice and
much simpler to just use it as I originally intended (not to mention, I
can't seem to get PC-Suite mode to work again afterwards without a
reboot).

- Jamie
_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: information required to replace Maemo5 wlan bits [ In reply to ]
On Friday 20 July 2012 04:13:05 Jonathan Wilson wrote:
> /system/osso/connectivity/IAP/wlan_tx_power
> /system/osso/connectivity/IAP/%s/type
> /system/osso/connectivity/IAP/%s/wlan_security
> /system/osso/connectivity/IAP/%s/wlan_ssid
> /system/osso/connectivity/IAP/%s/wlan_wepdefkey
> /system/osso/connectivity/IAP/%s/wlan_wepkey1
> /system/osso/connectivity/IAP/%s/wlan_wepkey2
> /system/osso/connectivity/IAP/%s/wlan_wepkey3
> /system/osso/connectivity/IAP/%s/wlan_wepkey4
> /system/osso/connectivity/IAP/%s/nai
> /system/osso/connectivity/IAP/%s/temporary
> /system/osso/connectivity/IAP/%s/wlan_hidden
> /system/osso/connectivity/IAP/%s/EAP_wpa2_only_mode
> /system/osso/connectivity/IAP/%s/powersave_after_scan
> /system/osso/connectivity/IAP/%s/wlan_powersave
> /system/osso/connectivity/IAP/%s/wlan_adhoc_channel
> /system/osso/connectivity/IAP/%s/EAP_TLS_PEAP_client_certificat
> e_file
> /system/osso/connectivity/IAP/%s/EAP_default_type
> /system/osso/connectivity/IAP/%s/EAP_wpa_preshared_passphrase
> /system/osso/connectivity/IAP/%s/PEAP_tunneled_eap_type
> /system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_username
> /system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_password
> /system/osso/connectivity/IAP/%s/EAP_GTC_identity
> /system/osso/connectivity/IAP/%s/EAP_wpa_preshared_key
> /system/osso/connectivity/IAP/%s/EAP_SIMPLE_CONFIG_device_passw
> ord
> /system/osso/connectivity/IAP/%s/EAP_MSCHAPV2_password_prompt
> /system/osso/connectivity/IAP/%s/EAP_manual_username
> /system/osso/connectivity/IAP/%s/EAP_use_manual_username
> /system/osso/connectivity/IAP/%s/TLS_server_authenticates_clien
> t_policy_in_client
>

If you want to specify password for EAP_GTC_identity store it to:

/system/osso/connectivity/IAP/%s/EAP_GTC_passcode

--
Pali Rohár
pali.rohar@gmail.com