Alok Barsode [Thu, 5 Apr 2012 10:20:16 +0000 (13:20 +0300)]
timeserver: Create timeserver list
Create a timeserver list for NTP query. This list consists of
timeserver provided via DHCP and the ones set by user in that
order. We recreate this list everytime the default service changes
or one of the timeserver values change.
Use getaddrinfo to determine if the timeserver is a domain name or
a IP address.
Alok Barsode [Thu, 5 Apr 2012 10:20:15 +0000 (13:20 +0300)]
timeserver: Trigger ntp on default changed notifier
Trigger NTP sync on default service going to READY/ONLINE state
instead of triggering NTP sync on ONLINE state only. This makes
sense for local ntp servers even if the wispr check fails.
Alok Barsode [Thu, 5 Apr 2012 10:20:14 +0000 (13:20 +0300)]
service: Add __connman_service_get_default
Export the default service via this api. This is helpful
to obtain info like default service's timeserver list and gateway.
Alok Barsode [Thu, 5 Apr 2012 10:20:13 +0000 (13:20 +0300)]
Replace older system timeserver values with new ones instead of appending
Fixes BMC#24997.
Alok Barsode [Thu, 5 Apr 2012 10:20:12 +0000 (13:20 +0300)]
meego: Remove the meego plugin
The fallback Timeservers should replace this plugin.
Anderson Lizardo [Tue, 3 Apr 2012 16:14:58 +0000 (12:14 -0400)]
gdbus: Use destroy callback for service watch
Even though service watches accepted a "destroy" callback, they were
being ignored. This fix properly pass them along so they are called when
the watch is removed.
Syam Sidhardhan [Sun, 26 Jun 2011 21:56:04 +0000 (03:26 +0530)]
gdbus: Fix white space coding style issue
- corrected the space before '{'
Jukka Rissanen [Tue, 3 Apr 2012 11:04:46 +0000 (14:04 +0300)]
connection: Add host route for VPN when setting default gateway
This is needed so that VPN gets default route when moving
services. That can happen if VPN did not had default route
before.
Jukka Rissanen [Tue, 3 Apr 2012 11:04:45 +0000 (14:04 +0300)]
connection: Remove wrong VPN route
Before this patch the system created following routes for VPN
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.10.9 0.0.0.0 UG 0 0 0 vpn0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
192.168.2.1 0.0.0.0 255.255.255.255 UH 0 0 0 vpn0
192.168.2.1 0.0.0.0 255.255.255.255 UH 0 0 0 wlan0
192.168.10.1 192.168.10.9 255.255.255.255 UGH 0 0 0 vpn0
192.168.10.9 0.0.0.0 255.255.255.255 UH 0 0 0 vpn0
Here the route to gateway in wlan0 192.168.2.1 via vpn0 is not
correct and it will prevent connections to 192.168.2.1
The correct routes should be:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.10.9 0.0.0.0 UG 0 0 0 vpn0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
192.168.2.1 0.0.0.0 255.255.255.255 UH 0 0 0 wlan0
192.168.10.1 192.168.10.9 255.255.255.255 UGH 0 0 0 vpn0
192.168.10.9 0.0.0.0 255.255.255.255 UH 0 0 0 vpn0
Fixes MBC#25035
Patrik Flykt [Thu, 5 Apr 2012 12:32:50 +0000 (15:32 +0300)]
inet: Build failure fix
"The format modifier for size_t is %zd." (Marcel, 20/12/2011)
Jukka Rissanen [Thu, 5 Apr 2012 09:04:08 +0000 (12:04 +0300)]
6to4: Connectivity check was done too early
The 6to4 code checks that we can connect to ipv6.connman.net
host via tunnel. The check can be done only after we have the
tunnel up and running. The patch makes sure that we do the
checks only after we have got newlink message from rtnl.
Jukka Rissanen [Thu, 5 Apr 2012 09:04:07 +0000 (12:04 +0300)]
gweb: Add more debug prints when error happens
These prints are useful when checking why network
connection failed.
Jukka Rissanen [Thu, 5 Apr 2012 09:04:06 +0000 (12:04 +0300)]
6to4: Add web debug prints
In order to see what is the problem with web connection,
add debug print function.
Jukka Rissanen [Thu, 5 Apr 2012 09:04:05 +0000 (12:04 +0300)]
inet: Refactor rtnl functions in 6to4.c
The rtnl support functions are now in inet.c which is a
more logical place for them and now other files can also
use them.
Jukka Rissanen [Tue, 27 Mar 2012 07:59:58 +0000 (10:59 +0300)]
connection: Set additional point-to-point route
This is useful if P-t-P link does not have a default route.
Fixes BMC#25027
Jukka Rissanen [Tue, 27 Mar 2012 07:59:57 +0000 (10:59 +0300)]
service: Nameservers behind P-t-P link need special handling
Setting routes to nameservers need special setup if the
nameservers are behind point-to-point link, the gateway
must not be set in this case.
Jukka Rissanen [Tue, 27 Mar 2012 07:59:56 +0000 (10:59 +0300)]
net: Add functions to get dest address of P-t-P link
These functions are needed when we need to setup a route
to point-to-point link destination address. The route is
needed if P-t-P link does not have a default route.
Jukka Rissanen [Thu, 5 Apr 2012 09:00:54 +0000 (12:00 +0300)]
todo: Mark split tunneling/routing done
Jukka Rissanen [Thu, 5 Apr 2012 09:00:53 +0000 (12:00 +0300)]
connection: Remove original default route only when needed
If the new VPN gateway has split routing set, then do not
clear original default route because VPN will not set the
default route. Without this check we would not get any
proper default route set.
Jukka Rissanen [Thu, 5 Apr 2012 09:00:52 +0000 (12:00 +0300)]
service: Return service split routing status
Jukka Rissanen [Thu, 5 Apr 2012 09:00:51 +0000 (12:00 +0300)]
connection: Update service list order
This is done as we might have changed the order of the services
so force update of the service list.
Jukka Rissanen [Thu, 5 Apr 2012 09:00:50 +0000 (12:00 +0300)]
service: Add function to update the service list order
Jukka Rissanen [Thu, 5 Apr 2012 09:00:49 +0000 (12:00 +0300)]
service: Save/load split routing information for VPN
Jukka Rissanen [Thu, 5 Apr 2012 09:00:48 +0000 (12:00 +0300)]
service: Allow user to do split routing for VPN services
The split routing is done when user moves the services and it is only
done if there are routes defined for that specific VPN provider.
Jukka Rissanen [Thu, 5 Apr 2012 09:00:47 +0000 (12:00 +0300)]
provider: Check if there are any routes for the provider
Jukka Rissanen [Thu, 5 Apr 2012 09:00:46 +0000 (12:00 +0300)]
provider: Allow user to set routes when creating provider
Jukka Rissanen [Thu, 5 Apr 2012 09:00:45 +0000 (12:00 +0300)]
provider: Save and load user specified routes
Jukka Rissanen [Thu, 5 Apr 2012 09:00:44 +0000 (12:00 +0300)]
provider: Add support for user defined routes
Allow user to add routes when setting up VPN. This is useful if
the VPN cannot be configured to setup additional routes itself.
Gustavo Padovan [Wed, 4 Apr 2012 03:49:56 +0000 (00:49 -0300)]
update Gustavo's email address
The old one is not valid anymore.
Daniel Wagner [Fri, 30 Mar 2012 14:16:55 +0000 (16:16 +0200)]
ofono: Fix NULL pointer access in set_disconnect()
oFono sends several ConnectionContext.PropertyChanged("Active", False)
after it was told to disconnect.
After studying the oFono part, it looks like that serveral CREGS updates
could trigger oFono to send us the same flag over and over again
(see ofono_gprs_status_notify()).
Even though oFono might missbehave, ConnMan should not crash so
easily. Luckely, the fix is very simple. We should just check if we still
have a valid network pointer before accessing it.
Fixes BMC#25026
Daniel Wagner [Mon, 26 Mar 2012 06:54:17 +0000 (08:54 +0200)]
dnsproxy: Refactor request destroy code
Move common code into a function for destroying the request data.
Jukka Rissanen [Tue, 20 Mar 2012 12:20:01 +0000 (14:20 +0200)]
provider: Free provider when destructing it
Valgrind reports memory leak here.
Jukka Rissanen [Tue, 20 Mar 2012 10:37:57 +0000 (12:37 +0200)]
vpn: Unref provider properly
The provider can be unreffed in vpn_died() or in vpn_disconnect().
We must do the unref only once.
Julien Massot [Wed, 14 Mar 2012 08:59:07 +0000 (08:59 +0000)]
dnsproxy: Remove pending requests before destroying the channel
This fixes a segfault in request_timeout when disabling tethering.
Sébastien Bianti [Tue, 20 Mar 2012 11:09:47 +0000 (12:09 +0100)]
gweb: workaround for setsockopt failure
Setting socket option BINDTODEVICE requires CAP_NET_RAW capability.
Patrik Flykt [Mon, 19 Mar 2012 12:36:25 +0000 (14:36 +0200)]
TODO: Create tasks for main.conf variables
Daniel Wagner [Mon, 19 Mar 2012 13:03:28 +0000 (14:03 +0100)]
set-ipv6-method: The arguments have to be wrapped into a variant
Fixes BMC#24986
Daniel Wagner [Mon, 19 Mar 2012 13:03:27 +0000 (14:03 +0100)]
set-ipv4-method: The arguments have to be wrapped into a variant
Fixes BMC#24986
Daniel Wagner [Mon, 19 Mar 2012 13:03:26 +0000 (14:03 +0100)]
list-services: Print only identifier instead of path
test-connman services also reports the identifier only. This makes
copy&paste with the mouse a bit simpler.
Daniel Wagner [Mon, 19 Mar 2012 12:50:41 +0000 (13:50 +0100)]
service: Fix refcount leak on ipconfigs
In __connman_service_connect() we call __connman_ipconfig_enable()
which takes a ref on the ipconfig object. Later when the service
state machine is updated service takes another ref.
When the device disapears during operation (the user didn't call
Service.Disconnect()), we do not call __connman_ipconfig_disable()
anymore which would drop one ref.
Daniel Wagner [Mon, 19 Mar 2012 12:50:40 +0000 (13:50 +0100)]
ipconfig: Disable IPv6 for new interfaces
We don't have yet an ipconfig for this interface, that means
the service.c does not yet know this interface. In order to
be able to get into sync we disable IPv6 auto connection at this point.
If the service state machine decides to connect, it will enable it
again.
Daniel Wagner [Mon, 19 Mar 2012 12:50:39 +0000 (13:50 +0100)]
ipconfig: Track ipconfigs enabled/disabled state
Daniel Wagner [Mon, 19 Mar 2012 12:50:38 +0000 (13:50 +0100)]
ipconfig: Do not enable IPv6 ipconfigs when loading the properties
When enabling IPv6 when loading the Service properties, the Service
state machine gets out of sync when AutoConnect is disabled.
At this point we should only load the properties and let the
Service state machine decide when to enable the ipconfigs.
And the good news is that the core handles this already.
Daniel Wagner [Mon, 19 Mar 2012 12:50:37 +0000 (13:50 +0100)]
service: Enable AutoConnect for new ethernet services
We need also to set the Favorite flag to true in order to let
the services to be auto connected.
Daniel Wagner [Mon, 19 Mar 2012 12:50:36 +0000 (13:50 +0100)]
service: Load/store AutoConnect and Favorite properties for ethernet
Daniel Wagner [Mon, 19 Mar 2012 12:50:35 +0000 (13:50 +0100)]
ethernet: Do not connect network on LOWER_UP
Ethernet networks should honor the AutoConnect feature as the rest
of the network types.
Just register the network object at the core when we get LOWER_UP.
Then the core can decide when to connect to the network.
There is no behavior change when AutoConnect is enabled, So if the
user plugs the cable the ethernet network will automatically connect
as it was before.
If AutoConnect is disabled, the core will not connect to the network
automatically.
Marcel Holtmann [Mon, 19 Mar 2012 23:13:09 +0000 (16:13 -0700)]
vpn: Remove wrong include of <glib/ghash.h>
Tomasz Bursztyka [Thu, 15 Mar 2012 08:49:16 +0000 (10:49 +0200)]
wispr: do not take care about http_proxy
Tomasz Bursztyka [Thu, 15 Mar 2012 08:49:15 +0000 (10:49 +0200)]
wispr: do not lookup for proxy if service does not provide any
Jukka Rissanen [Wed, 14 Mar 2012 15:28:59 +0000 (17:28 +0200)]
connection: Try to avoid having two default gateways
It is possible that because the rtnl messages arrive
asynchronously, we might end up having two default gateways
that are both active at the same time. If that happens, we try
to downgrade the one that is not yet active.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:58 +0000 (17:28 +0200)]
connection: Remove obsolete routes for VPN
Jukka Rissanen [Wed, 14 Mar 2012 15:28:57 +0000 (17:28 +0200)]
connection: Check all active gateways in update
There can be multiple active gateways in the system at the same
time so we must check them all when updating gateway info.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:56 +0000 (17:28 +0200)]
connection: Get correct VPN phy link data
VPN could be using wrong phy link data if there are multiple
active links.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:55 +0000 (17:28 +0200)]
connection: Do not set host routes in VPN case
These routes are not needed.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:54 +0000 (17:28 +0200)]
connection: Avoid stale memory access
Get the active gateway pointer only after the gateway hash
has been manipulated by add_gateway(). It is possible that
we are accessing stale pointer otherwise.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:53 +0000 (17:28 +0200)]
service: Check redundant default changed notify
Notify default service changed only if we actually changed
the default service.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:52 +0000 (17:28 +0200)]
service: Allow removing only certain type nameservers
When nameserver are removed by __connman_connection_gateway_remove()
then remove only certain type nameserver (IPv4 or IPv6). This is
needed so that we do not loose IPv4 routes if only IPv6 nameservers
are to be removed. This is needed when there are multiple connected
services.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:51 +0000 (17:28 +0200)]
connection: Remove nameserver routes only once
Jukka Rissanen [Wed, 14 Mar 2012 15:28:50 +0000 (17:28 +0200)]
connection: Trigger service updates only after setting gateways
This is needed so that gateways are set properly when service
triggers online checks.
Jukka Rissanen [Wed, 14 Mar 2012 15:28:49 +0000 (17:28 +0200)]
connection: Fix debugging prints
Jukka Rissanen [Wed, 14 Mar 2012 15:28:48 +0000 (17:28 +0200)]
inet: Fix debugging prints
Marcel Holtmann [Tue, 6 Mar 2012 18:23:11 +0000 (10:23 -0800)]
Release 0.79
Tomasz Bursztyka [Tue, 6 Mar 2012 13:04:45 +0000 (15:04 +0200)]
test: test-session does not exit any more when catching dbus exceptions
Fixes BMC#24964
Tomasz Bursztyka [Tue, 6 Mar 2012 12:45:14 +0000 (14:45 +0200)]
test: Support the possibility to input multiple parameters into simple-agent
Fixes BMC#24965
Tomasz Bursztyka [Tue, 6 Mar 2012 12:45:13 +0000 (14:45 +0200)]
test: Add support of hidden service input into simple-agent
Jussi Kukkonen [Thu, 1 Mar 2012 14:13:44 +0000 (16:13 +0200)]
ofono: Remove network whenever context is removed
Fixes BMC#24942
Jussi Kukkonen [Thu, 1 Mar 2012 14:13:43 +0000 (16:13 +0200)]
ofono: fix modem lookup in cm_context_added()
Marcel Holtmann [Mon, 5 Mar 2012 04:45:54 +0000 (20:45 -0800)]
ipconfig: Fix broken attempt to handle {IPv4,IPv6}.Configuration
Marcel Holtmann [Mon, 5 Mar 2012 04:45:33 +0000 (20:45 -0800)]
service: Fix two small style issues
Marcel Holtmann [Mon, 5 Mar 2012 04:34:19 +0000 (20:34 -0800)]
core: Add extra checks for set property methods
Marcel Holtmann [Mon, 5 Mar 2012 04:33:57 +0000 (20:33 -0800)]
clock: Revert change to accept variant of variant
Daniel Wagner [Thu, 1 Mar 2012 12:37:20 +0000 (13:37 +0100)]
AUTHORS: Metion Tim's contribution
Daniel Wagner [Thu, 1 Mar 2012 12:23:56 +0000 (13:23 +0100)]
AUTHORS: Mention Otavio's contribution
Tim Sander [Thu, 1 Mar 2012 12:35:32 +0000 (13:35 +0100)]
ipconfig: Accept variant types in __connman_ipconfig_set_config()
According the D-Bus API, the Service interface accepts
variant types.
Tim Sander [Thu, 1 Mar 2012 12:29:44 +0000 (13:29 +0100)]
clock: Accept variant types in SetProperty
According the D-Bus API, the Clock interface accepts
variant types.
Patrik Flykt [Wed, 29 Feb 2012 14:25:44 +0000 (16:25 +0200)]
service: Fix ServiceRemoved signals
Removed services hash table need not be consulted when sending
ServicesAdded signals as the service structures have already been
deleted. Also clean up both added and removed hash tables after the
signals have been sent.
Otavio Salvador [Wed, 29 Feb 2012 08:20:24 +0000 (05:20 -0300)]
inet: Ensure data->channel exist before accessing it
Log of segfault:
...
connmand[676]: src/network.c:check_dhcpv6() reply (nil)
connmand[676]: src/network.c:check_dhcpv6() re-send router solicitation 3
connmand[676]: src/inet.c:__connman_inet_ipv6_send_rs()
connmand[676]: Aborting (signal 11) [connmand]
Alok Barsode [Fri, 24 Feb 2012 14:17:59 +0000 (16:17 +0200)]
technology: Enable tech if device is already powered
connman_technology_add_device() calls __connman_device_enable()
but since the device is already enabled, the calls does not propagate
through to __connman_technology_enabled via connman_device_set_powered.
Grant Erickson [Tue, 28 Feb 2012 17:55:53 +0000 (09:55 -0800)]
core: Change coding style for passing NULL to time
Pass NULL rather than 0 when calling time(2) to follow prefered
stylistic convention.
Grant Erickson [Tue, 28 Feb 2012 17:55:52 +0000 (09:55 -0800)]
dhcpv4-client: Change coding style for passing NULL to time
Pass NULL rather than 0 when calling time(2) to follow prefered
stylistic convention.
Grant Erickson [Tue, 28 Feb 2012 16:30:00 +0000 (08:30 -0800)]
gdhcp: set secs in a RFC 951- and 2131-compliant manner
This patch sets the BOOTP secs field in a RFC 951- and 2131-compliant
manner for DHCPv4 DISCOVER and REQUEST/SELECT packets.
Certain DHCP servers, such as that implemented in Mac OS X (< 10.7)
for its "Internet Sharing" feature, refuse to issue a DHCP lease to
clients that have not set a non-zero value in their DISCOVER or
REQUEST packets. In fact, based on http://hints.macworld.com/article.php?
story=
20071223001432304, it's not non-zero but a value greater than four (4)
seconds to allow another "authoritative" DHCP server on the subnet to reply
first.
Side-by-side packet analysis of Mac OS X, iOS, Android, ISC and
Windows clients show that these clients set the BOOTP 'secs' field and
are successfully issued a DHCP lease by Mac OS X. By contrast, a
connman-based client will issue 10 back-to-back DISCOVER packets and
will not be returned a DHCP OFFER from the server.
Daniel Wagner [Tue, 28 Feb 2012 12:40:39 +0000 (13:40 +0100)]
AUTHORS: Mention Mario's contributions
Mario Domenech Goulart [Tue, 28 Feb 2012 12:29:12 +0000 (09:29 -0300)]
ippool: Fix NULL pointer access
Not all allocated blocks info data structure have a pool associated.
Mario Domenech Goulart [Tue, 28 Feb 2012 12:29:11 +0000 (09:29 -0300)]
ippool: Fix typo in error message
Daniel Wagner [Tue, 28 Feb 2012 09:23:31 +0000 (10:23 +0100)]
ofono: Remove obsolete DUN comment
Daniel Wagner [Sun, 26 Feb 2012 12:01:38 +0000 (13:01 +0100)]
test-connman: Use GetServices() instead GetProperties()
GetProperties() does not return the services path anymore. Instead
the GetServices() method should be used.
Daniel Wagner [Sun, 26 Feb 2012 12:01:37 +0000 (13:01 +0100)]
list-services: Use GetServices() instead GetProperties()
GetProperties() does not return the services path anymore. Instead
the GetServices() method should be used.
Daniel Wagner [Sun, 26 Feb 2012 12:01:36 +0000 (13:01 +0100)]
test-connman: Use GetServices() instead GetProperties()
GetProperties() does not return the services path anymore. Instead
the GetServices() method should be used.
Patrik Flykt [Tue, 28 Feb 2012 09:13:34 +0000 (11:13 +0200)]
service: Keep ordering and send all services in ServicesAdded
Keep services ordering and send also already known services
in ServicesAdded signal. Properties are added for new services,
while the dictionary is left empty for already known ones.
When the service is removed, pack the value of "TRUE" to the
removed service hash in order to indicate a removed object path.
The service struct cannot be used, as it is freed immediately
after returning from service_schedule_removed().
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:50 +0000 (10:19 +0200)]
unit: handling type of connection into session api
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:49 +0000 (10:19 +0200)]
unit: switching from online to state property into test-session
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:48 +0000 (10:19 +0200)]
test: modify test-session to handle a new property
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:47 +0000 (10:19 +0200)]
test: fixing type conversion bug in test-session
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:46 +0000 (10:19 +0200)]
doc: updated session api documentation
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:45 +0000 (10:19 +0200)]
session: filtering session state update according to connection type
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:44 +0000 (10:19 +0200)]
session: introducing a property to select a type on which the state gets up on
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:43 +0000 (10:19 +0200)]
session: do not notify ipconfig content if it's not in a connected state
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:42 +0000 (10:19 +0200)]
service: adding a function to know the connected state of an ipconfig
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:41 +0000 (10:19 +0200)]
session: do not notify an ipconfig change if the session is not connected
Tomasz Bursztyka [Wed, 15 Feb 2012 08:19:40 +0000 (10:19 +0200)]
session: refactor and optimize how notification are raised and when