README: Mention readline and command line client disable switch
[platform/upstream/connman.git] / README
1 Connection Manager
2 ******************
3
4 Copyright (C) 2007-2012  Intel Corporation. All rights reserved.
5
6
7 Functionality and features
8 ==========================
9
10 The following features are built-in into Connection Manager:
11         - Generic plugin infrastructure
12         - Device and network abstraction (with basic storage support)
13         - IPv4, IPv4-LL (link-local) and DHCP
14         - IPv6, DHCPv6 and 6to4 tunnels
15         - Advanced routing and DNS configuration
16         - Built-in DNS proxy and intelligent caching
17         - Built-in WISPr hotspot logins and portal detection
18         - Time and timezone configuration (manual and automatic with NTP)
19         - Proxy handling (manual and automatic with WPAD)
20         - Tethering support (USB, Bluetooth and WiFi AP mode)
21         - Detailed statistics handling (home and roaming)
22
23 Various plugins can be enabled for networking support:
24         - Ethernet plugin
25         - WiFi plugin with WEP40/WEP128 and WPA/WPA2 (personal and enterprise)
26         - Bluetooth plugin (using BlueZ)
27         - 2G/3G/4G plugin (using oFono)
28
29 Also plugins with additional features are available:
30         - Loopback interface setup
31         - PACrunner proxy handling
32         - PolicyKit authorization support
33
34
35 Compilation and installation
36 ============================
37
38 In order to compile Connection Manager you need following software packages:
39         - GCC compiler
40         - GLib library
41         - D-Bus library
42         - IP-Tables library
43         - GnuTLS library (optional)
44         - PolicyKit (optional)
45         - readline (command line client)
46
47 To configure run:
48         ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
49
50 Configure automatically searches for all required components and packages.
51
52 To compile and install run:
53         make && make install
54
55
56 Configuration and options
57 =========================
58
59 For a working system, certain configuration options need to be enabled:
60
61         --disable-ethernet
62
63                 Disable support for Ethernet network cards
64
65                 By default Ethernet technology support is built-in and
66                 enabled. This option can be used to build a small daemon
67                 for a specific system if Ethernet support is not required.
68
69         --disable-wifi
70
71                 Disable support for WiFi devices
72
73                 By default WiFi technology support is built-in and
74                 enabled. This option can be used to build a small daemon
75                 for a specific system if WiFi support is not required.
76
77                 It is safe to build a daemon with WiFi support and no
78                 running wpa_supplicant. The start of wpa_supplicant is
79                 automatically detected and only a runtime dependency. It
80                 is not needed to build ConnMan.
81
82         --disable-bluetooth
83
84                 Disable support for Bluetooth devices
85
86                 By default Bluetooth technology support is built-in and
87                 enabled. This option can be used to build a small daemon
88                 for a specific system if Bluetooth support is not required.
89
90                 It is safe to build a daemon with Bluetooth support and no
91                 running bluetoothd. The start of bluetoothd is automatically
92                 detected and only a runtime dependency. It is not needed to
93                 build ConnMan.
94
95         --disable-ofono
96
97                 Disable support for cellular 2G/3G/4G devices
98
99                 By default oFono technology support is built-in and
100                 enabled. This option can be used to build a small daemon
101                 for a specific system where oFono is not used.
102
103                 It is safe to build a daemon with oFono support and no
104                 running ofonod. That start of ofonod is automatically
105                 detected and only a runtime dependency. It is not needed to
106                 build ConnMan.
107
108         --disable-dundee
109
110                 Disable support for Bluetooth DUN devices
111
112                 By default Bluetooth DUN technology (dundee) support is
113                 built-in and enabled. This option can be used to build a
114                 small daemon for a specific system where dundee is not used.
115
116                 It is safe to build a daemon with dundee support and no
117                 running dundee. That start of dundee is automatically
118                 detected and only a runtime dependency. It is not needed to
119                 build ConnMan.
120
121         --disable-pacrunner
122
123                 Disable support for PACrunner proxy handling
124
125                 By default PACrunner support is built-in and enabled. This
126                 option can be used to build a small daemon for a specific
127                 system where PACrunner is not used.
128
129                 It is safe to build a daemon with PACrunner support and no
130                 pacrunner daemon. It will detect and start a PACrunner
131                 process if needed at runtime. The presence is not needed
132                 to build ConnMan.
133
134         --disable-loopback
135
136                 Disable setup of loopback device
137
138                 For distributions with a really minimal init system and no
139                 networking scripts this can take care of setting up the
140                 loopback device and enabling it.
141
142                 It is safe to leave this selected even if networking
143                 scripts are in place. It detects an already configured
144                 loopback device and leaves it as it is.
145
146         --disable-wispr
147
148                 Disable support for WISPr hotspot logins
149
150                 For systems with really minimal memory requirements, this
151                 will disable the support for WISPr hotspot logins. The code
152                 for WISPr will be still compiled into the daemon, but its
153                 requirement on GnuTLS for secure connections will be lifted.
154
155                 The missing GnuTLS support shrinks the memory requirements
156                 by about 30% and for systems that are more stationary and do
157                 not log into hotspots this might be a better trade off.
158
159                 Disabling WISPr support is not disabling the portal detection
160                 support. A portal will still be detected, but instead of being
161                 asked for login credentials, the request for a browser session
162                 will be made through the agent.
163
164         --enable-polkit
165
166                 Enable support for PolicyKit authorization
167
168                 This allows to check every D-Bus access against a security
169                 policy and so restrict access to certain functionality.
170
171         --enable-nmcompat
172
173                 Enable support for NetworkManager compatibility interfaces
174
175                 This allows to expose a minimal set of NetworkManager
176                 interfaces. It is useful for systems with applications
177                 written to use NetworkManager to detect online/offline
178                 status and have not yet been converted to use ConnMan.
179
180         --disable-client
181
182                 Disable support for the command line client
183
184                 By default the command line client is enabled and uses the
185                 readline library. For specific systems where ConnMan is
186                 configured by other means, the command line client can be
187                 disabled and the dependency on readline is removed.
188
189
190 wpa_supplicant configuration
191 ============================
192
193 In order to get wpa_supplicant and Connection Manager working properly
194 together you should edit wpa_supplicant .config file and set:
195
196 CONFIG_WPS=y
197 CONFIG_AP=y
198 CONFIG_CTRL_IFACE_DBUS_NEW=y
199
200 and, add:
201
202 CONFIG_BGSCAN_SIMPLE=y
203
204 This last option will enable the support of background scanning while being
205 connected, which is necessary when roaming on wifi.
206
207 It is recommended to use wpa_supplicant 0.8.x or 1.x or later.
208
209
210 VPN
211 ===
212
213 In order to compile pptp and l2tp VPN plugins, you need ppp development
214 package.
215
216 To run l2tp you will need
217         - xl2tpd, http://www.xelerance.com/services/software/xl2tpd
218
219 To run pptp you will need
220         - pptp client, http://pptpclient.sourceforge.net
221
222 Both l2tp and pptp also need pppd.
223
224
225 OpenVPN
226 =======
227
228 Up to version 2.2 of OpenVPN, pushing additional routes from the
229 server will not always work. Some of the symptons are that additional
230 routes will not be set by ConnMan if the uplink is a cellular
231 network. While the same setup works well for a WiFi or ethernet
232 uplink.
233
234
235 Information
236 ===========
237
238 Mailing list:
239         connman@connman.net
240
241 For additional information about the project visit ConnMan web site:
242         http://www.connman.net