+Background
+==========
- o Support for WPA/WPA2 Enterprise WiFi authentication
+- Priority scale: High, Medium and Low
- With wpa_supplicant the support for WPA/WPA2 Enterprise is already
- present, but it needs properly hooked up. This involves a correct
- security architecture since it uses personalized credentials.
+- Complexity scale: C1, C2, C4 and C8.
+ The complexity scale is exponential, with complexity 1 being the
+ lowest complexity. Complexity is a function of both task 'complexity'
+ and task 'scope'.
- o Support for multiple profiles
+Core
+====
- Currently only one active profile (the default profile) is supported.
+- connman_element removal
- o Support for static IPv4 configuration
+ Priority: Low
+ Complexity: C8
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
- This is in theory possible, but no D-Bus API has been defined on how
- to configure it.
- o Support for interface statistics
+- Session API implementation
- Information about carrier speed etc. should be exported.
+ Priority: High
+ Complexity: C4
+ Owner: Daniel Wagner <daniel.wagner@bmw-carit.de>
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
- o Support for handling RFKILL events
+ 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
- The RFKILL events are received via the udev infrastructure, but not
- acted upon. Current problem is to assign the event to the correct
- physical device. In case of platform RFKILL switches this is a real
- problem and not solved yet.
+- WiSPR support
+
+ Priority: Medium
+ Complexity: C4
+ Owner: Marcel Holtmann <marcel@holtmann.org>
+
+ Based on the portal detection parsing results, and provisioned
+ credentials, ConnMan should be able to initiate a WiSPR authentication.
+
+
+- DNS caching
+
+ Priority: Low
+ Complexity: C4
+
+ A simple initial implementation would see ConnMan's dnsproxy
+ caching the DNS record based on their TTL.
+
+
+- Power management
+
+ Priority: Medium
+ Complexity: C4
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
+
+ Implement a simple device pm hook that ConnMan's core code would
+ use whenever it decides to put devices in power save mode. Although
+ the kernel runtime power management code should take care of that,
+ not all driver (especially WiFi ones) implement runtime PM hooks.
+
+
+- IPv6 gateway handling
+
+ Priority: Medium
+ Complexity: C4
+
+ We should be able to switch between IPv6 only services and thus
+ change the default IPv6 gateway on the fly. For that we need to
+ improve the connection.c code to properly handle IPv6 gateways.
+
+
+- IP ranges allocation and check
+
+ Priority: High
+ Complexity: C2
+
+ 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.
+
+
+- Personal firewall
+
+ Priority: Low
+ Complexity: C8
+
+ Extend the iptables code and provide a D-Bus API for personal firewalling.
+
+
+- PACRunner extensions
+
+ Priority: Low
+ Complexity: C4
+
+ Support more URI schemes, support multiple connections, tighter
+ security integration.
+
+
+
+WiFi
+====
+
+- Ad-Hoc support
+
+ Priority: Medium
+ Complexity: C2
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
+
+
+- Fast Connect
+
+ Priority: Low
+ Complexity: C4
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
+
+
+- EAP-AKA/SIM
+
+ Priority: Medium
+ 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.
+
+
+- EAP-FAST
+
+ Priority: Low
+ Complexity: C1
+ Owner: Henri Bragge <henri.bragge@ixonos.com>
+
+
+- EAP-GTC
+
+ Priority: Low
+ Complexity: C1
+ Owner: Henri Bragge <henri.bragge@ixonos.com>
+
+
+- WiFi p2p
+
+ Priority: Medium
+ Complexity: C2
+
+
+
+Bluetooth
+=========
+
+- DUN client
+
+ Priority: Low
+ Complexity: C4
+
+
+
+Cellular
+========
+
+
+VPN
+===
+
+- l2tp support
+
+ Priority: Low
+ Complexity: C2
+ Owner: Mohamed Abbas <mohamed.abbas@intel.com>
+
+
+- pptp support
+
+ Priority: Low
+ Complexity: C2
+ Owner: Mohamed Abbas <mohamed.abbas@intel.com>
+
+
+- IPsec
+
+ Priority: Low
+ Complexity: C4
+
+
+- Split tunnelling
+
+ Priority: Low
+ Complexity: C8
+ Dependencies: Core:Private networks
+
+ 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.