summaryrefslogtreecommitdiff
path: root/src/bus-driverd
AgeCommit message (Collapse)Author
2014-04-13bus: process AddMatch/RemoveMatch driver call in proxyLennart Poettering
Previously, AddMatch/RemoveMatch calls where processed exclusively in the proxy. That's racy however, since subscribing to a signal might not complete before the signal is sent due to some subsequent method call. Hence, in order to expose the same ordering guarantees as dbus1 process the AddMatch/RemoveMatch calls from the proxy, so that they are dispatched synchronously to all following messages, thus fixing the race. Ultimately, we should probabably dissolve the driver entirely into the proxy, as it is purely a compatibility feature anyway...
2014-04-10bus: catch up with kdbus changes (ABI break)Kay Sievers
2014-03-04Introduce strv_consume which takes ownershipZbigniew Jędrzejewski-Szmek
This mirrors set_consume and makes the common use a bit nicer.
2014-02-20api: in constructor function calls, always put the returned object pointer ↵Lennart Poettering
first (or second) Previously the returned object of constructor functions where sometimes returned as last, sometimes as first and sometimes as second parameter. Let's clean this up a bit. Here are the new rules: 1. The object the new object is derived from is put first, if there is any 2. The object we are creating will be returned in the next arguments 3. This is followed by any additional arguments Rationale: For functions that operate on an object we always put that object first. Constructors should probably not be too different in this regard. Also, if the additional parameters might want to use varargs which suggests to put them last. Note that this new scheme only applies to constructor functions, not to all other functions. We do give a lot of freedom for those. Note that this commit only changes the order of the new functions we added, for old ones we accept the wrong order and leave it like that.
2014-02-10includes: remove duplicate includesTom Gundersen
Found by the new check-includes make target.
2014-01-29bus: the owner of the bus driver name as reported by the driver'sLennart Poettering
GetNameOwner() bus call is the bus driver name itself, for compatibility with dbus1
2014-01-27bus: add API calls for connecting to starter busLennart Poettering
Add new calls sd_bus_open() and sd_bus_default() for connecting to the starter bus a service was invoked for, or -- if the process is not a bus-activated service -- the appropriate bus for the scope the process has been started in.
2014-01-09bus: make the bus driver support the driver interface under both / and ↵Lennart Poettering
/org/freedesktop/DBus Some clients apparently use the "/" path instead of "/org/freedesktop/DBus". dbus-daemon didn't care, so we need to support both.
2014-01-08driverd: fix use-after-free error when maintaining match listsLennart Poettering
2014-01-08Revert "bus-driverd: do not track identical matches"Kay Sievers
This reverts commit 234e28aa1cd37dee597c719ac5ca004c6215d28c.
2014-01-08bus-driverd: do not track identical matchesKay Sievers
Identical matches are only one time in the hash map but multiple times in the list; when removing, the hash will be empty but the list still has entries. Not adding dupicates to the list should keep us in sync and prevent hitting the assert.
2014-01-08bus-driverd: properly reply to UpdateActivationEnvironment callKay Sievers
2014-01-08bus-driverd: implement UpdateActivationEnvironment methodKay Sievers
2014-01-08bus-driverd: support user modeKay Sievers
2014-01-05Revert "bus: driverd: don't attempt to remove from empty list"Kay Sievers
We need to find the real reason for the failure, this just avoids the symptoms. This reverts commit 215c7625dd510759290d45d6c46434e4338843ec.
2014-01-05bus: driverd: don't attempt to remove from empty listMarc-Antoine Perennou
2013-12-28bus: driverd; add missing format string parameterMarc-Antoine Perennou
This was causing a nasty coredump
2013-12-24bus: fix return message if StartServiceByName() in the driver fails dueLennart Poettering
to non-existing service
2013-12-24log: log_error() and friends add a newline after each line anyway, so avoid ↵Lennart Poettering
including it in the log strings
2013-12-23bus: update kdbus.hKay Sievers
2013-12-21bus: fix bad memory access in driverd when we get an empty triggers listLennart Poettering
2013-12-21driverd: properly handle NameHasOwner() for unique namesLennart Poettering
2013-12-21bus: unify credential query code in driverdLennart Poettering
2013-12-21bus: when client asks driverd for credentials of a name, return a useful ↵Lennart Poettering
error if that name doesn't exist on the bus
2013-12-21driverd: make sure AddMatch is accessible without privilegesLennart Poettering
2013-12-21driverd: sort list of names returned by ListNamesLennart Poettering
2013-12-19bus: fix exit-on-idle for driverdLennart Poettering
2013-12-19driverd: implement AddMatch/RemoveMatch logicLennart Poettering
2013-12-18bus-driverd: fix flags translation in driver_request_nameLukasz Skalski
Flags for a name entry (KDBUS_NAME_*) should be set for cmd_name->flags (not conn_flags)
2013-12-18bus: beef up driverdLennart Poettering
Add validity checks for all parameters passed in. Implement ReleaseName and StartServiceByName(). Fix access control in vtable.
2013-12-17bus: properly return an error code when release_name fails abnormallyLennart Poettering
2013-12-17bus-driverd: Fix return code in driver_request_nameLukasz Skalski
RequestName return codes should be consistent with Dbus Specification. VALUE - DESCRIPTION 1-The caller is now the primary owner of the name, replacing any previous owner, 2-The name already had an owner (QUEUE flag was not specified), 3-The name already has an owner (QUEUE flag was specified), 4-Application trying to request ownership of a name is already the owner of it.
2013-12-17bus: removed unused variable in driverdThomas Hindoe Paaboel Andersen
acked by Daniel Mack
2013-12-17bus: make driverd code more similar to other daemons, and make it exit on ↵Lennart Poettering
idle among other things
2013-12-17bus: install unit files for new driver serviceLennart Poettering
2013-12-17bus-driverd: Fix unique name return in driver_get_name_ownerLukasz Skalski
2013-12-16bus-driverd: actually add --versionZbigniew Jędrzejewski-Szmek
2013-12-16Add bus-driverdDaniel Mack
systemd-bus-driverd is a small daemon that connects to kdbus and implements the org.freedesktop.DBus interface. IOW, it provides the bus functions traditionally taken care for by dbus-daemon. Calls are proxied to kdbus, either via libsystemd-bus (were applicable) or with the open-coded use of ioctl(). Note that the implementation is not yet finished as the functions to add and remove matches and to start services by name are still missing.