Daniel Wagner [Tue, 14 Feb 2012 12:40:32 +0000 (13:40 +0100)]
service: Set service state idle when creating from provider
When a new service is created from a provider, the service state
should be initialized. We do this also when creating from a
network object.
Santiago Carot-Nemesio [Mon, 13 Feb 2012 17:43:05 +0000 (18:43 +0100)]
agent: Fix capital letter for mandatory requirement
Sometimes, the mandatory attribute is used with capital letter and
other times it isn't. This patch fixes this issue by setting it to
lower case to be consistant with agent-doc in wich it is written
using lower cases.
Grant Erickson [Mon, 13 Feb 2012 17:56:09 +0000 (09:56 -0800)]
dhcp: Request sending a RFC 1533- and 2132-compliant client-id
Some Internet gateways and Wi-Fi access points are unhappy when the
DHCPv4 client-id option (61) is missing and will refuse to issue a
DHCP lease. Adding the client-id option placates these devices.
This patch requests that a RFC 1533- and 2132-compliant DHCP client-id
option (61) be sent with DHCPv4 packets.
Grant Erickson [Mon, 13 Feb 2012 17:56:08 +0000 (09:56 -0800)]
gdhcp: Add RFC 1533- and 2132-compliant client-id option
This patch adds a function to add a RFC 1533- and 2132-compliant DHCP
client-id option (61) to sent DHCPv4 packets.
Grant Erickson [Mon, 13 Feb 2012 17:56:07 +0000 (09:56 -0800)]
gdhcp: Refactor alloc_dhcp_option to accept string or raw data.
Support specifying NULL-terminated string or raw data for allocated
DHCP options.
Daniel Wagner [Thu, 9 Feb 2012 10:02:17 +0000 (11:02 +0100)]
test-ippool: Test overlapping ranges
Daniel Wagner [Thu, 9 Feb 2012 10:00:35 +0000 (11:00 +0100)]
test-ippool: Rename basic2 to exhaust0
Daniel Wagner [Thu, 9 Feb 2012 09:59:11 +0000 (10:59 +0100)]
test-ippool: Reinit ippool for each test
Daniel Wagner [Thu, 9 Feb 2012 09:57:37 +0000 (10:57 +0100)]
test-ippool: Split basic0 test
Do not test two things in the same function.
Daniel Wagner [Thu, 9 Feb 2012 09:50:35 +0000 (10:50 +0100)]
ippool: Fix collision detection altorithm
Track only private address ranges in a list. If the first IP is
assigned for a range check if a pool collides. For this we need
to check all entries in the list if the new IP is the range of an
allocated pool.
This can be made faster with the right data structure and
algorithm (e.g. segment overlap detection algorithms).
Daniel Wagner [Thu, 9 Feb 2012 09:45:15 +0000 (10:45 +0100)]
ippool: Fix 16 bit block iterator
Daniel Wagner [Mon, 6 Feb 2012 15:49:34 +0000 (16:49 +0100)]
ippool: Add prefixlen argument to __connman_ippool_new/deladdr()
Daniel Wagner [Mon, 13 Feb 2012 14:51:42 +0000 (15:51 +0100)]
test-nat: Add main table tests
This test makes use of the iptables check command.
Daniel Wagner [Mon, 13 Feb 2012 14:51:41 +0000 (15:51 +0100)]
test-nat: Commit table changes
Daniel Wagner [Mon, 13 Feb 2012 14:51:40 +0000 (15:51 +0100)]
nat: Fix typo in iptables rule
Daniel Wagner [Mon, 13 Feb 2012 14:51:39 +0000 (15:51 +0100)]
bridge: Fix __connman_bridge_enable() arguments ordering
Daniel Wagner [Mon, 13 Feb 2012 14:51:38 +0000 (15:51 +0100)]
iptables: Mask address when parsing ip/prefixlen
Netfilter likes to have the address properly masked.
Daniel Wagner [Mon, 13 Feb 2012 14:51:37 +0000 (15:51 +0100)]
iptables-test: Mask address when parsing ip/prefixlen
Netfilter likes to have the address properly masked.
Samuel Ortiz [Mon, 13 Feb 2012 15:26:34 +0000 (16:26 +0100)]
build: Add missing documentation to EXTRA_DIST
Tomasz Bursztyka [Mon, 6 Feb 2012 13:24:22 +0000 (15:24 +0200)]
iptables: Fix rule insertion in a builtin chain
Tomasz Bursztyka [Mon, 6 Feb 2012 13:24:21 +0000 (15:24 +0200)]
tools: Fix rule insertion in a builtin chain into iptables-test
Daniel Wagner [Mon, 6 Feb 2012 12:30:43 +0000 (13:30 +0100)]
tethering: Fix start of IP pool
The pool should start at 2 not 1 since this collides with
the gateway address.
Guillaume Zajac [Sat, 4 Feb 2012 01:13:38 +0000 (17:13 -0800)]
ofono: Update CDMA documentation
Jukka Rissanen [Thu, 2 Feb 2012 15:38:22 +0000 (17:38 +0200)]
resolver: Domain name was not set
When service sets the domain name, the server is NULL.
We must allow this as otherwise dnsproxy will not be able
to append domain name into DNS queries.
Fixes BMC#24712
Daniel Wagner [Wed, 1 Feb 2012 17:51:47 +0000 (18:51 +0100)]
test-nat: Add nat unit test
Daniel Wagner [Wed, 1 Feb 2012 17:51:46 +0000 (18:51 +0100)]
nat: Move nat code into a seperate file
Instead of natting all traffic, nat.c will restrict the masquerading
on given network/mask.
The nat handling code will be reused by session.c
Daniel Wagner [Wed, 1 Feb 2012 17:51:45 +0000 (18:51 +0100)]
tethering: Use notifier to update default interface.
Daniel Wagner [Wed, 1 Feb 2012 17:54:48 +0000 (18:54 +0100)]
bridge: Move bridge code into a seperate file
The bridge handling code will reused by session.c.
Daniel Wagner [Wed, 1 Feb 2012 17:51:43 +0000 (18:51 +0100)]
iptables: Parse also netmask for src/dst addresses
Daniel Wagner [Wed, 1 Feb 2012 17:51:42 +0000 (18:51 +0100)]
iptables-test: Parse also netmask for src/dst addresses
Samuel Ortiz [Fri, 10 Feb 2012 14:53:29 +0000 (15:53 +0100)]
ofono: Check for mcc before using it as an index
Also avoid calling set_regdom is the alpha2 is NULL.
Marcel Holtmann [Sat, 4 Feb 2012 03:53:14 +0000 (19:53 -0800)]
build: Remove --enable-ntpd
Samuel Ortiz [Sat, 4 Feb 2012 00:35:20 +0000 (01:35 +0100)]
AUTHORS: Mention Manfred's contributions
Manfred Kober [Wed, 1 Feb 2012 15:02:52 +0000 (16:02 +0100)]
wifi: Write Wifi Mode to network properties
Currently adhoc networks are shown in the service list, although
connecting to those is not supported. Filtering in network.c fails
because the WiFi.Mode was not set so far.
Fixes BMC#24737
Alok Barsode [Fri, 3 Feb 2012 18:26:06 +0000 (20:26 +0200)]
ntpd: Remove the ntpd plugin
We now have ntp support in the core, hence remove the plugin.
Alok Barsode [Fri, 3 Feb 2012 18:26:05 +0000 (20:26 +0200)]
timeserver: Remove connman_timeserver_driver framework
Alok Barsode [Fri, 3 Feb 2012 18:26:04 +0000 (20:26 +0200)]
timeserver: Remove connman_timeserver_[append/remove]
We do not need to these anymore as we directly use the timeservers from
service.
Alok Barsode [Fri, 3 Feb 2012 18:26:03 +0000 (20:26 +0200)]
timeserver: Check condition to restart timeservers
if we are using service timeservers, then do not restart
ntp if the user modifies system timeservers.
Alok Barsode [Fri, 3 Feb 2012 18:26:02 +0000 (20:26 +0200)]
timeserver: Use service timeserver, if any, before system timeservers
Alok Barsode [Fri, 3 Feb 2012 18:26:01 +0000 (20:26 +0200)]
ntp: Add timeserver switch logic
Add a timeout mechanism to switch to next system timeserver
if the current one does not respond or is a bogus one.
Alok Barsode [Fri, 3 Feb 2012 18:26:00 +0000 (20:26 +0200)]
Add __connman_timerserver_sync() to resolve a list of timeservers
__connman_timerserver_sync() resolves system timeservers one at a time
and queries the resolved server or the 1st of the resolved servers for
time correction. If the resolution fails it resolves the next one.
__connman_timerserver_sync_next() resolves the next system timeserver.
__connman_timerserver_stop() stops this query.If the user modifies the
system timeserver list, we restart the ntp process.
Alok Barsode [Fri, 3 Feb 2012 18:25:59 +0000 (20:25 +0200)]
ntp: NTP Query a Timeserver server IP
__connman_ntp_start() takes a NTP server IP, and starts querying it for
time correction.If a timeserver responds, we continue to query it every
"Poll Interval" seconds for time corrections.
__connman_ntp_stop() stops the polling process.
Alok Barsode [Fri, 3 Feb 2012 18:25:58 +0000 (20:25 +0200)]
service: Free service->timeservers
Alok Barsode [Fri, 3 Feb 2012 18:25:57 +0000 (20:25 +0200)]
dhcp: modify connman_dhcp to add multiple timeservers
Alok Barsode [Fri, 3 Feb 2012 18:25:56 +0000 (20:25 +0200)]
meego: Use system timeserver APIs to add/remove timeservers
Alok Barsode [Fri, 3 Feb 2012 18:25:55 +0000 (20:25 +0200)]
timeserver: Add functions to store/restore timeservers via the clock API
Patrik Flykt [Wed, 1 Feb 2012 14:43:58 +0000 (16:43 +0200)]
manager: Remove RequestScan D-Bus method call
Patrik Flykt [Wed, 1 Feb 2012 14:43:57 +0000 (16:43 +0200)]
device: Notify technology when a scan has started or stopped
Patrik Flykt [Wed, 1 Feb 2012 14:43:56 +0000 (16:43 +0200)]
technology: Implement Technology Scan and scan start/stop functionality
When Technology Scan D-Bus method call is called, add caller to a scan
list and start a scan for the service type. When a device reports scan
completed, check whether it was the last device scanning and reply to
the callers accordingly.
Also check for scanning status when removing devices and technology
objects.
Patrik Flykt [Wed, 1 Feb 2012 14:43:55 +0000 (16:43 +0200)]
device: Return success if scan succeeded for at least one device
Return success on requesting device scan if at least one of the
devices reported success. If scanning was unsuccessful for all
devices, return the error from the last one.
Patrik Flykt [Wed, 1 Feb 2012 14:43:54 +0000 (16:43 +0200)]
device: Return -EOPNOTSUPP if the device does not support scanning
Patrik Flykt [Wed, 1 Feb 2012 14:43:53 +0000 (16:43 +0200)]
wifi: Always set scanning to FALSE in scan callback
By always setting scanning to FALSE in the scan callback,
information for a stopped scan will be processed in
device.c.
Jukka Rissanen [Fri, 3 Feb 2012 11:31:28 +0000 (13:31 +0200)]
vpn: Reference of provider not taken
VPN plugin hooks itself into rtnl newlink watch and gives
provider pointer as user data. We must take reference of the
user data pointer as otherwise we might access invalid pointer
if provider is already removed when rtnl watch is triggered.
This seems to be a rare issue but I had one valgrind crash
because of this.
Tomasz Bursztyka [Wed, 1 Feb 2012 14:38:18 +0000 (16:38 +0200)]
iptables: add capability to check for an existing rule
Tomasz Bursztyka [Wed, 1 Feb 2012 14:38:17 +0000 (16:38 +0200)]
iptables: refactor how an existing rule is found
Tomasz Bursztyka [Wed, 1 Feb 2012 14:38:16 +0000 (16:38 +0200)]
test: adding a fonction to compare a rule against the actual ones
Tomasz Bursztyka [Wed, 1 Feb 2012 14:38:15 +0000 (16:38 +0200)]
test: refactoring rule finding part into iptables-test
Daniel Wagner [Fri, 27 Jan 2012 14:32:01 +0000 (15:32 +0100)]
TODO: Remove IP ranges allocation and check entry
Daniel Wagner [Fri, 27 Jan 2012 14:10:58 +0000 (15:10 +0100)]
ipconfig: Add/del IP address from IP pool
Guillaume Zajac [Mon, 29 Aug 2011 09:32:36 +0000 (11:32 +0200)]
tethering: Add notification callback implementation
Daniel Wagner [Thu, 26 Jan 2012 14:07:45 +0000 (15:07 +0100)]
test-ippool: Add collision unit test
Daniel Wagner [Thu, 26 Jan 2012 13:30:17 +0000 (14:30 +0100)]
ippool: Add API to notify when IP is externally assigned
Guillaume Zajac [Mon, 29 Aug 2011 09:32:34 +0000 (11:32 +0200)]
tethering: Use IP pool API with DHCP
Guillaume Zajac [Mon, 29 Aug 2011 09:32:33 +0000 (11:32 +0200)]
tethering: Use IP pool API with private network
Daniel Wagner [Thu, 26 Jan 2012 15:03:32 +0000 (16:03 +0100)]
test-ippool: Add unit test for ippool
Daniel Wagner [Thu, 26 Jan 2012 15:46:37 +0000 (16:46 +0100)]
ippool: Add IP pool layer
This is based on Guillaume Zajac intial IP pool patches.
Daniel Wagner [Mon, 30 Jan 2012 14:46:16 +0000 (15:46 +0100)]
vpnc: Fix compiler warning
Assignment discards ‘const’ qualifier from pointer target type.
Daniel Wagner [Tue, 31 Jan 2012 15:41:51 +0000 (16:41 +0100)]
session: Send SessionMode property change message
Alok Barsode [Wed, 25 Jan 2012 12:16:41 +0000 (14:16 +0200)]
technology: Fix technology refcounting
technology_add_device and technology_add_rfkill should increment
technology refcount. The refcount denotes the total number of devices
and rfkill switches in the technology. Similarly technology_remove_device
and technology_remove_rfkill should decrement technology refcount.
Once the refcount is 0, which means that there are no devices and rfkill
switches in this technology, technology should be freed.
Alok Barsode [Mon, 30 Jan 2012 10:23:58 +0000 (12:23 +0200)]
technology: Create a list for technology orphaned rfkill switches
If we get a rfkill switch before the technology driver was registered we
would lose track of it as we currently ignoed it. Adding a global rfkill
hash table which can keep a track of technologyless switches untill the
driver for them is loaded. If the driver is not compiled in the switches
will remain in the hash but will not be handled by connman.
Alok Barsode [Mon, 30 Jan 2012 10:16:25 +0000 (12:16 +0200)]
technology: Create a list for technology orphaned devices
If we get a device before the technology driver was registered we
would lose track of it as we ignoed it. Adding a device list which
can keep a track of technologyless devices untill the driver for
them is loaded. If the driver is not compiled in the devices will
remain in the list.
Samuel Ortiz [Fri, 27 Jan 2012 10:49:38 +0000 (11:49 +0100)]
AUTHORS: Mention Guillaume Zajac's contributions
Daniel Wagner [Fri, 27 Jan 2012 10:46:15 +0000 (11:46 +0100)]
oFono: Update documentation
Explain how the plugin works for a GSM modem.
Daniel Wagner [Fri, 20 Jan 2012 13:27:46 +0000 (14:27 +0100)]
show-introspection: Fix technology introspection
Patrik Flykt [Wed, 25 Jan 2012 11:49:45 +0000 (13:49 +0200)]
provider: Don't remove a provider on error
When a provider indicates error, set the corresponding
service error but don't remove the provider.
Patrik Flykt [Wed, 25 Jan 2012 11:49:44 +0000 (13:49 +0200)]
provider: Load providers at provider driver registration time
Load all saved providers that have the same type as the provider
driver being registered. While looking through the storage dir
for directory entries starting with 'provider_', the respective
settings file needs to be opened in order to check the type.
Since the settings file is already opened, load all other settings
as well with the help of the previously factored out functions.
Patrik Flykt [Wed, 25 Jan 2012 11:49:43 +0000 (13:49 +0200)]
provider: Handle connman_provider_load() in provider_create()
Load provider data in provider_create() if provider_register()
returns success.
Patrik Flykt [Wed, 25 Jan 2012 11:49:42 +0000 (13:49 +0200)]
provider: Factor out service creation
Factor out the creation of a service when given a provider.
Patrik Flykt [Wed, 25 Jan 2012 11:49:41 +0000 (13:49 +0200)]
provider: Factor out keyfile loading
Factor out keyfile loading from connman_provider_load() into
a fuction of its own.
Patrik Flykt [Wed, 25 Jan 2012 11:49:40 +0000 (13:49 +0200)]
provider: Don't set provider->name when creating provider struct
Don't unnecessarily set provider->name to the value of the provider
identifier in connman_provider_get() since it's going to be reset
immediately to the supplied provider name.
Patrik Flykt [Wed, 25 Jan 2012 11:49:39 +0000 (13:49 +0200)]
vpn: Add check for properly initialized driver_hash
Patrik Flykt [Wed, 25 Jan 2012 11:49:38 +0000 (13:49 +0200)]
storage: Function to fetch all saved providers
Implement __connman_storage_get_providers() to fetch all stored
providers.
Daniel Wagner [Wed, 25 Jan 2012 09:14:48 +0000 (10:14 +0100)]
AUTHORS: Mention Daniel's contributions
Daniel Mack [Wed, 21 Dec 2011 10:18:20 +0000 (11:18 +0100)]
iptables: Avoid NULL pointer dereference in table_cleanup()
Patrik Flykt [Fri, 20 Jan 2012 14:30:39 +0000 (16:30 +0200)]
technology: Remove 'State' property from Technology
Patrik Flykt [Fri, 20 Jan 2012 14:30:38 +0000 (16:30 +0200)]
technology: Add 'Connected' Technology property
Set Technology property 'Connected' to true if at least one service
for the Technology is connected; false otherwise.
Jukka Rissanen [Fri, 20 Jan 2012 10:01:49 +0000 (12:01 +0200)]
network: Add caller information to ref/unref debug prints.
Jukka Rissanen [Fri, 20 Jan 2012 10:01:48 +0000 (12:01 +0200)]
device: Add caller information to ref/unref debug prints.
Jukka Rissanen [Fri, 20 Jan 2012 10:01:47 +0000 (12:01 +0200)]
provider: Add caller information to ref/unref debug prints.
Jukka Rissanen [Fri, 20 Jan 2012 10:01:46 +0000 (12:01 +0200)]
ipconfig: Add caller information to ref/unref debug prints.
Jukka Rissanen [Fri, 20 Jan 2012 10:01:45 +0000 (12:01 +0200)]
service: Add caller information to ref/unref debug prints.
This helps to pin point the exact line/function who is taking the reference.
Patrik Flykt [Fri, 20 Jan 2012 12:01:28 +0000 (14:01 +0200)]
test-connman: Use Powered property to enable/disable Technologies
Daniel Wagner [Fri, 20 Jan 2012 08:05:12 +0000 (09:05 +0100)]
technology: Add object path to TechnologyAdded signal
As it is described in the manager-api.txt document.
Jukka Rissanen [Fri, 20 Jan 2012 07:53:58 +0000 (09:53 +0200)]
dnsproxy: Check that cache is valid before accessing it.
The cache can become invalid by just disconnecting a service.
In that case we must not access the cache hash.
Jukka Rissanen [Tue, 10 Jan 2012 09:22:01 +0000 (11:22 +0200)]
network: Avoid double network disconnect.
Jukka Rissanen [Tue, 10 Jan 2012 09:22:00 +0000 (11:22 +0200)]
network: Refactor set_connected() function.
The set_connected() is split to two parts, the disconnect
part is in set_disconnected() function.
Daniel Wagner [Thu, 19 Jan 2012 10:24:16 +0000 (11:24 +0100)]
ofono: Cancel pending SetProperty
If the cellular technolgy is disabled while ConnMan is connected
to a cellular network, the plugin gets first a network_disconnect()
call and shortly after that a modem_disable(). network_disconnect()
will set org.ofono.ConnectionContext.Active to false while this call
is pending modem_disable() tries to set org.ofono.Modem.Online to false.
There is no point in waiting for the first call to succeed or fail.
Just cancel it and set the modem offline.
Fixes BMC#24651.
Jukka Rissanen [Thu, 19 Jan 2012 14:31:44 +0000 (16:31 +0200)]
provider: Remove provider from the hash properly
We must not just do connman_provider_unref(provider) as that will
leave the provider to the provider_hash and we will get free memory
access error. We can just remove the provider from the hash and
that will unref the provider automagically.
Jukka Rissanen [Thu, 19 Jan 2012 14:31:43 +0000 (16:31 +0200)]
provider: VPN service can be null
Alok Barsode [Wed, 18 Jan 2012 15:13:49 +0000 (15:13 +0000)]
technology: Fix g_dbus_emit_signal argument
Fixes BMC#24636