61876accb45e7f52f26ea305a021375ac792cde9
[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         - GnuTLS library
43         - IP-Tables library
44         - PolicyKit (optional)
45
46 To configure run:
47         ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
48
49 Configure automatically searches for all required components and packages.
50
51 To compile and install run:
52         make && make install
53
54
55 VPN
56 ===
57
58 In order to compile pptp and l2tp VPN plugins, you need ppp development
59 package.
60
61 To run l2tp you will need
62         - xl2tpd, http://www.xelerance.com/services/software/xl2tpd
63
64 To run pptp you will need
65         - pptp client, http://pptpclient.sourceforge.net
66
67 Both l2tp and pptp also need pppd.
68
69
70 Configuration and options
71 =========================
72
73 For a working system, certain configuration options need to be enabled:
74
75         --disable-ethernet
76
77                 Disable support for Ethernet network cards
78
79                 By default Ethernet technology support is built-in and
80                 enabled. This option can be used to build a small daemon
81                 for a specific system if Ethernet support is not required.
82
83         --disable-wifi
84
85                 Disable support for WiFi devices
86
87                 By default WiFi technology support is built-in and
88                 enabled. This option can be used to build a small daemon
89                 for a specific system if WiFi support is not required.
90
91                 It is safe to build a daemon with WiFi support and no
92                 running wpa_supplicant. The start of wpa_supplicant is
93                 automatically detected and only a runtime dependency. It
94                 is not needed to build ConnMan.
95
96         --disable-bluetooth
97
98                 Disable support for Bluetooth devices
99
100                 By default Bluetooth technology support is built-in and
101                 enabled. This option can be used to build a small daemon
102                 for a specific system if Bluetooth support is not required.
103
104                 It is safe to build a daemon with Bluetooth support and no
105                 running bluetoothd. The start of bluetoothd is automatically
106                 detected and only a runtime depedency. It is not needed to
107                 build ConnMan.
108
109         --disable-ofono
110
111                 Disable support for cellular 2G/3G/4G devices
112
113                 By default oFono technology support is built-in and
114                 enabled. This option can be used to build a small daemon
115                 for a specific system where oFono is not used.
116
117                 It is safe to build a daemon with oFono support and no
118                 running ofonod. That start of ofonod is automatically
119                 detected and only a runtime dependecy. it is not needed to
120                 build ConnMan.
121
122         --disable-pacrunner
123
124                 Disable support for PACrunner proxy handling
125
126                 By default PACrunner support is built-in and enabled. This
127                 option can be used to build a small daemon for a specific
128                 system where PACrunner is not used.
129
130                 It is safe to build a daemon with PACrunner support and no
131                 pacrunner daemon. It will detect and start a PACrunner
132                 process if needed at runtime. The presence is not needed
133                 to build ConnMan.
134
135         --disable-loopback
136
137                 Disable setup of loopback device
138
139                 For distributions with a really minimal init system and no
140                 networking scripts this can take care of setting up the
141                 loopback device and enabling it.
142
143                 It is safe to leave this selected even if networking
144                 scripts are in place. It detects an already configured
145                 loopback device and leaves it as it is.
146
147         --enable-polkit
148
149                 Enable support for PolicyKit authorization
150
151                 This allows to check every D-Bus access against a security
152                 policy and so restrict access to certain functionality.
153
154         --enable-nmcompat
155
156                 Enable support for NetworkManager compatibility interfaces
157
158                 This allows to expose a minimal set of NetworkManager
159                 interfaces. It is useful for systems with applications
160                 written to use NetworkManager to detect online/offline
161                 status and have not yet been converted to use ConnMan.
162
163
164 wpa_supplicant configuration
165 ============================
166
167 In order to get wpa_supplicant and Connection Manager working properly
168 together you should edit wpa_supplicant .config file and set:
169
170 CONFIG_WPS=y
171 CONFIG_AP=y
172 CONFIG_CTRL_IFACE_DBUS_NEW=y
173
174 and, add:
175
176 CONFIG_BGSCAN_SIMPLE=y
177
178 This last option will enable the support of background scanning while being
179 connected, which is necessary when roaming on wifi.
180
181 It is recommended to use wpa_supplicant 0.8.x or 1.x or later.