lowest complexity. Complexity is a function of both task 'complexity'
and task 'scope'.
+
Core
====
-- Session API implementation
-
- Priority: High
- Complexity: C4
- Owner: Daniel Wagner <daniel.wagner@bmw-carit.de>
- Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
-
- The session API should provide a connection abstraction in order to
- prioritize applications network accesses, prevent or allow network
- and bearer roaming, or provide applications with a way to request
- for periodic network connections. On-demand connections will be
- implemented through this API as well.
- See http://www.mail-archive.com/connman@connman.net/msg01653.html
-
-
- Personal firewall
Priority: Low
Complexity: C8
- Owner: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Discuss and implement a basic and safe firewalling strategy into
Connman. Provide a D-Bus API for personal firewalling.
security integration.
-- Favorite service migration removal
+- Check logging produced by connman_info()
- Priority: Medium
- Complexity: C1
- When: 12/2012
+ Priority: Medium
+ Complexity: C1
- Remove service migration code that moves services from default.profile
- to the current directory-based structure.
+ Check that logging produced by connman_info() contains meaningful messages
+ and get rid of the unnecessary ones.
-WiFi
-====
+- Remove --nobacktrace option
-- EAP-AKA/SIM
+ Priority: Medium
+ Complexity: C1
+ When: 2.0
+
+ Remove the --nobacktrace option or change it to --backtrace depending on
+ the level of systemd integration or other factors.
+
+
+- Clean up data structure usage
Priority: Medium
+ Complexity: C4
+
+ Use hash tables, queues and lists in the code. Check on the currently used
+ data structures and see if something can be simplified.
+
+
+- Unit tests for DHCP, DNS and HTTP
+
+ Priority: Low
+ Complexity: C4
+
+ Create unit tests for these components starting with DHCP. Use gtest
+ from GLib for this task similarly to what has been done for OBEX in Bluez
+ and oFono in general.
+
+
+- Support other time sources than NTP
+
+ Priority: Low
Complexity: C2
- Owner: Samuel Ortiz <sameo@linux.intel.com>
- This EAP is needed for SIM card based network authentication.
- ConnMan here plays a minor role: Once wpa_supplicant is set up for
- starting and EAP-AKA/SIM authentication, it will talk to a SIM card
- through its pcsc-lite API.
+ Support other time sources like cellular, GPS in addition to NTP.
-- EAP-FAST
+- Get interface names from src/device.c
Priority: Low
- Complexity: C1
+ Complexity: C2
+
+ Instead of using ioctls in connman_inet_ifindex and connman_inet_ifname,
+ utilize the information already provided by netlink in src/device.c.
+
+
+- Simplify gateway selection code
+
+ Priority: Low
+ Complexity: C4
+
+ The service list is always sorted according to preference with the
+ first service always owning the default route. See if update_order and
+ find_default_gateway in src/connection.c can be modified to use the
+ sorted service list instead of walking through the gateway_hash.
-- Wireless background scan
+- Support D-Bus ObjectManager
Priority: Medium
Complexity: C4
- Owner: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
- While connected ConnMan should offload the background scanning to
- wpa_supplicant. Wpa_supplicant allows for a fancy background scan
- which frequency increases after the current connection signal level
- drops below a defined threshold.
- We should also be able to have wpa_supplicant do the background
- scanning for us when we're not connected, if we have configured our
- favorite networks.
+ Support D-Bus ObjectManager by using functionality already present in
+ ./gdbus. Method calls and signals are already registered with gdbus, but
+ properties and replies especially in Agent are still handled with plain
+ dbus library function calls.
+
+ With this, Manager API is removed, and a WiFi P2P API based on
+ ObjectManager common to Linux desktops can be implemented.
+
+
+WiFi
+====
+
+- Clean up WiFi data structure usage
+
+ Priority: Medium
+ Complexity: C2
+ Struct wifi_data is passed as a pointer in some of the wifi plugin
+ callbacks. For example removing a WiFi USB stick causes RTNL and
+ wpa_supplicant to call the wifi plugin at the same time causing the
+ freeing of the wifi data structure. Fix up the code to have proper
+ reference counting or other handling in place for the shared wifi data
+ and the members in the data structure.
-- WiFi p2p
+
+- EAP-AKA/SIM
Priority: Medium
Complexity: C2
+ This EAP is needed for SIM card based network authentication.
+ ConnMan here plays a minor role: Once wpa_supplicant is set up for
+ starting and EAP-AKA/SIM authentication, it will talk to a SIM card
+ through its pcsc-lite API.
+
-- Previous WPS pin code sending
+- EAP-FAST
- Priority: Medium
- Complexity: C2
+ Priority: Low
+ Complexity: C1
- Provide previous WPS pin code in PreviousPassphrase field if WPS was used.
- Removing wpa_supplicant 0.7.x legacy support
Priority: Low
Complexity: C1
- Owner: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Removing global country property setter in gsupplicant, and removing
- wifi's technology set_regdom implementation. (Note: should be done around
- the end 2012)
+ wifi's technology set_regdom implementation. Removing autoscan fallback.
+ (Note: should be done around the end 2012)
Bluetooth
=========
+- Remove Bluez 4.x support
+
+ Priority: Low
+ Complexity: C1
+
+ Remove plugins/bluetooth-legacy.c support in about 6 month (July 2013) or
+ when Bluez 4.x usage becomes minimal.
Cellular
========
Priority: Medium
Complexity: C4
- Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
+
+
+- L2TP & PPTP compatibility prefix removal
+
+ Priority: Medium
+ Complexity: C1
+ When: connman 2.0
+
+ The VPN config file provisioning patchset contains code that makes
+ PPP options to be marked by "PPPD." prefix. The code supports also
+ old "L2TP." and "PPTP." prefix for PPP options. Remove the compatibility
+ code and only allow "PPPD." prefix for PPP options.
+
+
+- Update VPNC and OpenVPN with Agent support
+
+ Priority: Medium
+ Complexity: C2
+
+ Update VPNC and OpenVPN with VPN Agent support to request possible user
+ ids and passphrases.
Tools
=====
-- Command line tool
+- Add Clock API and MoveBefore/MoveAfter support to connmanctl
Priority: Low
- Complexity: C4
- Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
+ Complexity: C2
- For platforms not running python, it could prove useful to provide them
- with a native single binary command line tool.
+ The connmanctl command line tool should support Clock API and Service API
+ MoveBefore/MoveAfter.
User Interface
Priority: Low
Complexity: C4
- Owner: Alok Barsode <alok.barsode@linux.intel.com>
A GNOME3 shell user interface would make it easier for mainstream distros
- users to use ConnMan.
+ users to use ConnMan. Continue/restart the work at
+ https://github.com/connectivity/gnome-extension-connman