summaryrefslogtreecommitdiff
path: root/src/libsystemd-bus/bus-control.c
AgeCommit message (Collapse)Author
2013-12-23bus: always talk to the full dbus driver objectLennart Poettering
2013-12-23bus: use memcpy() rather than unbounded strcpy()Lennart Poettering
2013-12-21bus: when getting credentials of a bus name that is activatable but not ↵Lennart Poettering
activated, say we don't have anything.
2013-12-21bus: send status message from proxyd to systemd about client we are working forLennart Poettering
2013-12-21bus: when watching bus names, we always need to add a change matchLennart Poettering
Since for the kernel change of ownership of a name between starter and real client is a change and for userspace thats addition/removal, we need to unconditionally subscribe to these change events.
2013-12-20libsystemd-bus: match on any connection ID unless specifiedDaniel Mack
2013-12-20libsystemd-bus: follow changes in kdbusDaniel Mack
In particular, the match interface has seen a major overhaul.
2013-12-19bus: reenable id change subscriptionsLennart Poettering
2013-12-19bus: do not add empty strings, size should be 0Kay Sievers
2013-12-19driverd: implement AddMatch/RemoveMatch logicLennart Poettering
2013-12-18bus: when releasing, taking, listing bus names check if they are validLennart Poettering
Given that the kernel does not validate bus names we have to when using them.
2013-12-18bus: sync with kdbusDaniel Mack
Two new things here: a) struct kdbus_notify_name_change now carries two struct kdbus_notify_id_change b) a new KDBUS_CMD_BYEBYE ioctl that has no user yet in systemd
2013-12-13libsystemd-bus: the same error codes for sd_bus_release_name() (for kdbus ↵Lukasz Skalski
and dbus1) Due to this patch, sd_bus_release_name() function returns the same code errors for kdbus and dbus1 if we try release non-existing name or foreign name.
2013-12-13bus: properly parse NameOwnerChanged messages when caller explicitly wants ↵Lennart Poettering
to match against names coming/going
2013-12-12bus: update kdbus.hKay Sievers
2013-12-12bus: instead of exposing the dbus1 flags when acquiring a name use our own ↵Lennart Poettering
that are closer to kdbus This turns around DO_NOT_QUEUE into QUEUE which implies a more useful default. (And negative options are awful anyway.)
2013-12-12bus: update name listing logic to current kernel interfaceLennart Poettering
2013-12-10macro: log assertion at debug level in assert_return()Lennart Poettering
2013-12-06bus: catch up with latest kdbus changesKay Sievers
2013-12-05bus: switch to multiple KDBUS_ITEM_NAME including the flagsKay Sievers
2013-12-04libsystemd-bus: catch up with latest kdbus changesKay Sievers
2013-12-04libsystemd-bus: catch up with latest kdbus list query changesKay Sievers
2013-12-03bus: fix parsing of AcquireName() responseLennart Poettering
2013-12-03bus: rework sd_bus_list_names() to return two lists for acquired and ↵Lennart Poettering
activatable names
2013-12-03bus: internalize a lot of protocol definitionsLennart Poettering
We shouldn export what isn't necessary or useful to clients, so let's add the protocol definitions we only need internally into a private header.
2013-12-03bus: make sd_bus_request_name() and sd_bus_release_name() behave more like ↵Lennart Poettering
other calls Instead of returning an enum of return codes, make them return error codes like kdbus does internally. Also, document this behaviour so that clients can stick to it. (Also rework bus-control.c to always have to functions for dbus1 vs. kernel implementation of the various calls.)
2013-12-03libsystemd-bus: catch up with latest kdbus changesDaniel Mack
2013-12-03libsystemd-bus: catch up with latest kdbus changesDaniel Mack
2013-12-02libsystemd-bus: catch up with latest kdbus changesDaniel Mack
2013-12-02busctl: add command to dump creds of a peer or pidLennart Poettering
(also, rename _SD_BUS_CREDS_MAX to _SD_BUX_CRED_ALL, since "MAX" so far was used to indicate one higher than the highest valid value, and this is not correct here.)
2013-12-02bus: be nice to LLVM and don't embedd a VLA in a unionLennart Poettering
2013-12-01bus: remove unused variableThomas Hindoe Paaboel Andersen
2013-11-30bus: catch up with kdbusKay Sievers
2013-11-30bus: include unique and well known names in credentials objectLennart Poettering
2013-11-30libsystemd-bus: catch up with latest kdbus changesDaniel Mack
The name list and query functions now work differently in kdbus, as the result is stored in the connection's pool, rather than being copied back through the ioctl buffer. That also safes us some logic, as we don't have to resize the communication buffer in a loop with growing buffer sizes. Due to this, KDBUS_CMD_MSG_RELEASE was renamed to KDBUS_CMD_FREE, as it is now used outside the message logic as well.
2013-11-29libsystemd-bus: sd_bus_request_name: use kdbus_translate_request_name_flags()Daniel Mack
2013-11-29libsystemd-bus: add kdbus support for sd_bus_get_owner()Daniel Mack
2013-11-29libsystemd-bus: factor out DBus bits out of sd_bus_get_owner()Daniel Mack
Just a preparation for upcoming kdbus support.
2013-11-29bus: fix size calculation for match dataKay Sievers
2013-11-29kdbus: synthesize NameOwnerChange signals from kernel messages and support ↵Lennart Poettering
matches against NameOwnerChange
2013-11-29libsystemd-bus: clean up bus-control.c fileLukasz Skalski
2013-11-29libsystemd-bus: sd_bus_request_name: fix return value for kdbusDaniel Mack
kdbus returns -EALREADY if the requesting connection is already the owner of a name, and -EEXIST if the name already exists and the connection is not able to take it over. Also, n->flags needs a translation as well to match the SD_BUS_* enum values.
2013-11-29libsystemd-bus: make sd_bus_list_names return all connections, including ↵Daniel Mack
unique names
2013-11-29libsystemd-bus: add kdbus support for sd_bus_list_names()Daniel Mack
kdbus will tell us the minimum buffer size it needs in case the default 8kb buffer doesn't suffice.
2013-11-29libsystemd-bus: bring definitions in sync with kdbusDaniel Mack
In particular, KDBUS_ITEM_NEXT is now called KDBUS_PART_NEXT, and KDBUS_ITEM_FOREACH was renamed to KDBUS_PART_FOREACH and takes one more argument to make it more flexible.
2013-11-28bus: merge sd_bus_get_owner() and sd_bus_get_owner_creds() into one callLennart Poettering
Since the backing ioctl for this on kdbus is the same we retain atomicity this way.
2013-11-28bus: add new sd_bus_creds object to encapsulate process credentialsLennart Poettering
This way we can unify handling of credentials that are attached to messages, or can be queried for bus name owners or connection peers. This also adds the ability to extend incomplete credential information with data from /proc, Also, provide a convenience call that will automatically determine the most appropriate credential object for an incoming message, by using the the attached information if possible, the sending name information if available and otherwise the peer's credentials.
2013-11-12bus: set no_auto_start flag for GetMachineId calls, so that we don't ↵Lennart Poettering
auto-start if we want to know the machine of a bus service
2013-11-06bus: export libsystemd-bus as a public libraryZbigniew Jędrzejewski-Szmek
Old static libsystemd-bus.la becomes libsystemd-bus-internal.la. memfd functions are also exported in the same library. (Best viewed with --color-words -U0).
2013-10-16timedated: use libsystemd-bus instead of libdbus for bus communicationLennart Poettering
Among other things this also adds a few things necessary for the change: - Considerably more powerful error returning APIs in libsystemd-bus - Adapter for connecting an sd_bus to an sd_event - As I reworked the PolicyKit logic to the new library I also made it asynchronous, so that PolicyKit requests of one user cannot block out another user anymore. - We always use the macro names for common bus error. That way it is harder to mistype them since the compiler will notice