Patrik Flykt [Fri, 15 Jun 2012 11:13:47 +0000 (14:13 +0300)]
technology: Disable technology when the last device is unpowered
Reply via D-Bus to the caller and send the technology 'Powered'
property set to FALSE only after the last device has been powered
off. Update code but not behavior in __connman_technology_enabled()
so that the logic looks the same as in
__connman_technology_disabled().
Patrik Flykt [Fri, 15 Jun 2012 11:13:46 +0000 (14:13 +0300)]
device: Combine multiple if statements into one block of code
Patrik Flykt [Fri, 15 Jun 2012 11:13:45 +0000 (14:13 +0300)]
device: Combine two if statements with identical outcome
Patrik Flykt [Fri, 15 Jun 2012 11:13:44 +0000 (14:13 +0300)]
technology: Remove unneeded scan stop when removing device
Scanning has already been stopped when a device is to be removed
from the technology struct. Let __connman_technology_remove_device()
just remove the device and nothing else.
Patrik Flykt [Fri, 15 Jun 2012 11:13:43 +0000 (14:13 +0300)]
wifi: Don't print an error when the wifi interface has been removed
If the wifi data structure is NULL, it was already removed due to
a call to wifi_remove() and is thus not an error condition.
Patrik Flykt [Fri, 15 Jun 2012 11:13:42 +0000 (14:13 +0300)]
wifi: Stop scanning when disabling wifi
Move wifi scan stopping from wifi remove to wifi disable since
only wifi disable is called when the wifi technology is disabled.
Removing a wifi device will first disable it and then continue
with the removal procedure.
Jukka Rissanen [Fri, 15 Jun 2012 13:00:21 +0000 (16:00 +0300)]
service: Connecting hidden network waits until connected
If the user is connecting to hidden network, then we delay the
return of the reply to caller until the real service has connected.
This way the user connect to hidden and non-hidden networks works
the same way from caller point of view.
Jukka Rissanen [Fri, 15 Jun 2012 13:00:20 +0000 (16:00 +0300)]
service: Add support functions for pending replies
Jukka Rissanen [Fri, 15 Jun 2012 13:00:19 +0000 (16:00 +0300)]
service: Split reply_pending function to two parts
Split reply_pending() into two parts so that a D-Bus reply can be
sent to the client waiting for a reply.
Jukka Rissanen [Fri, 15 Jun 2012 12:34:07 +0000 (15:34 +0300)]
timeserver: Get rid of useless and annoying error message
Tomasz Bursztyka [Mon, 28 May 2012 11:20:23 +0000 (14:20 +0300)]
service: Take last error into acount when retrying to connect
Tomasz Bursztyka [Mon, 28 May 2012 11:20:22 +0000 (14:20 +0300)]
agent: Implement the new type and argument for RequestInput method call
This implements the usage of PreviousPassphrase argument as an informational
field type.
Tomasz Bursztyka [Mon, 28 May 2012 11:20:21 +0000 (14:20 +0300)]
service: Add a getter for the passphrase
Tomasz Bursztyka [Mon, 28 May 2012 11:20:20 +0000 (14:20 +0300)]
doc: Add a new type and argument to agent RequestInput method call
Patrik Flykt [Mon, 4 Jun 2012 10:45:06 +0000 (13:45 +0300)]
timeserver: Simplify timeserver IP address checking
Patrik Flykt [Mon, 4 Jun 2012 10:45:05 +0000 (13:45 +0300)]
main: Simplify fallback nameserver parsing
Patrik Flykt [Mon, 4 Jun 2012 10:45:04 +0000 (13:45 +0300)]
service: Simplify nameserver route adding and removing
Patrik Flykt [Mon, 4 Jun 2012 10:45:03 +0000 (13:45 +0300)]
service: Check that the supplied nameserver is in numeric format
Check that the supplied nameserver is in numeric format when set
with 'Nameservers.Configuration' service property.
Patrik Flykt [Mon, 4 Jun 2012 10:45:02 +0000 (13:45 +0300)]
inet: Create helper function for IP address checking
Create a helper function that checks if a given hostname is an IPv4
or IPv6 address. If it is, AF_INET or AF_INET6 is returned. On
error the negative error value from getaddrinfo is returned.
Tomasz Bursztyka [Fri, 8 Jun 2012 10:58:49 +0000 (13:58 +0300)]
gsupplicant: Properly handle WPS properties update
Tomasz Bursztyka [Fri, 8 Jun 2012 10:58:48 +0000 (13:58 +0300)]
gsupplicant: Properly handle WiFi security change
Handle RSN and WPA security separately and combine the results.
Jukka Rissanen [Wed, 6 Jun 2012 11:37:32 +0000 (14:37 +0300)]
ipconfig: Set IPv6 privacy default value from kernel default
Use value set in the kernel as the initial IPv6 privacy
setting. This also allows distros to set the privacy value
without needing to tweak connman.
Jukka Rissanen [Mon, 4 Jun 2012 10:54:28 +0000 (13:54 +0300)]
dnsproxy: Do not print too many info messages
Convert connman_info() into DBG() in order to avoid excessive logging
when debug prints are disabled.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:19 +0000 (11:24 +0300)]
doc: Describe what happens when config file is removed
Jukka Rissanen [Tue, 5 Jun 2012 08:24:18 +0000 (11:24 +0300)]
config: Check if we need to rescan the config file for any changes
Jukka Rissanen [Tue, 5 Jun 2012 08:24:17 +0000 (11:24 +0300)]
config: No service removal on cleanup
We must not remove the services when connman is stopped.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:16 +0000 (11:24 +0300)]
config: Check individual service entries for removal
Check if we need to remove a service if user removes
an entry from config file.
If user changes entry name in config file, then we
remove the service and then try to provision the service
again because the SSID might still be found.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:15 +0000 (11:24 +0300)]
config: Use config file name and entry when deciding removal
We need to know the config file and entry name in next patch
in order to know if the service entry was removed from config
file.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:14 +0000 (11:24 +0300)]
config: Save service after provisioning it
Jukka Rissanen [Tue, 5 Jun 2012 08:24:13 +0000 (11:24 +0300)]
service: Support function that saves service
Jukka Rissanen [Tue, 5 Jun 2012 08:24:12 +0000 (11:24 +0300)]
service: Sort service sequence after checking provisioned services
Jukka Rissanen [Tue, 5 Jun 2012 08:24:11 +0000 (11:24 +0300)]
service: Mark service as dirty and needing sorting
Jukka Rissanen [Tue, 5 Jun 2012 08:24:10 +0000 (11:24 +0300)]
service: Add function to set the favorite flag
Add a function that sets favorite flag but which does
not touch the ordering of service sequence. This is needed
when we check provisioned config file which traverses the
service sequence. If a proper provisioned service is found,
then it is marked as favorite but in this case we must not
do any ordering of service sequence because we are in the
middle of sequence traversal.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:09 +0000 (11:24 +0300)]
service: Remove unprovisioned services when starting connman
Jukka Rissanen [Tue, 5 Jun 2012 08:24:08 +0000 (11:24 +0300)]
service: Save provisioned config information
Jukka Rissanen [Tue, 5 Jun 2012 08:24:07 +0000 (11:24 +0300)]
config: Set config information in service
This is needed so that service can know if the
config file is removed when connmand is not running.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:06 +0000 (11:24 +0300)]
config: Remove service if config file is removed
If the user removes the config file, we disconnect and then
try to remove the corresponding service directory and all
known files (settings and data).
Jukka Rissanen [Tue, 5 Jun 2012 08:24:05 +0000 (11:24 +0300)]
service: Add function to remove a service
Jukka Rissanen [Tue, 5 Jun 2012 08:24:04 +0000 (11:24 +0300)]
service: Add setter for config information
Save config information (file name and section id) for
provisioned services. The information is used to remove the
service when config file is removed.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:03 +0000 (11:24 +0300)]
storage: Add function to remove a service directory
All known files from service directory are removed and
if successfull then the service directory is also removed.
Jukka Rissanen [Tue, 5 Jun 2012 08:24:02 +0000 (11:24 +0300)]
service: Add function to return service by identifier
Jukka Rissanen [Fri, 1 Jun 2012 12:02:08 +0000 (15:02 +0300)]
dnsproxy: Randomize the transaction id
Jukka Rissanen [Fri, 1 Jun 2012 12:02:07 +0000 (15:02 +0300)]
dnsproxy: Use memmove() when discarding domain name
The memory areas can overlap so memmove() must be used.
Jukka Rissanen [Fri, 1 Jun 2012 12:02:06 +0000 (15:02 +0300)]
dnsproxy: Check overlapping memcpy
The problem was seen with valgrind. We tried to get hostname
without domain part and if server returns an error, we could
end up in situation where domain_len == 0 even if append_domain
is set to TRUE. So check that if domain_len is 0, then do not
try to memcpy.
Grant Erickson [Thu, 7 Jun 2012 04:49:08 +0000 (21:49 -0700)]
service: remove extra semicolon
Daniel Wagner [Tue, 5 Jun 2012 16:27:35 +0000 (18:27 +0200)]
dundee: Fix wrong casting
Marcel Holtmann [Mon, 4 Jun 2012 21:16:07 +0000 (06:16 +0900)]
doc: Mention long D-Bus timeout for scan method
Daniel Wagner [Fri, 1 Jun 2012 14:11:30 +0000 (16:11 +0200)]
bluetooth: Check ownership of device
We have two drivers for the CONNMAN_DEVICE_TYPE_BLUETOOTH and therefore
check owner ship in probe function.
Daniel Wagner [Fri, 1 Jun 2012 14:11:29 +0000 (16:11 +0200)]
dundee: Check ownership of device
We have two drivers for the CONNMAN_DEVICE_TYPE_BLUETOOTH and therefore
check owner ship in probe function.
Daniel Wagner [Fri, 1 Jun 2012 14:11:28 +0000 (16:11 +0200)]
dundee: Set device active/inactive
Daniel Wagner [Fri, 1 Jun 2012 14:11:27 +0000 (16:11 +0200)]
dundee: Update network connected status
Daniel Wagner [Fri, 1 Jun 2012 14:11:26 +0000 (16:11 +0200)]
dundee: Register connman_network at core
Daniel Wagner [Fri, 1 Jun 2012 14:11:25 +0000 (16:11 +0200)]
dundee: Monitor Device.PropertyChanged signal
Daniel Wagner [Fri, 1 Jun 2012 14:11:24 +0000 (16:11 +0200)]
dundee: Create connman device
Daniel Wagner [Fri, 1 Jun 2012 14:11:23 +0000 (16:11 +0200)]
dundee: Parse device properties in add_device
Daniel Wagner [Fri, 1 Jun 2012 14:11:22 +0000 (16:11 +0200)]
dundee: Get modems when starting
In case ConnMan starts after Dundee we have to ask for the devices.
Daniel Wagner [Fri, 1 Jun 2012 14:11:21 +0000 (16:11 +0200)]
dundee: Monitor DeviceAdded/DeviceRemoved signal
Daniel Wagner [Fri, 1 Jun 2012 14:11:20 +0000 (16:11 +0200)]
dundee: Watch service on D-Bus
Daniel Wagner [Fri, 1 Jun 2012 14:11:19 +0000 (16:11 +0200)]
dundee: Add emply plugin
Daniel Wagner [Fri, 1 Jun 2012 14:11:18 +0000 (16:11 +0200)]
README: Add --disable-dundee documentation
Daniel Wagner [Fri, 1 Jun 2012 14:11:17 +0000 (16:11 +0200)]
README: Fix whitespace and typo issues
Patrik Flykt [Fri, 1 Jun 2012 07:43:00 +0000 (10:43 +0300)]
TODO: Add migration removal task
Patrik Flykt [Thu, 31 May 2012 12:16:05 +0000 (15:16 +0300)]
AUTHORS: Mention Mikel's and Paulo's contributions
Marcel Holtmann [Thu, 31 May 2012 10:39:30 +0000 (12:39 +0200)]
Release 1.1
Paulo Pizarro [Wed, 30 May 2012 20:24:24 +0000 (17:24 -0300)]
dnsproxy: If the answer is in the cache, the UDP request is released
Lucas De Marchi [Tue, 29 May 2012 11:57:06 +0000 (08:57 -0300)]
gdbus: Add macro for methods marked as NOREPLY
Bring gdbus up to sync with other projects. The macro is
not yet used in ConnMan.
Grant Erickson [Fri, 25 May 2012 21:15:15 +0000 (14:15 -0700)]
ntp: Log the time slew delta
Marcel Holtmann [Wed, 23 May 2012 05:06:57 +0000 (07:06 +0200)]
main.conf: Add InputRequestTimeout and BrowserLaunchTimeout
Patrik Flykt [Tue, 29 May 2012 13:19:29 +0000 (16:19 +0300)]
agent: Use input request and browser launch timeouts
Patrik Flykt [Tue, 29 May 2012 13:19:28 +0000 (16:19 +0300)]
main: Add InputRequestTimeout and BrowserLaunchTimeout variables
Add InputRequestTimeout and BrowserLaunchTimeout main.conf variable
handling and functions for fetching their values.
Patrik Flykt [Thu, 24 May 2012 13:25:03 +0000 (16:25 +0300)]
service: Clean up append_nameservers() helper function
Patrik Flykt [Thu, 24 May 2012 13:25:02 +0000 (16:25 +0300)]
service: Proper ordering of nameservers and search domains
The primary nameserver or search domain is the first element
in the array. When adding a nameserver or search domain to
the resolver, start from the end of the array since the resolver
functions expect the most important entry to be the last one
appended.
Patrik Flykt [Thu, 24 May 2012 13:25:01 +0000 (16:25 +0300)]
resolver: Clean up remove function
A search domain will have it's server attribute set to NULL, thus
remove that explicit check. Also when comparing entry elements to
the given attributes, consider NULL being equal to NULL.
Patrik Flykt [Thu, 24 May 2012 13:25:00 +0000 (16:25 +0300)]
service: Properly handle nameservers and search domains
Remove system added namservers in 'Nameservers' when setting
nameservers from a non-empty 'Nameservers.Config'. Also remove
system added domain name from search domains if 'Domains.Config'
is set.
Patrik Flykt [Thu, 24 May 2012 13:24:59 +0000 (16:24 +0300)]
service: Remove previous nameservers and search domains
Remove previous 'Nameservers.Configuration' nameservers and
'Domains.Configuration' search domains when new ones are set.
Patrik Flykt [Thu, 24 May 2012 13:24:58 +0000 (16:24 +0300)]
service: Add helpers for removing nameservers and search domains
Patrik Flykt [Thu, 24 May 2012 13:24:57 +0000 (16:24 +0300)]
resolver: Simplify code to return if a resolver entry exists
Lucas De Marchi [Wed, 23 May 2012 18:00:10 +0000 (15:00 -0300)]
dnsproxy: Fix wrong domain len causing crash in memmove
If host_len is 0, strlen(*ptr) will return 0 as well and domain_len will
have the wrong value (-1). This causes connman to crash with the
following backtrace:
connmand[13361]: ++++++++ backtrace ++++++++
connmand[13361]: #0 0x7f33a5e49140 in /lib/libpthread.so.0
connmand[13361]: #1 0x7f33a509ed80 in /lib/libc.so.6
connmand[13361]: #2 0x4671a8 in forward_dns_reply() at src/dnsproxy.c:1568
connmand[13361]: #3 0x46725a in udp_server_event() at src/dnsproxy.c:1706
connmand[13361]: #4 0x7f33a62e14a5 in /usr/lib/libglib-2.0.so.0
connmand[13361]: #5 0x7f33a62e17d8 in /usr/lib/libglib-2.0.so.0
connmand[13361]: #6 0x7f33a62e1bd2 in /usr/lib/libglib-2.0.so.0
connmand[13361]: #7 0x40dfa1 in main() at src/main.c:510
connmand[13361]: #8 0x7f33a4f8e455 in /lib/libc.so.6
connmand[13361]: +++++++++++++++++++++++++++
To reproduce this issue, we need to have a domain name set and make a
query for "". The easiest way to do so is to use the (wrong) git command
below:
git push :your.host.name
Make sure we calculate domain_len the right way. By guaranteeing
host_len and domain_len are >= we can also use memcpy() instead of
memmove().
Lucas De Marchi [Wed, 23 May 2012 18:00:09 +0000 (15:00 -0300)]
dnsproxy: Avoid useless memset
Lucas De Marchi [Wed, 23 May 2012 18:00:08 +0000 (15:00 -0300)]
dnsproxy: Fix constiness of variables
There's no point in casting 'domain' and 'query' to char* to remove the
const since we are not modifying them. Also we can avoid another var
entirely by updating the pointers only.
Jukka Rissanen [Mon, 28 May 2012 07:04:51 +0000 (10:04 +0300)]
storage: Remove obsolete functions that nobody calls
Config load and save functions are not called so they
are not needed.
Jukka Rissanen [Mon, 28 May 2012 07:04:50 +0000 (10:04 +0300)]
config: Remove unused function
Patrik Flykt [Wed, 23 May 2012 12:24:57 +0000 (15:24 +0300)]
agent: Update __connman_agent_report_error to return -EINPROGRESS
Handle the change from -EIO to -EINPROGRESS return value in
service.c.
Patrik Flykt [Wed, 23 May 2012 12:24:56 +0000 (15:24 +0300)]
agent: Update functions used by wispr to send -EINPROGRESS
Handle the change from -EIO to -EINPROGRESS return value in
wispr.c.
Patrik Flykt [Wed, 23 May 2012 12:24:55 +0000 (15:24 +0300)]
agent: Return -EINPROGRESS when request passphrase calls an agent
As a result of returning -EINPROGRESS, the code in service.c can be
simplified.
Patrik Flykt [Wed, 23 May 2012 12:24:54 +0000 (15:24 +0300)]
service: Remove unnecessary setting of ipconfing to failure
With this change service Connect will not report failure but
instead wait for the Agent API to complete. The remaining
__connman_network_disconnect() will reset ipconfig to IDLE
state. If a service were set to failure state, the service
would be ignored in later autoconnects.
Tomasz Bursztyka [Fri, 25 May 2012 08:17:42 +0000 (11:17 +0300)]
wifi: Stop autoscan in the relevant place.
If not stopped before checking the scanning status of the device, we might
not raise a user initiated scan just because an autoscan is going one which
is bogus.
Tomasz Bursztyka [Fri, 25 May 2012 08:17:41 +0000 (11:17 +0300)]
wifi: Check device is not already scanning before a new scan.
gsupplicant's interface scanning value is slow to be updated since it's wpa_s event
which updates it, thus leading to a time gap where it is possible to request another scan.
It will therefore reference once again device, which will lead to too many references hold
by wifi plugin
Tomasz Bursztyka [Fri, 25 May 2012 08:17:40 +0000 (11:17 +0300)]
wifi: If scanning, unref the device when removing wifi driver.
Tomasz Bursztyka [Fri, 25 May 2012 08:17:39 +0000 (11:17 +0300)]
wifi: Scanning is set to false in case of effective autoscan stop.
Tomasz Bursztyka [Fri, 25 May 2012 08:17:38 +0000 (11:17 +0300)]
device: Make scanning getter method public.
Grant Erickson [Mon, 21 May 2012 19:43:50 +0000 (12:43 -0700)]
storage: migrate 0.76-era device enabled / powered state
This patch ensures that [device_<type>] Powered=<true|false> device enabled
/ powered state migrates from 0.76-era versions of default.profile.
Patrik Flykt [Fri, 18 May 2012 08:44:08 +0000 (11:44 +0300)]
storage: Remove default.profile when migration has been done
Unconditionally remove default.profile without any migration if
the currently used global settings save file exists. The current
settings formats for global and service settings were introduced
in version 0.78.
Patrik Flykt [Fri, 18 May 2012 08:44:07 +0000 (11:44 +0300)]
storage: Migrate services from obsolete default.profile
In order to remove the obsolete default.profile, migrate
services into the new setup with per-service directories.
If the service exists in the new format, it is not migrated.
Patrik Flykt [Fri, 18 May 2012 08:44:06 +0000 (11:44 +0300)]
storage: Remove support for loading services from default.profile
Patrik Flykt [Fri, 18 May 2012 08:44:05 +0000 (11:44 +0300)]
storage: Return any errors when saving services and global config
Marcel Holtmann [Wed, 23 May 2012 04:52:35 +0000 (06:52 +0200)]
agent: Increase default timeout to 120 seconds
The D-Bus default timeout is 25 seconds and that is clearly not enough time
to enter a passphrase. Increasing this to 120 seconds now.
Marcel Holtmann [Wed, 23 May 2012 01:50:56 +0000 (03:50 +0200)]
AUTHORS: Mention Elena's contributions
Patrik Flykt [Mon, 21 May 2012 11:35:34 +0000 (14:35 +0300)]
ipconfig: Show FIXED configuration IP address info
Show FIXED configuration IP address info in service IPv4 and
IPv6 properties. If IP address is not available via
ipconfig->system, use the provider configured ones instead.
Fixes BMC#25084
Elena Tebesoi [Mon, 21 May 2012 12:49:42 +0000 (14:49 +0200)]
resolver: Send RS before RDNSS lifetime expires
Implemented feature from RFC 6106 section
'5.1. Recursive DNS Server Option':
"Lifetime 32-bit unsigned integer.
...
Hosts MAY send a Router Solicitation to ensure
the RDNSS information is fresh before the interval expires."
Host will send RS when a certain threshold of RDNSS lifetime is reached.
Values which can be adjusted:
- lifetime threshold - set to 80% from lifetime
- number of retries in case RA is not received - set to 0
- time between retries, in case RA is not received - set to 3 seconds