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
Elena Tebesoi [Mon, 21 May 2012 15:48:20 +0000 (17:48 +0200)]
resolver: Fixed cleanup of Resolver timer
When connman is restarted, DNS servers are removed and added again
with function __connman_resolver_redo_servers(). While removing a
DNS entry, one should also remove the resolver timer registered for it.
Not doing so, causes the timeout handler resolver_expire_cb to fire
without being explicitly set.
Patrik Flykt [Mon, 21 May 2012 13:01:36 +0000 (16:01 +0300)]
doc: Update service Domains property description
Patrik Flykt [Mon, 21 May 2012 13:01:35 +0000 (16:01 +0300)]
service: Fix Domains property
The service Domains property shows Domains.Configuration if set,
otherwise the domain name given by DHCP or provider.
Fixes BMC#25122
Tomasz Bursztyka [Tue, 22 May 2012 10:17:38 +0000 (13:17 +0300)]
wispr: If redirected and TLS is not supported we fallback on browser request
Tomasz Bursztyka [Tue, 22 May 2012 10:17:37 +0000 (13:17 +0300)]
gweb: Adding a function to know if TLS is supported or not
Patrik Flykt [Tue, 22 May 2012 12:04:16 +0000 (15:04 +0300)]
agent: Verify that the reply contains a dictionary
Mikel Astiz [Tue, 22 May 2012 14:58:18 +0000 (16:58 +0200)]
gdbus: Fix incorrectly discarded signals
Signals with no arguments were incorrectly filtered out due to the NULL
inequality check.
Marcel Holtmann [Tue, 22 May 2012 04:13:27 +0000 (06:13 +0200)]
manager: Use simpler argument names in ServicesChanged signal
Marcel Holtmann [Tue, 22 May 2012 04:10:32 +0000 (06:10 +0200)]
manager: Fix wrong signature for SetProperty method
Marcel Holtmann [Tue, 22 May 2012 02:48:34 +0000 (04:48 +0200)]
README: Add description for --disable-wispr option
Marcel Holtmann [Mon, 21 May 2012 20:29:00 +0000 (22:29 +0200)]
gweb: Add function to check for TLS support
Marcel Holtmann [Mon, 21 May 2012 20:12:28 +0000 (22:12 +0200)]
build: Add option for disabling WISPr support
Lucas De Marchi [Fri, 18 May 2012 20:30:13 +0000 (17:30 -0300)]
gdbus: do not check signature twice
Message signature is already checked in generic_message(), so there's no
need to check again in the callback.
Lucas De Marchi [Fri, 18 May 2012 20:30:12 +0000 (17:30 -0300)]
gdbus: add Method.NoReply annotation in introspection
Lucas De Marchi [Fri, 18 May 2012 20:30:11 +0000 (17:30 -0300)]
gdbus: add Deprecated annotation in introspection
Lucas De Marchi [Fri, 18 May 2012 20:30:10 +0000 (17:30 -0300)]
gdbus: remove signature and reply from tables
Henrique Dante de Almeida [Fri, 18 May 2012 20:30:09 +0000 (17:30 -0300)]
Do not set signature and reply in GDBus tables
Use GDBUS_* macros, so signature and reply fields are not set in each
method/signal.
Lucas De Marchi [Fri, 18 May 2012 20:30:08 +0000 (17:30 -0300)]
gdbus: loop over args to check message signature
Lucas De Marchi [Fri, 18 May 2012 20:30:07 +0000 (17:30 -0300)]
gdbus: use GDBusArgInfo to generate introspection
By using GDBusArgInfo in methods and signals, the introspection
generation is much simpler and we can add each argument name.
Henrique Dante de Almeida [Fri, 18 May 2012 20:30:06 +0000 (17:30 -0300)]
Convert GDBus methods and signals to use macro helpers
With these macro helpers we can separate in/out arguments and use their
own vector.
Lucas De Marchi [Fri, 18 May 2012 20:30:05 +0000 (17:30 -0300)]
gdbus: add and use helpers for table declarations
Lucas De Marchi [Fri, 18 May 2012 20:30:04 +0000 (17:30 -0300)]
gdbus: add argument info to methods and signals
Henrique Dante de Almeida [Fri, 18 May 2012 20:30:03 +0000 (17:30 -0300)]
Constify GDBus signal tables
Henrique Dante de Almeida [Fri, 18 May 2012 20:30:02 +0000 (17:30 -0300)]
Constify GDBus method tables
Jukka Rissanen [Wed, 9 May 2012 08:28:21 +0000 (11:28 +0300)]
connection: Refactor VPN route setup
Marcel Holtmann [Fri, 18 May 2012 02:56:27 +0000 (19:56 -0700)]
gdbus: Constify introspection method table
Lucas De Marchi [Thu, 17 May 2012 18:19:59 +0000 (15:19 -0300)]
gdbus: do not call memset for terminating NUL
Lucas De Marchi [Thu, 17 May 2012 18:19:58 +0000 (15:19 -0300)]
gdbus: return if method signature is malformed
Marcel Holtmann [Thu, 17 May 2012 18:21:07 +0000 (11:21 -0700)]
doc: Clarify hidden WiFi network relations with Name+Type properties
Marcel Holtmann [Thu, 17 May 2012 18:08:37 +0000 (11:08 -0700)]
technology: Set deprecated flag for GetProperties method
Marcel Holtmann [Thu, 17 May 2012 18:08:00 +0000 (11:08 -0700)]
service: Set deprecated flag for GetProperties method
Marcel Holtmann [Thu, 17 May 2012 18:07:20 +0000 (11:07 -0700)]
doc: Mention deprecation of GetProperties methods
Grant Erickson [Tue, 15 May 2012 23:03:17 +0000 (16:03 -0700)]
gsupplicant: Coding style clean-up
This resolves several post-commit review coding style comments for
raw PSK support.
Jukka Rissanen [Tue, 15 May 2012 07:59:45 +0000 (10:59 +0300)]
gsupplicant: Avoid critical errors
wpa_supplicant sends error if wlan interface cannot be created.
Do not treat this error as critical because after calling
g_critical() the program logging will be disabled.
Patrik Flykt [Mon, 14 May 2012 12:20:45 +0000 (15:20 +0300)]
doc: Update configuration format documentation
Clarify that 'Name' is used only as a string representation of an
SSID and ignored if the entry contains an 'SSID' entry. Also clarify
that the identifier part is unique only within the .config file.
Add indentation.
Patrik Flykt [Mon, 14 May 2012 12:20:44 +0000 (15:20 +0300)]
config: Reject invalid SSID hexadecimal entries
Reject provisioning .config file SSID entries that are not in
hexadecimal.
Jukka Rissanen [Mon, 14 May 2012 10:33:47 +0000 (13:33 +0300)]
rtnl: Domain search list was not handled according to RFC 6106
Domain search list option can exist in options without RDNSS option.
Note that the DNSSL netlink support is not yet in linux kernel
3.4-rc7, thus we will not yet get a DNSSL option in netlink RA
options.
Jukka Rissanen [Mon, 14 May 2012 10:33:46 +0000 (13:33 +0300)]
resolver: Do not try to update service if server is not set
Jukka Rissanen [Mon, 14 May 2012 10:33:45 +0000 (13:33 +0300)]
resolver: Allow update to domain if server is not set
Jukka Rissanen [Mon, 14 May 2012 10:33:44 +0000 (13:33 +0300)]
resolver: Follow connman coding style
Grant Erickson [Tue, 15 May 2012 08:51:21 +0000 (01:51 -0700)]
gsupplicant: fix "raw" PSK support
This fixes "raw" PSK support by first converting the "raw" PSK from
a 64-character hexadecimal string to 32-byte array before appending
it to the network dictionary.
Patrik Flykt [Fri, 11 May 2012 09:40:16 +0000 (12:40 +0300)]
doc: SSID field is hexadecimal only, also document Name field
Daniel Wagner [Fri, 11 May 2012 09:35:49 +0000 (11:35 +0200)]
README: Add comment on OpenVPN version to use
Daniel Wagner [Fri, 11 May 2012 09:35:48 +0000 (11:35 +0200)]
README: Move the VPN entry down
So it is under the "Configuration and options" section.
Jukka Rissanen [Thu, 10 May 2012 13:31:58 +0000 (16:31 +0300)]
gdhcp: Make sure we have the message before accessing it
Jukka Rissanen [Thu, 10 May 2012 13:21:52 +0000 (16:21 +0300)]
gdhcp: Message type is required in DHCPv4
Daniel Wagner [Thu, 10 May 2012 15:33:40 +0000 (17:33 +0200)]
AUTHORS: Mention Lucas De Marchi's contributions
Jukka Rissanen [Thu, 10 May 2012 06:43:46 +0000 (09:43 +0300)]
dhcpv6: Check NULL pointer dereference
Patrik Flykt [Wed, 9 May 2012 14:20:14 +0000 (17:20 +0300)]
AUTHORS: Mention Henrique Dante de Almeida's contributions
Jukka Rissanen [Wed, 9 May 2012 10:48:26 +0000 (13:48 +0300)]
dhcp: Use g_list_length() to calculate the list length
Jukka Rissanen [Wed, 9 May 2012 10:48:25 +0000 (13:48 +0300)]
dhcpv6: Check NULL pointer dereference
Jukka Rissanen [Wed, 9 May 2012 10:48:24 +0000 (13:48 +0300)]
dhcp: Check NULL pointer dereference
Henrique Dante de Almeida [Tue, 8 May 2012 19:21:03 +0000 (16:21 -0300)]
wispr: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:21:02 +0000 (16:21 -0300)]
tools: Remove dead assignments in supplicant
Henrique Dante de Almeida [Tue, 8 May 2012 19:21:01 +0000 (16:21 -0300)]
tools: Remove dead assignment in supplicant
Henrique Dante de Almeida [Tue, 8 May 2012 19:21:00 +0000 (16:21 -0300)]
tools: Remove dead assignment in iptables-test
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:59 +0000 (16:20 -0300)]
wispr: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:58 +0000 (16:20 -0300)]
rtnl: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:57 +0000 (16:20 -0300)]
iptables: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:56 +0000 (16:20 -0300)]
dnsproxy: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:55 +0000 (16:20 -0300)]
dnsproxy: Return error if initial send fails
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:54 +0000 (16:20 -0300)]
vpn: Fix null pointer dereference
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:53 +0000 (16:20 -0300)]
vpn: Fix null pointer dereference
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:52 +0000 (16:20 -0300)]
ofono: Fix uninitialized variable
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:51 +0000 (16:20 -0300)]
gsupplicant: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:50 +0000 (16:20 -0300)]
gdhcp: Remove dead assignment
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:49 +0000 (16:20 -0300)]
gdhcp: Remove assignment that's never used
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:48 +0000 (16:20 -0300)]
ofono: Fix uninitialized value
Henrique Dante de Almeida [Tue, 8 May 2012 19:20:45 +0000 (16:20 -0300)]
wifi: Fix NULL ssid being passed to memcmp
Daniel Wagner [Tue, 8 May 2012 15:08:23 +0000 (17:08 +0200)]
oFono: Initialize prefix_length
We could end up calling connman_ipaddress_set_ipv6() withouth
prefix_lenght initialized.
Reported by hdante.
Marcel Holtmann [Tue, 8 May 2012 15:13:18 +0000 (08:13 -0700)]
Release 1.0
Marcel Holtmann [Tue, 8 May 2012 14:59:48 +0000 (07:59 -0700)]
README: Fix minor spelling mistake
Adrien Bustany [Tue, 8 May 2012 14:26:07 +0000 (17:26 +0300)]
connection: Fix possible NULL dereference
Daniel Wagner [Mon, 7 May 2012 15:31:03 +0000 (17:31 +0200)]
connection: Fix host route to VPN server
The kernel will ignore host routes which are bogus.
In case of a PtP connection such as PPP for cellular the
gateway address should not be used.
Patrik Flykt [Tue, 8 May 2012 10:14:07 +0000 (13:14 +0300)]
provider: Fix network/netmask parsing and potential crash
Tomasz Bursztyka [Tue, 8 May 2012 08:23:03 +0000 (11:23 +0300)]
gsupplicant: Use the right dbus helper when adding a fixed array in a dict
Fixes BMC#25120
Daniel Wagner [Mon, 7 May 2012 13:22:59 +0000 (15:22 +0200)]
ofono: Check for CM attached before registering network
We need to check the ConnectionManager attached signal before
we are allowed to connect to the gprs context:
connmand[592]: plugins/ofono.c:cm_update_attached() /zte_0 Attached 0
[...]
connmand[592]: plugins/ofono.c:context_set_active() /zte_0 active 1
connmand[592]: plugins/ofono.c:set_property() /zte_0 path /zte_0/context1
org.ofono.ConnectionContext.Active
[...]
connmand[592]: plugins/ofono.c:cm_update_attached() /zte_0 Attached 1
Fixes BMC#25112