gweb: Make sure to destroy the lookup before calling any result function
[platform/upstream/connman.git] / TODO
diff --git a/TODO b/TODO
index e581243..b81a41d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -8,6 +8,7 @@ Background
    lowest complexity. Complexity is a function of both task 'complexity'
    and task 'scope'.
 
+
 Core
 ====
 
@@ -26,19 +27,6 @@ Core
    See http://www.mail-archive.com/connman@connman.net/msg01653.html
 
 
-- main.conf FallbackTimeservers, FallbackNameservers
-   Priority: Medium
-   Complexity: C2
-   Owner:
-
-   Both entries should take a string list as arguments and can contain
-   mixed combination of fully qualified domain names, IPv4 and IPv6
-   addresses. In absence of main.conf or if this entry is not present
-   then no fallback servers are used. These configuration file values
-   will obsolete plugins/meego.c and plugins/google.c.
-   See http://lists.connman.net/pipermail/connman/2012-March/008605.html
-
-
 - Personal firewall
 
    Priority: Low
@@ -58,10 +46,85 @@ Core
    security integration.
 
 
+- Check logging produced by connman_info()
+
+   Priority: Medium
+   Complexity: C1
+
+   Check that logging produced by connman_info() contains meaningful messages
+   and get rid of the unnecessary ones.
+
+
+- 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
+
+   Go through variable types and use the following:
+   * uint8_t instead of connman_uint8_t, unsigned char
+   * uint16_t instead of connman_uint16_t, unsigned short
+   * bool from <stdbool.h> instead of connman_bool_t and gboolean, in the
+     latter case in those places it makes sense
+
+
+- Clean up data structure usage
+
+   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
+
+   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
@@ -80,38 +143,38 @@ WiFi
    Complexity: C1
 
 
-- Wireless background scan
-
-   Priority: Medium
-   Complexity: C4
-   Owner: Samuel Ortiz <sameo@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.
-
-
 - WiFi p2p
 
    Priority: Medium
    Complexity: C2
 
 
+- 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. Removing autoscan fallback.
+  (Note: should be done around the end 2012)
 
 Bluetooth
 =========
 
-- DUN client
+- Add support for BlueZ 5.x APIs
 
-   Priority: Low
-   Complexity: C4
-   Owner: Mario Tokarz <mario.tokarz@bmw-carit.de>
+  Priority: High
+  Complexity: C1
+
+  Rename current plugin to plugins/bluetooth-legacy.c and make sure it
+  does not register any technology or service when BlueZ 4.x API is not
+  present.
 
+  Create new plugins/bluetooth.c to support BlueZ 5.x API and make use
+  of GDBusClient and GDBusProxy (see bluetoothctl for usage example).
 
+  Remove plugins/bluetooth-legacy.c support in about 6 month (July 2013).
 
 Cellular
 ========
@@ -130,14 +193,14 @@ VPN
 Tools
 =====
 
-- Command line tool
+- Add Agent mode to connmanctl command line tool
 
-   Priority: Low
-   Complexity: C4
-   Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
+   Priority: Medium
+   Complexity: C2
 
-   For platforms not running python, it could prove useful to provide them
-   with a native single binary command line tool.
+   connmanctl should implement agent prompting when started with a suitable
+   command line option. Agent mode should also be enabled when in interactive
+   mode.
 
 
 User Interface