lowest complexity. Complexity is a function of both task 'complexity'
and task 'scope'.
+
Core
====
and get rid of the unnecessary ones.
-- Disable logging to syslog when run in foreground
+- Support for multiple agents
+
+ Priority: Medium
+ Complexity: C2
+
+ Allow to register multiple agents. Each unique system bus name owner
+ however is only allowed to register one agent.
+
+ The selection of which agents is used should be matched by bus name
+ owner if possible or first come first serve. A graceful fallback to
+ the next agent should be also used in case of malfunctional agents.
+
+- Remove --nobacktrace option
+
+ 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 type definitions
Priority: Medium
Complexity: C1
- When ConnMan is run in foreground mode, disable logging to syslog. If not
- disabled, systemd will log everything twice, once via syslog and once on
- standard error.
+ Go through variable types and use the following:
+ * bool from <stdbool.h> instead of connman_bool_t and gboolean, in the
+ latter case in those places it makes sense
-- Favorite service migration removal
+- Clean up data structure usage
- Priority: Medium
- Complexity: C1
- When: 12/2012
+ Priority: Medium
+ Complexity: C4
+
+ Use hash tables, queues and lists in the code. Replace GSequences with
+ simpler structures. At the same time do a check on the currently used
+ data structures and see if something can be simplified.
+
+
+- Unit tests for DHCP, DNS and HTTP
- Remove service migration code that moves services from default.profile
- to the current directory-based structure.
+ Priority: Medium
+ 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.
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.
+
+
- EAP-AKA/SIM
Priority: Medium
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
========
Complexity: C4
Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
-
-WiMAX
-=====
-
-- WiMAX removal
+- L2TP & PPTP compatibility prefix removal
Priority: Medium
Complexity: C1
- When: 12/2012
-
- WiMAX plugin is unmaintained. Remove WiMAX plugin, service type definitions
- and associated code.
+ 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.
Tools
=====