Documentation/Maemo 5 Developer Guide/Architecture/Connectivity

=Connectivity domain= The Connectivity domain provides the APIs, user interfaces, and underlying user-space and kernel components for Wireless Internet connectivity, wireless local connectivity and Home connectivity.

Internet connectivity
Wireless Internet connectivity is supported for IPv4 over WLAN networks. IPv4 address configuration is done using DHCP or static addresses.

Internet Connectivity Daemon (ICd2) handles network connectivity in the Device. Applications should use the shared libconic library API to request connectivity instead of directly interacting with ICd2. Refer the API documentation for libconic.

Lower level implementation details

Experienced developers can extend internet connectivity by adding new network interfaces using ICd2 APIs. They can also control the WLAN interfaces using the DBus APIs provided osso-wlan. If you wish to only the scan the network interfaces, then ICd2 is sufficient.

Local connectivity
The Wireless local connectivity consists of Bluetooth connectivity. Bluez provides the bluetooth protocol stack. Refer the API documentation for its usage. It supports the following features:


 * Data exchange between devices using BT OPP. Refer libgwobex API reference for more details.
 * Access the filesystem of the Rover device using BT FTP protocol.
 * Support for BT mono and stereo headsets via BT HSP, BT HFP and A2DP protocols.

Home connectivity
Home connectivity consists of a UPnP stack with Internet Gateway Device (IGD) and Audio Video (AV) support. GUPnP stack supported by Multimedia domain should be used for any new application development.

The old clinkc UPnP stack provided by Connectivity domain still exists due to legacy reasons and is deprecated.

User Interface
The Connectivity domain also includes UI components related to Connectivity. These include the connectivity related status bar indicators, dialogs, applications, wizards, and control panel applets.