Samuel Ortiz [Mon, 25 Oct 2010 14:08:06 +0000 (16:08 +0200)]
iptables-test: Initial command line parsing
The command line options are an iptables subset.
Samuel Ortiz [Fri, 22 Oct 2010 22:09:30 +0000 (00:09 +0200)]
iptables: Replace iptables-test program
The new iptables-test no longer links against the unstable libiptc
library. A link against libxtables is still necessary as the iptables
extensions are only registered against iptables through this library.
Not using it would mean replicating any of the extensions ConnMan could
potentially need.
Daniel Wagner [Fri, 22 Oct 2010 17:55:53 +0000 (13:55 -0400)]
Split openconnect into generic vpn and openconnect part
Daniel Wagner [Fri, 22 Oct 2010 17:55:52 +0000 (13:55 -0400)]
Add provider driver name accessor
Leena Gunda [Fri, 22 Oct 2010 09:53:39 +0000 (11:53 +0200)]
gsupplicant: Get all BSSs when scan is done
After a scan, all BSSs need to be refreshed and passed back to the device
layer or else the WiFi device networks list is emptied.
Fixes BMC#8324
Fixes BMC#8363
Marcel Holtmann [Fri, 22 Oct 2010 07:48:57 +0000 (09:48 +0200)]
Update AUTHORS file with new contributors
Leena Gunda [Thu, 21 Oct 2010 21:29:21 +0000 (23:29 +0200)]
wifi: Search for networks based on their identifier
Joey Lee [Thu, 21 Oct 2010 08:56:53 +0000 (10:56 +0200)]
device: Set element driver when probing a device driver
When a device shows up through rtnl before the device driver is created,
the device's element driver pointer will not be set.
The bug is not visible with built-in devices, it only appears with
removable ones or with those that are completely removed from the bus when
being rfkilled.
Tomasz Bursztyka [Mon, 18 Oct 2010 12:22:42 +0000 (15:22 +0300)]
Update pacrunner plugin to take care of all proxy methods
Tomasz Bursztyka [Mon, 18 Oct 2010 08:59:23 +0000 (11:59 +0300)]
Add proxy accessor function for services
Samuel Ortiz [Fri, 15 Oct 2010 13:27:52 +0000 (15:27 +0200)]
rtnl: Check for wireless extensions when missing DEVTYPE
Checking for wireless extensions is a bit more reliable than looking for
a potentially missing wireless directory.
Samuel Ortiz [Thu, 14 Oct 2010 22:36:20 +0000 (00:36 +0200)]
rtnl: Detect non cfg80211 based WiFi drivers
Those don't come with a proper uevent DEVTYPE label. ConnMan looks for
a sysfs wireless directory in that case.
Samuel Ortiz [Thu, 14 Oct 2010 13:43:58 +0000 (15:43 +0200)]
ipconfig: Do not call inet_network() with a NULL pointer
inet_network() segfaults when given a NULL pointer as an argument.
Luiz Augusto von Dentz [Wed, 13 Oct 2010 12:06:46 +0000 (15:06 +0300)]
gdbus: fix not handling bus disconnects
We where not dispatching data when a bus disconnects which cause
Disconnected signal to not be processed and thus causing the process to
either not exit or to not trigger callbacks registered with
g_dbus_set_disconnect_function.
To fix this now we always schedule a dispatch which will make sure data
still not processed will make its way to the proper handlers even if
disconnected.
Daniel Wagner [Wed, 13 Oct 2010 07:26:46 +0000 (09:26 +0200)]
Merge stats_create into __connman_stats_service_register
This avoid doing an hash table lookup from
__connman_stats_service_register() right after inserting the stats_file
pointer into it.
Daniel Wagner [Tue, 12 Oct 2010 13:36:23 +0000 (15:36 +0200)]
Update stats-ringbuffer-dump tool
Adapt stats-ringbuffer-dump to the new file format.
Daniel Wagner [Tue, 12 Oct 2010 13:36:22 +0000 (15:36 +0200)]
Merge home and roaming stats file
Instead creating for each service two stats file (home and roaming), just
create one. Each entry in the file is marked with a flag (home or roaming).
The file header contains two additional index which points to the current
home or roaming entry.
Now we have a nice history in the ring buffer.
Additionally this reduces the number of open files by half.
Jussi Kukkonen [Tue, 12 Oct 2010 13:58:20 +0000 (16:58 +0300)]
docs: Update Service State and LoginRequired docs
Marcel Holtmann [Tue, 12 Oct 2010 08:57:10 +0000 (11:57 +0300)]
Update AUTHORS list
Tomasz Bursztyka [Mon, 11 Oct 2010 13:57:07 +0000 (16:57 +0300)]
Added support for "auto" and "manual" proxy.
Cristiano Fernandes [Mon, 11 Oct 2010 22:35:38 +0000 (00:35 +0200)]
Using netlink to set and clear ipv6 addresses
Cristiano Fernandes [Mon, 11 Oct 2010 22:34:39 +0000 (00:34 +0200)]
Using netlink to set and clear ipv4 addresses
Using netlink to set and clear ipv4 configuration avoids connman from
sending multiple IPv4 signals through DBus with the wrong configuration,
since the configuration are set all at once triggering only one netlink
event.
Daniel Wagner [Mon, 11 Oct 2010 11:58:02 +0000 (13:58 +0200)]
Open stats file late and close them early
Instead of opening stats file when a service is created,
defer it to the point where either __connman_ipconfig_enable
or __connman_ipconfig_disable is called.
Kalle Valo [Mon, 11 Oct 2010 12:12:10 +0000 (15:12 +0300)]
simple-agent: update to new agent api
simple-agent was still using the old agent api and didn't work anymore.
Update it to use the new api.
Tomasz Bursztyka [Mon, 11 Oct 2010 07:09:16 +0000 (10:09 +0300)]
Added a test tool for proxy configuration (set-proxy)
Daniel Wagner [Mon, 11 Oct 2010 09:17:03 +0000 (11:17 +0200)]
Initialize struct stat in error case correctly
In the case stat failes to gather information
about the log file, it has to initialize struct
stat. Otherwise, we will set a random file size.
Daniel Wagner [Fri, 8 Oct 2010 15:31:48 +0000 (17:31 +0200)]
Remove unnecessary pre initializing
Samuel Ortiz [Fri, 8 Oct 2010 21:36:44 +0000 (23:36 +0200)]
Release counter and session watches whe unregistering
Releasing the watches from the hash table freeing routines lead to double
freeing the interface data watch pointer in case the owner would disappear
before unregistering.
Samuel Ortiz [Fri, 8 Oct 2010 16:59:16 +0000 (18:59 +0200)]
inet: Remove __connman_inet_get_device_type
The routine is replaced by __connman_rtnl_get_device_type.
Samuel Ortiz [Fri, 8 Oct 2010 16:53:08 +0000 (18:53 +0200)]
rtnl: Export device type detection routine
Since ConnMan is now relying only on rtnl for device detection, the rtnl.c
code should be responsible for providing device types. And this is done by
parsing the device uevent DEVTYPE label.
Samuel Ortiz [Fri, 8 Oct 2010 15:23:38 +0000 (17:23 +0200)]
device: Set blocked field depending on the technology status
If a device is created before any rfkill event is received, it will not
be blocked. Otherwise, it will mirror the technology blocked status.
Samuel Ortiz [Fri, 8 Oct 2010 15:22:57 +0000 (17:22 +0200)]
technology: Add technology blocked field getter
Samuel Ortiz [Fri, 8 Oct 2010 13:52:45 +0000 (15:52 +0200)]
technology: Do not update a technology blocked counter when unchanged
Some buggy rfkill driver send rfkill CHANGE events while the actual rfkill
status has not changed. ConnMan should just ignore those.
Tomasz Bursztyka [Fri, 8 Oct 2010 09:10:29 +0000 (12:10 +0300)]
Small proxy settings rewrite in service API documentation.
leena.gunda@wipro.com [Wed, 6 Oct 2010 13:31:12 +0000 (19:01 +0530)]
Display IPv4/IPv6 gateway in PropertyChanged signal
ConnMan should emit the IP PropertyChanged signal when the IP is set but
also when a route for the device is set.
Fixes BMC#7895
Samuel Ortiz [Thu, 7 Oct 2010 18:10:11 +0000 (20:10 +0200)]
rtnl: Remove unused operstate callback
Samuel Ortiz [Thu, 7 Oct 2010 18:03:48 +0000 (20:03 +0200)]
technology: Block devices based on technology rfkill status
Devices are blocked when their technology is blocked, i.e. all its devices
are rfkilled. They all move back to the unblocked state when all the
technology devices are no longer rfkilled.
Samuel Ortiz [Wed, 6 Oct 2010 16:01:31 +0000 (18:01 +0200)]
technology: Use allocated index for rfkill hash tables keys
Samuel Ortiz [Wed, 6 Oct 2010 09:57:24 +0000 (11:57 +0200)]
technology: Track rfkill blocked state
Tomasz Bursztyka [Thu, 7 Oct 2010 07:40:05 +0000 (10:40 +0300)]
Pretty printers for proxy settings in various test tool.
Marcel Holtmann [Thu, 7 Oct 2010 11:23:44 +0000 (13:23 +0200)]
Another update to proxy configuration API
Tomasz Bursztyka [Thu, 7 Oct 2010 07:40:01 +0000 (10:40 +0300)]
Updating service API documentation about proxy support.
Marcel Holtmann [Wed, 6 Oct 2010 06:38:57 +0000 (08:38 +0200)]
Use nl80211/cfg80211 WiFi configuration by default
Marcel Holtmann [Wed, 6 Oct 2010 06:38:39 +0000 (08:38 +0200)]
Add interface name checks for Virtual Machine Manager
Marcel Holtmann [Mon, 4 Oct 2010 16:08:49 +0000 (18:08 +0200)]
Move GResolv source file sinto GWeb directory
Pekka Pessi [Thu, 23 Sep 2010 19:44:09 +0000 (22:44 +0300)]
rtnl: support isimodem GPRS connections
The isimodem GPRS connections (PHONET_PIPEs) have ARP header type 821.
Pekka Pessi [Fri, 24 Sep 2010 14:22:54 +0000 (17:22 +0300)]
Support -p and -P options with list of plugins
Marcel Holtmann [Mon, 4 Oct 2010 12:36:26 +0000 (14:36 +0200)]
Remove unused __connman_detect_get_blocked function
Marcel Holtmann [Mon, 4 Oct 2010 12:31:58 +0000 (14:31 +0200)]
Remove unused __connman_detect_start function
Marcel Holtmann [Mon, 4 Oct 2010 12:22:18 +0000 (14:22 +0200)]
Remove dependency on udev
Marcel Holtmann [Sun, 3 Oct 2010 09:55:47 +0000 (11:55 +0200)]
Add information if scan has been requested
Marcel Holtmann [Sat, 2 Oct 2010 18:20:19 +0000 (20:20 +0200)]
Add support for systemd service configuration
Marcel Holtmann [Sat, 2 Oct 2010 15:58:45 +0000 (17:58 +0200)]
Add support for installing D-Bus autostart configuration
Marcel Holtmann [Sat, 2 Oct 2010 06:45:00 +0000 (08:45 +0200)]
Release 0.62
Marcel Holtmann [Sat, 2 Oct 2010 05:25:56 +0000 (07:25 +0200)]
Add support for handling DHCP timerserver values from DHCP
Marcel Holtmann [Sat, 2 Oct 2010 05:25:16 +0000 (07:25 +0200)]
Print debug information about DHCP timeserver value if available
Samuel Ortiz [Thu, 30 Sep 2010 22:07:19 +0000 (00:07 +0200)]
TODO update
Samuel Ortiz [Thu, 30 Sep 2010 16:20:58 +0000 (18:20 +0200)]
supplicant: Do not reset passphrase when asociation fails
Resetting the passphrase is redundant as the service will present a
"connect-failed" error string through D-Bus whenever association fails.
Samuel Ortiz [Thu, 30 Sep 2010 14:39:41 +0000 (16:39 +0200)]
supplicant: No need for actively remove network upon disconnection
When being disconnected, ConnMan should just wait for wpa_supplicant scan
results instead of trying to be smart about if the disconnected AP is still
around or not.
wpa_supplicant will try to roam and run periodic scan for that purpose. If
the AP is missing after 2 scans, it's removed from the list, and ConnMan
then removes it from the enabled networks.
Fixes BMC#7730 BMC#7734
Samuel Ortiz [Thu, 30 Sep 2010 14:33:40 +0000 (16:33 +0200)]
Set WiFi task scanning flag when receiving a Scanning event
wpa_supplicant can start scanning without ConnMan telling it to do so (in
the roaming case for example), and thus the task scanning state should be
updated accordingly in that case.
Without this fix the device network list is not refreshed appropriately.
Samuel Ortiz [Thu, 30 Sep 2010 14:18:56 +0000 (16:18 +0200)]
Implement WiFi network driver remove hook
Samuel Ortiz [Wed, 29 Sep 2010 22:41:30 +0000 (00:41 +0200)]
TODO update
Samuel Ortiz [Wed, 29 Sep 2010 17:47:41 +0000 (19:47 +0200)]
Reset WiFi passphrase if association or WPA handshake fails
Samuel Ortiz [Wed, 29 Sep 2010 17:29:22 +0000 (19:29 +0200)]
Define connman_network_set_passphrase
This is needed for the supplicant plugin to reset a service passphrase
when authentication fails.
Samuel Ortiz [Wed, 29 Sep 2010 17:19:14 +0000 (19:19 +0200)]
Export __connman_service_set_passphrase() to ConnMan core
Samuel Ortiz [Tue, 28 Sep 2010 10:43:07 +0000 (12:43 +0200)]
RemoveProvider argument is an object path
Samuel Ortiz [Mon, 27 Sep 2010 23:36:32 +0000 (01:36 +0200)]
Remove providers based on their VPN service path
Samuel Ortiz [Mon, 27 Sep 2010 22:59:52 +0000 (00:59 +0200)]
Set device scanning state to false from the scan callback
If scan fails, the scan callback is called.
When scan results are available, it is called as well.
In both cases, the device is no longer scanning when it's called.
Kalle Valo [Mon, 27 Sep 2010 21:44:34 +0000 (00:44 +0300)]
wifi: use const pointer for a ssid buffer
A pointer for an ssid buffer was incorrectly stored to a non-const pointer.
After fixing this a unneeded cast can be removed.
Kalle Valo [Mon, 27 Sep 2010 21:44:28 +0000 (00:44 +0300)]
wifi: remove unneeded casts
Kalle Valo [Mon, 27 Sep 2010 21:44:21 +0000 (00:44 +0300)]
gsupplicant: fix return value of g_supplicant_interface_get_data()
g_supplicant_interface_get_data() was returning a const void pointer even
though the setter took a non-const pointer. Change get_data() to return
non-const as well.
Kalle Valo [Mon, 27 Sep 2010 21:44:14 +0000 (00:44 +0300)]
gsupplicant: use term managed in object path
gsupplicant uses term "infra" instead of "managed" used by the old
wifi plugin. This forced connman to create a new service instead of using
the stored. For example, wifi_0026b6675606_76616c6f_managed_psk
vs wifi_0026b6675606_76616c6f_infra_psk.
Convert gsupplicant to use term "managed". That way old services work with
the new plugin.
Samuel Ortiz [Mon, 27 Sep 2010 22:00:18 +0000 (00:00 +0200)]
Set the network associating state to false when disconnecting
The gsupplicant based plugin is not setting the network state appropriately
and can trigger an infinite loop between connman_network_set_connected()
and network_disconnect.
Kalle Valo [Mon, 27 Sep 2010 18:38:55 +0000 (21:38 +0300)]
wifi: use connman options to get the wpasupplicant driver
The new gsupplicant based wifi plugin doesn't support -c command-line
switch to make it possible to choose between wext, nl80211 or both. Add
support for this by using connman_option_get_string().
Martin Xu [Sun, 26 Sep 2010 05:48:37 +0000 (13:48 +0800)]
Check device before call connman_device_set_string at ofono plugin
Fixes BMC#6681
Marcel Holtmann [Sun, 26 Sep 2010 08:36:39 +0000 (17:36 +0900)]
udev: Print error when udev support is not available and not disabled
Samuel Ortiz [Fri, 24 Sep 2010 22:16:26 +0000 (00:16 +0200)]
Remove EDNS0 option
Many routers block EDNS0 DNS requests and that leads to a non working
DNS resolver for ConnMan. This option can now be removed and have dnsproxy
fallling back to DNS over TCP for big DNS replies.
The optimal solution would be to keep this option and disable it on the fly
for nameserver paths rejecting EDNS0 packets. Unfortunately ConnMan is not
able to detect those paths at the moment and so simply falls back to DNS
over TCP.
Samuel Ortiz [Fri, 24 Sep 2010 21:59:38 +0000 (23:59 +0200)]
Add support for domain name concatenation on TCP DNS requests
Samuel Ortiz [Fri, 24 Sep 2010 18:48:33 +0000 (20:48 +0200)]
Define protocol_offset() for DNS transport layer offset
Samuel Ortiz [Fri, 24 Sep 2010 18:42:31 +0000 (20:42 +0200)]
Do not access the DNS request buffer if it's NULL
Samuel Ortiz [Fri, 24 Sep 2010 18:39:51 +0000 (20:39 +0200)]
Close TCP DNS connections once the reply is forwarded
This is still sub optimal as the ideal solution would be to keep the TCP
connection opened for a 20-30 seconds for the next DNS over TCP requests.
Samuel Ortiz [Fri, 24 Sep 2010 18:24:04 +0000 (20:24 +0200)]
Stop polling the nameserver TCP socket once we're done with it
Samuel Ortiz [Fri, 24 Sep 2010 16:13:35 +0000 (18:13 +0200)]
Send an error response when the DNS request times out
Samuel Ortiz [Fri, 24 Sep 2010 16:00:48 +0000 (18:00 +0200)]
Add a protocol field to the DNS request structure
This is cleaner than checking for the client socket value.
Samuel Ortiz [Fri, 24 Sep 2010 15:57:55 +0000 (17:57 +0200)]
Send SERVFAIL when nameservers are not listening on TCP port 53
Samuel Ortiz [Fri, 24 Sep 2010 15:33:01 +0000 (17:33 +0200)]
Fix DNS TCP buffer parsing copy paste error
Samuel Ortiz [Fri, 24 Sep 2010 15:18:34 +0000 (17:18 +0200)]
Remove the DNS TCP listener watch when the socket is closed
Samuel Ortiz [Fri, 24 Sep 2010 14:40:44 +0000 (16:40 +0200)]
Factorize dnsproxy listener creation code
Lot of the code was shared between between the TCP and UDP code paths.
Samuel Ortiz [Fri, 24 Sep 2010 14:09:31 +0000 (16:09 +0200)]
Initial DNS over TCP implementation for dnsproxy
Daniel Wagner [Thu, 23 Sep 2010 14:42:00 +0000 (16:42 +0200)]
Fix typo in stats_print_record
Daniel Wagner [Thu, 23 Sep 2010 14:04:36 +0000 (16:04 +0200)]
Fix "invalid file header"
Use stat before open the file to find out if the
file already exists. Only if file exists and
the header is invalid trigger connman_error
Daniel Wagner [Thu, 23 Sep 2010 11:25:18 +0000 (13:25 +0200)]
Put .data files into a separate directory
Lucio Maciel [Wed, 22 Sep 2010 17:54:32 +0000 (14:54 -0300)]
Support multiple interfaces on -i and -I cmdline option.
Support multiple comma-separeted interfaces for -i and -I
command line option. E.g.:
-i eth*,wlan*,ppp* or -I virbr*,usb*,ppp*
Mohamed Abbas [Wed, 22 Sep 2010 11:35:35 +0000 (04:35 -0700)]
Fix bug to remove vpn services when turning offline mode on
This patch will remove all vpn services on offline mode. It also
make sure it exits after releasing all resources.
Fixes BMC #6591
Samuel Ortiz [Wed, 22 Sep 2010 14:49:45 +0000 (16:49 +0200)]
Schedule delayed scan when being disconnected from an AP
When being disconnected from an AP, a delayed scan is scheduled to make
sure the AP is still there. wpa_supplicant removes a BSS from its bss list
when it disappears from the scan results twice in a row.
Fixes BCM #6831
Mohamed Abbas [Wed, 22 Sep 2010 10:25:09 +0000 (12:25 +0200)]
Fix ConnMan crash while disable wifi device
When calling unregister_network() ConnMan sets the network->device pointer
to NULL. That is fine with ESSIDs formed by 1 AP. Otherwise, the eventual
call to __connman_device_decrease_connections() leads to a crash as the
device pointer is NULL.
Fixes BMC #6772
Daniel Wagner [Wed, 22 Sep 2010 10:11:06 +0000 (12:11 +0200)]
Add statistics ring buffer analyze tool
This tool prints the statistic ring buffer.
Daniel Wagner [Tue, 21 Sep 2010 11:33:42 +0000 (13:33 +0200)]
Store stats information into separate files
Currently the statistic information is stored into the profile file.
This results in rewriting the whole file if connann_stats_save is
called. This results in too many disk I/Os for low power devices.
Furthermore, only the current value is stored. There is no way to
find out how many bytes have been transfered in the last month.
First, each service statistic is stored into a separate files under
/var/lib/connman having a *.data extension. This file contains fixed
sized records of stats counters and will be mmap into memory. It is
used like a ring buffer.
If the buffer is full or after a certain period (e.g. a month), the
raw data will be summerized into the *.info file.
Currently the summary is not implented yet. This will be implemented
in the next round of patches.
Marcel Holtmann [Wed, 22 Sep 2010 04:14:39 +0000 (13:14 +0900)]
Don't bother setting 127.0.0.1 as nameserver
Marcel Holtmann [Wed, 22 Sep 2010 04:13:37 +0000 (13:13 +0900)]
Read nameservers from /etc/resolv.conf if none are specified