Jonathan Wilson
2012-07-19 20:13:05 UTC
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.
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.