Core
====
-- connman_element removal
-
- Priority: Low
- Complexity: C8
-
-
-- DHCP lib
-
- Priority: High
- Complexity: C8
- Owner: Martin Xu <martin.xu@intel.com>
-
-
-- IPv6
+- Session API implementation
Priority: High
Complexity: C4
- Dependencies: Core:DHCP Lib
- Owner: Martin Xu <martin.xu@intel.com>
-
+ Owner: Daniel Wagner <daniel.wagner@bmw-carit.de>
+ Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
-- On demand connection
-
- Priority: Medium
- Complexity: C4
- Owner: Samuel Ortiz <sameo@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
- With on demand connection applications get connectivity access
- simply by trying to reach the network. They don't need to
- specifically request for a service connection, but ConnMan
- establishes it on their behalf.
- This feature counter part is idle disconnect. ConnMan needs to be
- able to close the on demand established connections by monitoring
- the link activity. This requires kernel support with e.g. the
- netfilter IDLETIMER target.
-- Avahi-zeroconf
+- DNS caching
- Priority: Medium
+ Priority: Low
Complexity: C4
+ A simple initial implementation would see ConnMan's dnsproxy
+ caching the DNS record based on their TTL.
-- VPN service
- Priority: Medium
+- IP ranges allocation and check
+
+ Priority: High
Complexity: C2
+ Guillaume Zajac <guillaume.zajac@linux.intel.com>
- Create a service for every VPN and link it to the topmost one for
- now.
- The default route should be set accordingly when UIs move the
- topmost service up and down.
+ For both tethering and private networks, but also to detect invalid
+ static IP configurations, we need to have a core IP range layer
+ that manages all currently used IP blocks.
-- OpenVPN
+- Personal firewall
Priority: Low
- Complexity: C2
+ 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.
-- VPNc
+- PACRunner extensions
Priority: Low
- Complexity: C2
+ Complexity: C4
+ Support more URI schemes, support multiple connections, tighter
+ security integration.
-- Tethering
- Priority: Medium
- Complexity: C8
- Owner: Marcel Holtmann <marcel@holtmann.org>
+WiFi
+====
-- WPAD - Web Proxy Autodiscovery Protocol
+- EAP-AKA/SIM
Priority: Medium
Complexity: C2
- Owner: Marcel Holtmann <marcel@holtmann.org>
-
-
-- Agent callbacks
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
- 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.
-- HTTP proxy
+- EAP-FAST
- Priority: Medium
+ Priority: Low
Complexity: C1
-- PAC export
+- Wireless background scan
- Priority: Low
- Complexity: C1
- Owner: Marcel Holtmann <marcel@holtmann.org>
+ Priority: Medium
+ Complexity: C4
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
- When receiving an automatic configuration URL, we should set the
- service proxy dictionary accordingly (method and URL).
+ 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.
-- Moving DNS proxy code to ConnMan core
+- WiFi p2p
Priority: Medium
Complexity: C2
- Supporting DNS proxy or resolv.conf direct editing seems more than
- plenty as far as resolving is concerned. So the idea is to move the
- dnsproxy plugin code to ConnMan core and have an additional command
- line option in case one would like to stick with the current
- resolver.c code for editing resolv.conf.
-WiFi
-====
+Bluetooth
+=========
-- WPS
+- DUN client
Priority: Low
- Complexity: C2
- Dependencies: Core:Agent callbacks
+ Complexity: C4
+ Owner: Mario Tokarz <mario.tokarz@bmw-carit.de>
-- Ad-Hoc support
- Priority: Medium
- Complexity: C2
- Dependencies: Core:Avahi-zeroconf
+Cellular
+========
-- libsupplicant
+VPN
+===
+
+- IPsec
Priority: Medium
Complexity: C4
- Owner: Samuel Ortiz <sameo@linux.intel.com>
+ Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
-- Fast Connect
+
+- Split tunnelling
Priority: Low
- Complexity: C4
- Dependencies: WiFi:libsupplicant
- Owner: Samuel Ortiz <sameo@linux.intel.com>
+ Complexity: C8
+ Dependencies: Core:Private networks
+ Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
+
+ The current VPN support puts the VPN interface at the top of the
+ service list, giving VPNs the default route. When doing split
+ tunneling, the system routes packet to the VPN interface for
+ private IPs, while going through the default interface for the rest
+ of the traffic.
+
-- TTLS EAP support
+Tools
+=====
+
+- Command line tool
Priority: Low
- Complexity: C2
+ Complexity: C4
+ Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
+ For platforms not running python, it could prove useful to provide them
+ with a native single binary command line tool.
-Bluetooth
-=========
-- DUN client
+User Interface
+==============
+
+- GNOME3 UI
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.