Priority: Low
Complexity: C8
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
-- DHCP lib server
+- Session API implementation
Priority: High
Complexity: C4
- Owner: Martin Xu <martin.xu@intel.com>
-
-
-- On demand connection
-
- Priority: Medium
- Complexity: C4
+ Owner: Daniel Wagner <daniel.wagner@bmw-carit.de>
Owner: Samuel Ortiz <sameo@linux.intel.com>
- 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.
+ 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
+
-- Avahi-zeroconf
+- WiSPR support
Priority: Medium
Complexity: C4
+ Owner: Marcel Holtmann <marcel@holtmann.org>
- The IPv4 Link Local part should be integrated into DHCP-lib.
-
-- OpenVPN
-
- Priority: Low
- Complexity: C2
+ Based on the portal detection parsing results, and provisioned
+ credentials, ConnMan should be able to initiate a WiSPR authentication.
-- VPNc
+- DNS caching
Priority: Low
- Complexity: C2
+ Complexity: C4
+ A simple initial implementation would see ConnMan's dnsproxy
+ caching the DNS record based on their TTL.
-- iptables wrapper
- Priority: High
+- Power management
+
+ Priority: Medium
Complexity: C4
Owner: Samuel Ortiz <sameo@linux.intel.com>
- ConnMan needs to be able to set iptables rules and tables for both
- tethering and on demand connection.
- The main idea is to define an internal API for talking to the
- netfilter socket in order to set our tables and rules. Being in
- sync with the actual iptables library might be problematic.
- A less elegant solution would be a process based one, that would
- simply call the iptables executable.
+ 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.
-- Tethering
+
+- IPv6 gateway handling
Priority: Medium
- Complexity: C8
- Owner: Marcel Holtmann <marcel@holtmann.org>
- Dependencies: Core:iptables wrapper
- Dependencies: Core:DHCP lib server
+ Complexity: C4
- Bluetooth, USB and WiFi tethering.
- The tethering framework would typically allow sharing the 3G data
- link between WiFi, Bluetooth or USB clients.
- A bridge needs to be setup and all tethering connections are added
- to it. A DHCP server and a DNS proxy will be running on the bridge.
- Then IP forwarding and masquerading will be set between the default
- service and the bridge interface.
+ 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.
-- Agent callbacks
+- IP ranges allocation and check
- Priority: Medium
+ 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.
-- pacrunner
- Priority: High
- Complexity: C4
- Owner: Mohamed Abbas <mohamed.abbas@intel.com>
-
- pacrunner is a standalone daemon that downloads and interpret PAC
- files through a JavaScript interpreter. Once the interpretation is
- done, pacrunner is able to associate a proxy with an URL.
- pacrunner D-Bus interface exports a configuration API for passing
- it the PAC URLs. It also provide a FindProxyForURL() API for
- application to know which proxies to use.
- ConnMan will use pacrunner for both auto and manual proxy
- configurations. Then applications should talk to pacrunner (through
- libproxy for example) to find the right proxies.
- ConnMan will also use the FindProxyForURL() pacruner API for a more
- stable and accurate online detection code.
+- Personal firewall
+ Priority: Low
+ Complexity: C8
-- Moving DNS proxy code to ConnMan core
+ Extend the iptables code and provide a D-Bus API for personal firewalling.
- 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.
+- PACRunner extensions
+ Priority: Low
+ Complexity: C4
-WiFi
-====
+ Support more URI schemes, support multiple connections, tighter
+ security integration.
-- WPS
- Priority: Low
- Complexity: C2
- Dependencies: Core:Agent callbacks
+WiFi
+====
- Ad-Hoc support
Priority: Medium
Complexity: C2
- Dependencies: Core:Avahi-zeroconf
+ Owner: Samuel Ortiz <sameo@linux.intel.com>
- Fast Connect
Priority: Low
Complexity: C4
- Dependencies: WiFi:libsupplicant
Owner: Samuel Ortiz <sameo@linux.intel.com>
through its pcsc-lite API.
-- EAP-Fast
+- EAP-FAST
Priority: Low
Complexity: C1
- Owner: Samuel Ortiz <sameo@linux.intel.com>
+ Owner: Henri Bragge <henri.bragge@ixonos.com>
- EAP-GTC
Priority: Low
Complexity: C1
- Owner: Samuel Ortiz <sameo@linux.intel.com>
+ Owner: Henri Bragge <henri.bragge@ixonos.com>
- WiFi p2p
Complexity: C2
-- WiFi CRDA setting through 3G country
+
+Bluetooth
+=========
+
+- DUN client
+
+ Priority: Low
+ Complexity: C4
+
+
+
+Cellular
+========
+
+
+VPN
+===
+
+- l2tp support
Priority: Low
Complexity: C2
- Owner: Samuel Ortiz <sameo@linux.intel.com>
+ Owner: Mohamed Abbas <mohamed.abbas@intel.com>
- Setting the 802.11 country based on the 3G MNC/MCC.
+- pptp support
-Bluetooth
-=========
+ Priority: Low
+ Complexity: C2
+ Owner: Mohamed Abbas <mohamed.abbas@intel.com>
-- DUN client
+
+- IPsec
Priority: Low
Complexity: C4
-- DUN server
+- Split tunnelling
Priority: Low
- Complexity: C4
+ 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.