Imported Upstream version 1.24
[platform/upstream/connman.git] / TODO
diff --git a/TODO b/TODO
index 7fa2df4..8036538 100644 (file)
--- a/TODO
+++ b/TODO
@@ -8,24 +8,10 @@ Background
    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
@@ -54,29 +40,59 @@ Core
    and get rid of the unnecessary ones.
 
 
-- Disable logging to syslog when run in foreground
+- Remove --nobacktrace option
 
    Priority: Medium
    Complexity: C1
+   When: 2.0
 
-   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.
+   Remove the --nobacktrace option or change it to --backtrace depending on
+   the level of systemd integration or other factors.
 
 
-- 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. Check on the currently used
+   data structures and see if something can be simplified.
+
+
+- Unit tests for DHCP, DNS and HTTP
+
+   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.
+
+
+- Support other time sources than NTP
+
+   Priority: Medium
+   Complexity: C2
 
-  Remove service migration code that moves services from default.profile
-  to the current directory-based structure.
+   Support other time sources like cellular, GPS in addition to NTP.
 
 
 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
@@ -114,6 +130,13 @@ WiFi
 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
 ========
@@ -128,31 +151,37 @@ VPN
    Complexity: C4
    Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
 
+- L2TP & PPTP compatibility prefix removal
 
-WiMAX
-=====
+   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.
 
-- WiMAX removal
+
+- Update VPNC and OpenVPN with Agent support
 
    Priority: Medium
-   Complexity: C1
-   When: 12/2012
+   Complexity: C2
 
-   WiMAX plugin is unmaintained. Remove WiMAX plugin, service type definitions
-   and associated code.
+   Update VPNC and OpenVPN with VPN Agent support to request possible user
+   ids and passphrases.
 
 
 Tools
 =====
 
-- Add Agent mode to connmanctl command line tool
+- Add Clock API and MoveBefore/MoveAfter support to connmanctl
 
-   Priority: Medium
+   Priority: Low
    Complexity: C2
 
-   connmanctl should implement agent prompting when started with a suitable
-   command line option. Agent mode should also be enabled when in interactive
-   mode.
+   The connmanctl command line tool should support Clock API and Service API
+   MoveBefore/MoveAfter.
 
 
 User Interface