TODO: Update
[platform/upstream/connman.git] / TODO
1 Background
2 ==========
3
4 - Priority scale: High, Medium and Low
5
6 - Complexity scale: C1, C2, C4 and C8.
7    The complexity scale is exponential, with complexity 1 being the
8    lowest complexity. Complexity is a function of both task 'complexity'
9    and task 'scope'.
10
11 Core
12 ====
13
14 - Session API implementation
15
16    Priority: High
17    Complexity: C4
18    Owner: Daniel Wagner <daniel.wagner@bmw-carit.de>
19    Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
20
21    The session API should provide a connection abstraction in order to
22    prioritize applications network accesses, prevent or allow network
23    and bearer roaming, or provide applications with a way to request
24    for periodic network connections. On-demand connections will be
25    implemented through this API as well.
26    See http://www.mail-archive.com/connman@connman.net/msg01653.html
27
28
29 - DNS caching
30
31    Priority: Low
32    Complexity: C4
33
34    A simple initial implementation would see ConnMan's dnsproxy
35    caching the DNS record based on their TTL.
36
37
38 - IP ranges allocation and check
39
40    Priority: High
41    Complexity: C2
42    Guillaume Zajac <guillaume.zajac@linux.intel.com>
43
44    For both tethering and private networks, but also to detect invalid
45    static IP configurations, we need to have a core IP range layer
46    that manages all currently used IP blocks.
47
48
49 - Personal firewall
50
51    Priority: Low
52    Complexity: C8
53    Owner: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
54
55    Discuss and implement a basic and safe firewalling strategy into
56    Connman. Provide a D-Bus API for personal firewalling.
57
58
59 - PACRunner extensions
60
61    Priority: Low
62    Complexity: C4
63
64    Support more URI schemes, support multiple connections, tighter
65    security integration.
66
67
68
69 WiFi
70 ====
71
72 - EAP-AKA/SIM
73
74    Priority: Medium
75    Complexity: C2
76    Owner: Samuel Ortiz <sameo@linux.intel.com>
77
78    This EAP is needed for SIM card based network authentication.
79    ConnMan here plays a minor role: Once wpa_supplicant is set up for
80    starting and EAP-AKA/SIM authentication, it will talk to a SIM card
81    through its pcsc-lite API.
82
83
84 - EAP-FAST
85
86    Priority: Low
87    Complexity: C1
88
89
90 - Wireless background scan
91
92    Priority: Medium
93    Complexity: C4
94    Owner: Samuel Ortiz <sameo@linux.intel.com>
95
96    While connected ConnMan should offload the background scanning to
97    wpa_supplicant. Wpa_supplicant allows for a fancy background scan
98    which frequency increases after the current connection signal level
99    drops below a defined threshold.
100    We should also be able to have wpa_supplicant do the background
101    scanning for us when we're not connected, if we have configured our
102    favorite networks.
103
104
105 - WiFi p2p
106
107    Priority: Medium
108    Complexity: C2
109
110
111
112 Bluetooth
113 =========
114
115 - DUN client
116
117    Priority: Low
118    Complexity: C4
119    Owner: Mario Tokarz <mario.tokarz@bmw-carit.de>
120
121
122
123 Cellular
124 ========
125
126
127 VPN
128 ===
129
130 - IPsec
131
132    Priority: Medium
133    Complexity: C4
134    Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
135
136
137 - Split tunnelling
138
139    Priority: Low
140    Complexity: C8
141    Dependencies: Core:Private networks
142    Owner: Jukka Rissanen <jukka.rissanen@linux.intel.com>
143
144    The current VPN support puts the VPN interface at the top of the
145    service list, giving VPNs the default route. When doing split
146    tunneling, the system routes packet to the VPN interface for
147    private IPs, while going through the default interface for the rest
148    of the traffic.
149
150
151 Tools
152 =====
153
154 - Command line tool
155
156    Priority: Low
157    Complexity: C4
158    Owner: Patrik Flykt <patrik.flykt@linux.intel.com>
159
160    For platforms not running python, it could prove useful to provide them
161    with a native single binary command line tool.
162
163
164 User Interface
165 ==============
166
167 - GNOME3 UI
168
169    Priority: Low
170    Complexity: C4
171    Owner: Alok Barsode <alok.barsode@linux.intel.com>
172
173    A GNOME3 shell user interface would make it easier for mainstream distros
174    users to use ConnMan.