Daniel Wagner [Mon, 17 Dec 2012 11:03:59 +0000 (12:03 +0100)]
agent: Don't crash when no agent was registered on exit
If the user never registered an agent, agent_sender and agent_path
are NULL. D-Bus does not handle this gracefully, instead it kills
ConnMan. So let's skip the D-Bus part in this case.
connmand[4271]: src/agent.c:connman_agent_driver_unregister() Sending release to (null) path (null) iface net.connman.Agent
process 4271: arguments to dbus_message_new_method_call() were incorrect, assertion "path != NULL" failed in file dbus-message.c line 1198.
This is normally a bug in some application using the D-Bus library.
D-Bus not built with -rdynamic so unable to print a backtrace
connmand[4271]: Aborting (signal 6) [./src/connmand]
connmand[4271]: ++++++++ backtrace ++++++++
connmand[4271]: #0 0x3a9920f500 in /lib64/libpthread.so.0
connmand[4271]: #1 0x3a98e36285 in /lib64/libc.so.6
connmand[4271]: #2 0x3a98e37b9b in /lib64/libc.so.6
connmand[4271]: #3 0x3c7602fff5 in /lib64/libdbus-1.so.3
connmand[4271]: #4 0x3c76026fc1 in /lib64/libdbus-1.so.3
connmand[4271]: #5 0x3c76018aea in /lib64/libdbus-1.so.3
connmand[4271]: #6 0x45b8b1 in connman_agent_driver_unregister() at src/agent.c:426
connmand[4271]: #7 0x457b7c in __connman_service_cleanup() at src/service.c:6756
connmand[4271]: #8 0x43f54f in main() at src/main.c:702
connmand[4271]: #9 0x3a98e2169d in /lib64/libc.so.6
connmand[4271]: +++++++++++++++++++++++++++
Marcel Holtmann [Fri, 14 Dec 2012 15:09:54 +0000 (16:09 +0100)]
main: Small cleanup for config file parsing and checking
Patrik Flykt [Fri, 14 Dec 2012 14:55:55 +0000 (16:55 +0200)]
main: Add function to check for main.conf groups and keys
Print out a warning on an unknown group and unknown keys in the "General"
group.
Patrik Flykt [Fri, 14 Dec 2012 14:55:54 +0000 (16:55 +0200)]
main: Use defines for main.conf keys
Patrik Flykt [Fri, 14 Dec 2012 11:01:19 +0000 (13:01 +0200)]
vpn-provider: Report disconnect errors other than -EINPROGRESS
Return code -EINPROGRESS is an indication of a disconnect taking place,
not a disconnect error.
Patrik Flykt [Fri, 14 Dec 2012 11:01:18 +0000 (13:01 +0200)]
vpn-provider: Set state when connecting and disconnecting
Update provider state when connect or disconnect is initiated.
Patrik Flykt [Fri, 14 Dec 2012 11:01:17 +0000 (13:01 +0200)]
vpn-plugin: Send proper response to caller and connect if needed
Send a proper response to the caller and attempt to connect if the
provider data exists but is not connected.
Patrik Flykt [Fri, 14 Dec 2012 11:01:16 +0000 (13:01 +0200)]
vpn: Clear pending connect flag on connect attempt
Fixes BMC#25894
Patrik Flykt [Wed, 12 Dec 2012 09:39:00 +0000 (11:39 +0200)]
technology: Soft block on offline mode or disabled technology
When adding an rfkill device which is unblocked, soft block it immediately
if offline mode is enabled or the technology (enable_persistent) is
disabled.
Fixes BMC#25858
Marcel Holtmann [Tue, 11 Dec 2012 12:49:30 +0000 (13:49 +0100)]
README: Add extra empty line between sections
Marcel Holtmann [Tue, 11 Dec 2012 11:38:08 +0000 (12:38 +0100)]
unit: Fix differences with including gdbus.h header
Marcel Holtmann [Tue, 11 Dec 2012 11:37:45 +0000 (12:37 +0100)]
client: Fix up header inclusion mess
Marcel Holtmann [Tue, 11 Dec 2012 11:30:50 +0000 (12:30 +0100)]
client: Do not include headers from the core
Marcel Holtmann [Tue, 11 Dec 2012 11:22:52 +0000 (12:22 +0100)]
client: Provide own D-Bus helper functions
Marcel Holtmann [Tue, 11 Dec 2012 11:13:17 +0000 (12:13 +0100)]
client: Remove useless circular inclusion protection
Marcel Holtmann [Tue, 11 Dec 2012 11:11:47 +0000 (12:11 +0100)]
client: Add missing includes of config.h
Marcel Holtmann [Tue, 11 Dec 2012 11:07:08 +0000 (12:07 +0100)]
client: Fix the mangled copyright statement
In addition relax it to GPLv2 or later to make linking against
newer versions of readline library possible.
Marcel Holtmann [Tue, 11 Dec 2012 00:23:46 +0000 (01:23 +0100)]
build: Fix typo in command line client configure option
Patrik Flykt [Mon, 10 Dec 2012 10:42:05 +0000 (12:42 +0200)]
vpn-plugin: Check completion of configure and connect
When creating a configuration, wait until both configuration and
connection has been done. Otherwise NULL user data is passed to the
callback which then cannot relay an error to the caller and the caller will
get a timeout waiting for a reply from D-Bus.
Patrik Flykt [Mon, 10 Dec 2012 10:42:04 +0000 (12:42 +0200)]
vpn-plugin: Propagate most common errors to callback function
Instead of always setting the create callback function error to
-ECONNREFUSED, create a helper function to detect the two most often emitted
errors.
Patrik Flykt [Mon, 10 Dec 2012 10:42:03 +0000 (12:42 +0200)]
manager: -EINPROGRESS is a valid response for ConnectProvider
With VPN connections being handled by connman-vpnd, -EINPROGRESS is a
valid value to report to the caller if the VPN is already connecting.
Daniel Wagner [Thu, 6 Dec 2012 07:37:11 +0000 (08:37 +0100)]
session_policy_local: Create policy directory if necessary
Create the policy directory as first thing. If we don't do this
adding a watch on the non existing directory will fail and the
whole plugin is not loaded.
We need to figure out later how permissive the MODE of the directory
should be. Currently, we play safe and have it tied down.
Daniel Wagner [Wed, 5 Dec 2012 13:57:50 +0000 (14:57 +0100)]
session: Call callback directly when no plugin is assigned
When we have no plugin assigned we have to call the final
session callback directly.
Since __connman_session_create() doesn't know if a plugin was
called or not, create_policy_config() or __connman_session_create()
needs to free all allocated resources (also in the error path).
Daniel Wagner [Wed, 5 Dec 2012 13:57:49 +0000 (14:57 +0100)]
session: Add a cleanup function for the user config
This helps to make the error path more readable.
Daniel Wagner [Wed, 5 Dec 2012 13:57:48 +0000 (14:57 +0100)]
session: Move cleanup/destroy function up
We need to call those function from create_policy_config() therefore
more it in front of it.
Daniel Wagner [Wed, 5 Dec 2012 13:57:47 +0000 (14:57 +0100)]
session: Return error code from callback
In the case the callback is directly called we can use the
return value to provide it to the user.
Daniel Wagner [Wed, 5 Dec 2012 13:57:46 +0000 (14:57 +0100)]
session: Fix error case handling
There is no need to unref the pending message, because in all
cases we generate a reply message which takes care of unrefing
the message. Hence the dbus_message_unref() is not needed.
Furthermore, we need to pass the created error message to the bus
via g_dbus_send_message() so that the client gets always a response.
Daniel Wagner [Wed, 5 Dec 2012 13:57:45 +0000 (14:57 +0100)]
session: Fix error return code
The error codes propagated over D-Bus are non-negative values.
Daniel Wagner [Wed, 5 Dec 2012 13:57:44 +0000 (14:57 +0100)]
session: Remove notify watch
free_session() will be also called from the error path (e.g.
__connman_session_create()). In case we have added a watch
we need to disarm it.
Jukka Rissanen [Wed, 5 Dec 2012 11:11:41 +0000 (13:11 +0200)]
test: simple-agent must monitor vpn status
simple-agent needs to monitor vpnd status as vpnd can stop if there
are no vpn configured. When vpnd quits we must not quit the agent
as then wifi questions would not be asked from the user any more.
Patrik Flykt [Wed, 5 Dec 2012 13:33:43 +0000 (15:33 +0200)]
TODO: Add unit test task
Patrik Flykt [Wed, 5 Dec 2012 11:32:04 +0000 (13:32 +0200)]
build: Fix build to enable session-policy-local
Daniel Wagner [Wed, 5 Dec 2012 09:45:00 +0000 (11:45 +0200)]
session_policy: Remove dummy plugin
The default configuration will be created by the core if no
plugin is used. Therefore there is no need for this plugin.
Daniel Wagner [Wed, 5 Dec 2012 09:44:59 +0000 (11:44 +0200)]
session_policy_local: Rename session_policy_ivi
On popular request the plugin is renamed. The plugin is reading
local files and has nothing to do with IVI.
Daniel Wagner [Wed, 5 Dec 2012 09:44:58 +0000 (11:44 +0200)]
session_policy_ivi: Initialize variable and remove an unused one
Remove unused 'err' variable and properly initialize 'ident' for error cases.
Daniel Wagner [Wed, 5 Dec 2012 09:44:57 +0000 (11:44 +0200)]
build: Fix non-builtin session-plugin
The session ivi plugin needs to know where STORAGEDIR points to.
Jukka Rissanen [Mon, 3 Dec 2012 07:45:47 +0000 (09:45 +0200)]
dhcpv6: Memory leak when sending Option Request Option
Jukka Rissanen [Fri, 30 Nov 2012 13:51:12 +0000 (15:51 +0200)]
pptp: Header file was missing
Jukka Rissanen [Fri, 30 Nov 2012 13:51:11 +0000 (15:51 +0200)]
l2tp: Header file was missing
Patrik Flykt [Fri, 30 Nov 2012 12:10:03 +0000 (14:10 +0200)]
TODO: Add tasks for variable types and data structures
Jukka Rissanen [Fri, 30 Nov 2012 09:30:54 +0000 (11:30 +0200)]
pptp: Clear password when disconnecting
Jukka Rissanen [Fri, 30 Nov 2012 09:30:53 +0000 (11:30 +0200)]
l2tp: Clear password when disconnecting
Jukka Rissanen [Fri, 30 Nov 2012 09:30:51 +0000 (11:30 +0200)]
vpn: Driver disconnect needs provider information
The provider pointer needs to be passed to VPN driver when
disconnecting. Otherwise we cannot find the correct provider
that is being disconnected.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:50 +0000 (11:30 +0200)]
vpn-provider: Unregister provider from dbus when freed
The provider object was not unregistered from dbus watch
when the provider was removed which caused free memory access
error.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:49 +0000 (11:30 +0200)]
vpn-provider: Register agent driver
Jukka Rissanen [Fri, 30 Nov 2012 09:30:48 +0000 (11:30 +0200)]
agent: Release all agents when stopping
Jukka Rissanen [Fri, 30 Nov 2012 09:30:47 +0000 (11:30 +0200)]
pptp: Do not save the password
Jukka Rissanen [Fri, 30 Nov 2012 09:30:46 +0000 (11:30 +0200)]
l2tp: Do not save the password
Jukka Rissanen [Fri, 30 Nov 2012 09:30:45 +0000 (11:30 +0200)]
pptp: Ask username and password from agent
Jukka Rissanen [Fri, 30 Nov 2012 09:30:44 +0000 (11:30 +0200)]
l2tp: Ask username and password from agent
Jukka Rissanen [Fri, 30 Nov 2012 09:30:43 +0000 (11:30 +0200)]
vpn-agent: Routine to add username and password into agent dict
Jukka Rissanen [Fri, 30 Nov 2012 09:30:42 +0000 (11:30 +0200)]
openconnect: Add support for --no-cert-check client option
Jukka Rissanen [Fri, 30 Nov 2012 09:30:41 +0000 (11:30 +0200)]
openconnect: Domain pointer was used incorrectly
We must allocate the domain name from the heap and not
point to it directly because the dbus library will deallocate
it and we will have invalid memory access.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:40 +0000 (11:30 +0200)]
test: Add vpn agent support into simple-agent
Jukka Rissanen [Fri, 30 Nov 2012 09:30:39 +0000 (11:30 +0200)]
openconnect: Add asking cookie from agent
It is possible to ask the cookie from agent for OpenConnect
VPN client. The agent should connect to VPN gateway, get the
HTML page, show the page in window or parse the HTML, then
allow user to feed the user id and passphrase and post the result.
The server will then return cookie to agent which should pass
the cookie to openconnect plugin in connman-vpnd daemon.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:38 +0000 (11:30 +0200)]
vpn-agent: Add generic functions to add information into agent dict
Jukka Rissanen [Fri, 30 Nov 2012 09:30:37 +0000 (11:30 +0200)]
vpn: Make VPN plugin connection function async
This is needed as we want to ask user the passwords etc.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:36 +0000 (11:30 +0200)]
vpn-provider: Add getter functions
Jukka Rissanen [Fri, 30 Nov 2012 09:30:35 +0000 (11:30 +0200)]
vpn: Add initial support for async connect
Needed for agent VPN support.
Jukka Rissanen [Fri, 30 Nov 2012 09:30:34 +0000 (11:30 +0200)]
doc: Describe VPN agent API
Luiz Augusto von Dentz [Tue, 27 Nov 2012 12:51:20 +0000 (14:51 +0200)]
gdbus: Add g_dbus_add_properties_watch function
Convenient function to create watches for D-Bus properties.
Lucas De Marchi [Thu, 29 Nov 2012 13:19:32 +0000 (11:19 -0200)]
gdbus: Don't automatically attach ObjectManager
Let each project attach the object manager interface instead of
registering it automatically.
Lucas De Marchi [Thu, 29 Nov 2012 13:19:31 +0000 (11:19 -0200)]
gdbus: Don't register DBus.Properties with no properties
Delay registering DBus.Properties interface until the moment there are
properties on that path. This is needed for objects that currently don't
expose any property to not export the interface.
Daniel Wagner [Thu, 29 Nov 2012 08:38:14 +0000 (09:38 +0100)]
build: Disable FORTIFY_SOURCE when optimization is disabled
The last fix was wrong. We need to use U_FORTIFY_SOURCE flag for this.
Patrik Flykt [Tue, 27 Nov 2012 11:48:30 +0000 (13:48 +0200)]
dnsproxy: Fix hash table comparison function to avoid crash
Jukka Rissanen [Mon, 26 Nov 2012 13:58:51 +0000 (15:58 +0200)]
build: Add VPN documentation files into dist tar file
Jukka Rissanen [Mon, 26 Nov 2012 12:47:23 +0000 (14:47 +0200)]
vpn-provider: VPN driver pointer was not cleared
When VPN driver is unregistered, we must clear the corresponding
pointer in provider struct. If this is not done we will have
already freed memory access in clean_provider() function.
Jukka Rissanen [Mon, 26 Nov 2012 12:47:12 +0000 (14:47 +0200)]
vpn-main: Plugin cleanup was not done
Jukka Rissanen [Mon, 26 Nov 2012 10:16:32 +0000 (12:16 +0200)]
vpn: Cleanup properly if vpn connect fails
Make sure that user callback data is cleared correctly
if vpn connect attempt fails.
Jukka Rissanen [Mon, 26 Nov 2012 13:29:29 +0000 (15:29 +0200)]
vpn: Cleanup vpn connections when vpnd dies
Jukka Rissanen [Mon, 26 Nov 2012 12:56:39 +0000 (14:56 +0200)]
vpn: Do not remove vpn connections hash when vpnd dies
We must keep the vpn connections hash alive as long as
connman is running. We must not remove the hash when
vpnd dies, otherwise we might feed null pointer to
various glib hash functions.
Patrik Flykt [Mon, 26 Nov 2012 13:40:02 +0000 (15:40 +0200)]
build: Fix up distribution dependencies in makefiles
Ensure all files needed at build time are added to the distribution
tar file, especially those for VPN. Files in any *_SOURCES variables
or ending with *.in are already covered.
Szymon Janc [Wed, 21 Nov 2012 10:21:03 +0000 (11:21 +0100)]
gdbus: Remove not needed NULL pointer checks
g_strdup returns NULL if argument passed is NULL and there is no need
to double check that.
Syam Sidhardhan [Tue, 23 Oct 2012 13:57:06 +0000 (19:27 +0530)]
gdbus: Replace leading spaces with tabs
Trivial formatting fix.
Syam Sidhardhan [Wed, 14 Nov 2012 13:07:10 +0000 (18:37 +0530)]
gdbus: Fix compilation error due to missing #defines
Since these are simple #define strings, we are defining it here
instead of upgrading to D-Bus 1.5 or later.
Log:
CC gdbus/object.o
gdbus/object.c: In function ‘properties_set’:
gdbus/object.c:876:7: error: ‘DBUS_ERROR_UNKNOWN_PROPERTY’ undeclared
(first use in this function)
gdbus/object.c:876:7: note: each undeclared identifier is reported
only once for each function it appears in
gdbus/object.c:881:6: error: ‘DBUS_ERROR_PROPERTY_READ_ONLY’
undeclared (first use in this function)
make[1]: *** [gdbus/object.o] Error 1
make: *** [all] Error 2
Lucas De Marchi [Wed, 17 Oct 2012 15:14:28 +0000 (12:14 -0300)]
gdbus: Remove connection from pending_property functions
The reply to a DBus.Properties.Set() method call should go through the
same D-Bus connection. Thus remove the DBusConnection parameter from the
following functions:
- g_dbus_pending_property_success()
- g_dbus_pending_property_error_valist()
- g_dbus_pending_property_error()
Johan Hedberg [Mon, 15 Oct 2012 10:21:11 +0000 (13:21 +0300)]
gdbus: Fix invalid memory access during interface removal
If an interface is removed from the root path during the same mainloop
iteration that it was added we need to check for data->added before
doing the check for data->parent == NULL in the remove_interface()
function. Otherwise the added interface doesn't get removed from the
data->added list and will result in accessing freed memory:
==337== Invalid read of size 8
==337== at 0x4F65AFA: dbus_message_iter_append_basic (in /usr/lib64/libdbus-1.so.3.7.1)
==337== by 0x1247B5: append_interface (object.c:556)
==337== by 0x4C8DC5C: g_slist_foreach (gslist.c:840)
==337== by 0x1261F7: process_changes (object.c:594)
==337== by 0x126372: generic_unregister (object.c:997)
==337== by 0x4F69669: ??? (in /usr/lib64/libdbus-1.so.3.7.1)
==337== by 0x4F5CE51: dbus_connection_unregister_object_path (in /usr/lib64/libdbus-1.so.3.7.1)
==337== by 0x125E81: object_path_unref (object.c:1236)
==337== by 0x126136: g_dbus_unregister_interface (object.c:1361)
==337== by 0x14CDF0: service_exit (service.c:581)
==337== by 0x177556: plugin_cleanup (plugin.c:242)
==337== by 0x12221F: main (main.c:559)
==337== Address 0x5bc1550 is 0 bytes inside a block of size 56 free'd
==337== at 0x4A079AE: free (vg_replace_malloc.c:427)
==337== by 0x4C7850E: g_free (gmem.c:252)
==337== by 0x125DB0: remove_interface (object.c:671)
==337== by 0x125E3B: object_path_unref (object.c:1230)
==337== by 0x126136: g_dbus_unregister_interface (object.c:1361)
==337== by 0x14CDF0: service_exit (service.c:581)
==337== by 0x177556: plugin_cleanup (plugin.c:242)
==337== by 0x12221F: main (main.c:559)
Johan Hedberg [Fri, 12 Oct 2012 08:55:37 +0000 (10:55 +0200)]
gdbus: Add g_dbus_get_properties function
This function can be used to construct custom D-Bus messages containing
the properties for a specific interface on a given path.
Johan Hedberg [Thu, 11 Oct 2012 09:53:27 +0000 (11:53 +0200)]
gdbus: Add support for invalidated properties
If there's a pending property but its exists() callback returns false
the property should be considered invalidated and included in the
relevant list of the PropertiesChanged signal.
Johan Hedberg [Mon, 8 Oct 2012 12:36:12 +0000 (14:36 +0200)]
gdbus: Fix processing pending properties in remove_interface()
Lucas De Marchi [Sat, 6 Oct 2012 07:02:35 +0000 (04:02 -0300)]
gdbus: Fix up Properties.Set() code path
Minor fixes to make setter actually work:
- Add propdata in pending_property_set
- Break loop when we are removing propdata from list and we
found it
- in_args and out_args were swapped
- interface and method name arguments were swapped
Lucas De Marchi [Thu, 4 Oct 2012 20:42:33 +0000 (17:42 -0300)]
gdbus: Fix invalid memory access while unregistering
If an interface is added and removed on the same mailoop iteration,
ObjectManager would try to send InterfacesAdded signal while running the
idler because the interface was added to data->added list.
This is easily reproduced by forcing an error path in a plugin
registration, like on sap_server_register(), resulting in the following
error:
==11795== Invalid read of size 4
==11795== at 0x496F592: dbus_message_iter_append_basic (dbus-message.c:2598)
==11795== by 0x117B39: append_interface (object.c:554)
==11795== by 0x48955E7: g_slist_foreach (gslist.c:840)
==11795== by 0x11923B: process_changes (object.c:592)
==11795== by 0x11956D: generic_unregister (object.c:980)
==11795== by 0x4973BAC: _dbus_object_tree_unregister_and_unlock (dbus-object-tree.c:516)
==11795== by 0x4965240: dbus_connection_unregister_object_path (dbus-connection.c:5776)
==11795== by 0x1178A5: object_path_unref (object.c:1219)
==11795== by 0x118517: g_dbus_unregister_interface (object.c:1344)
==11795== by 0x19AF5B: sap_exit (sap.c:385)
==11795== by 0x13E9E2: sap_server_register (server.c:1428)
==11795== by 0x13C092: sap_server_probe (manager.c:44)
With this patch we don't send the InterfacesAdded signal, removing it
from data->added while unregistering.
Lucas De Marchi [Thu, 4 Oct 2012 07:26:37 +0000 (04:26 -0300)]
gdbus: Implement PropertiesChanged signal
Luiz Augusto von Dentz [Thu, 4 Oct 2012 07:26:36 +0000 (04:26 -0300)]
gdbus: Simplify code for appending properties
This reuse append_properties for GetAll and GetManagedObjects
Luiz Augusto von Dentz [Thu, 4 Oct 2012 07:26:35 +0000 (04:26 -0300)]
gdbus: Integrates ObjectManager with Properties interface
This appends the properties and its values when using ObjectManager.
Luiz Augusto von Dentz [Thu, 4 Oct 2012 07:26:34 +0000 (04:26 -0300)]
gdbus: Only export ObjectManager interface on root path
ObjectManager should be exported only in the root path and list all
the children paths.
Luiz Augusto von Dentz [Thu, 4 Oct 2012 07:26:33 +0000 (04:26 -0300)]
gdbus: Group interface changes to reduce the amount of signals emitted
InterfacesAdded and InterfacesRemoved can group all the interfaces
changes together in one message.
Luiz Augusto von Dentz [Thu, 4 Oct 2012 07:26:32 +0000 (04:26 -0300)]
gdbus: Add support for org.freedesktop.DBus.ObjectManager interface
This implements initial support for ObjectManager, it automatically adds
objects to its parents so no action is needed by daemons to get their
objects managed by this interface.
ObjectManager is part of D-Bus spec since revision 0.17:
http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager
Lucas De Marchi [Thu, 4 Oct 2012 07:26:31 +0000 (04:26 -0300)]
gdbus: Add properties into Introspectable interface
Lucas De Marchi [Thu, 4 Oct 2012 07:26:30 +0000 (04:26 -0300)]
gdbus: Implement DBus.Properties.Set method
Contrary to Get() and GetAll(), Set() is asynchronous so we pass an id
to the setter so later it can declare the Set() as successful or
otherwise.
Lucas De Marchi [Thu, 4 Oct 2012 07:26:29 +0000 (04:26 -0300)]
gdbus: Implement DBus.Properties.GetAll method
Lucas De Marchi [Thu, 4 Oct 2012 07:26:28 +0000 (04:26 -0300)]
gdbus: Implement DBus.Properties.Get method
Lucas De Marchi [Thu, 4 Oct 2012 07:26:27 +0000 (04:26 -0300)]
gdbus: Add skeleton of DBus.Properties interface
This interface is responsible for handling properties of all objects in
a given path. Right now it only registers itself, doing nothing useful.
A conversion to this new layout will be done by subsequent patches.
org.freedesktop.org.DBus.Properties spec can be found at
http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-properties
Lucas De Marchi [Thu, 4 Oct 2012 07:26:26 +0000 (04:26 -0300)]
gdbus: Use macros to add annotations
Besides being more readable this way it avoids going over 80 chars.
Lucas De Marchi [Thu, 4 Oct 2012 07:26:25 +0000 (04:26 -0300)]
gdbus: Move typedefs up
Move the typedefs up so they can be used by functions and callbacks.
Jukka Rissanen [Wed, 31 Oct 2012 09:05:58 +0000 (11:05 +0200)]
TODO: systemd no longer log twice to syslog
Fixed by
295cc8b57ce12257a9e90ea2e15e0d610e072e0a
Daniel Wagner [Tue, 13 Nov 2012 16:28:15 +0000 (17:28 +0100)]
session_policy_ivi: Implement policy load function
If config file should also be parsed and the values then stored in
the config object.
Daniel Wagner [Wed, 14 Nov 2012 16:16:39 +0000 (17:16 +0100)]
session_policy_ivi: Watch for changes on policy files
Monitor changes on the config files. Either create, modify or destroy
them according the events we get from the inotify interface.
Daniel Wagner [Fri, 2 Nov 2012 16:26:22 +0000 (17:26 +0100)]
session_policy_ivi: Add hash table to track idents
Introduce the second hash table which tracks the config object lifetime
based on the file existens. The parsing of the file and creation of the
config object is part of the next patch.
Daniel Wagner [Fri, 2 Nov 2012 16:26:21 +0000 (17:26 +0100)]
session_policy_ivi: Create session config
The policy data object is refcounted because the policy data
object can be created either through the session core or
from the file based policy. In order to avoid complex logic
which tries to figure out when to is safe to destroy the object
we just fall back to refcountig.
polich_hash is the owner of the policy object. When a object is
created it is stored there. The key is the identitfier. Since the
session core does not know about the identifier we introduce
an additional hash table which maps from session pointer to the policy
object.