summaryrefslogtreecommitdiff
path: root/src/libsystemd-bus/bus-kernel.c
AgeCommit message (Collapse)Author
2013-12-13update TODOLennart Poettering
2013-12-12bus: update kdbus.hKay Sievers
2013-12-12bus: enforce endianess and marshalling for messages we sendLennart Poettering
2013-12-12bus: add SD_BUS_NAME_REPLACE_EXISTING to all activatable services, fix one ↵Kay Sievers
flags conversion
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: properly generate NameOwnerChanged messages when we take from/give back ↵Lennart Poettering
to queue/starter
2013-12-11bus: kdbus - skip only STARTER and IN_QUEUE names for NameOwnerChangedKay Sievers
2013-12-10bus: generate debug messages when we cannot deliver messages via kdbusLennart Poettering
2013-12-10bus: Add bus_kernel_monitor functionLukasz Skalski
2013-12-10Revert "libsystemd-bus: use assert_return"Lennart Poettering
This reverts commit f7e2bd5a8070ba86cba6bcbf7d1c9a8173d846d4. Most of these checks are not programming errors, but happen during normal runtime. For example bus_kernel_pop_memfd() is called all the time on non-kdbus systems and is supposed to quickly fail if kdbus is not available. However, assert_return() makes this failure expensive, and hence has no place here. With the most recent change to assert_return() it will even log a debug message, which should never happen here.
2013-12-09libsystemd-bus: use assert_returnLukasz Skalski
2013-12-10bus: only accept gvariant native endian messages via kdbusLennart Poettering
2013-12-09bus: demarshal gvariantLennart Poettering
2013-12-06bus: catch up with latest kdbus changesKay Sievers
2013-12-06bus: catch up with latest kdbus changesKay Sievers
2013-12-06bus: update kdbus.hKay Sievers
2013-12-05bus: switch to multiple KDBUS_ITEM_NAME including the flagsKay Sievers
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-03libsystemd-bus: catch up with latest kdbus changesDaniel Mack
2013-12-02bus: add .busname unit type to implement kdbus-style bus activationLennart Poettering
2013-12-02bus: make sure we check for "incompatible" flags negotiated with kernel kdbusLennart Poettering
2013-12-02nspawn: make sure /dev/kdbus in the container is world accessibleLennart Poettering
2013-12-02nspawn: make kdbus namespaces actually workLennart Poettering
2013-11-30nspawn: set up a kdbus namespace when starting a containerLennart Poettering
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-30core: allocate a kdbus bus for each systemd instance, if we canLennart Poettering
2013-11-30bus: synthesize local error reply when we cannot deliver a message to kdbus ↵Lennart Poettering
because the destination is unavailable
2013-11-30bus: don't generate NameAcquired/NameLost messages in the libraryLennart Poettering
The signals appear entirely redundant due to NameOwnerChange, hence don't do them in the new library, instead leave them for the compatibility bridge only. Also, set the serial number for synthesized messages to (uint32_t) -1.
2013-11-29bus: synthesize NameLost/NameAcquired from kernel messages on top if ↵Lennart Poettering
NameOwnerChange
2013-11-29bus: fix callback index when dispatching kernel messagesLennart Poettering
2013-11-29bus: add the ability for backends to queue to input messages at the same timeLennart Poettering
We need this so that one incoming kernel message can result in two high-level bus messages, for the case where we synthesize NameAcquired and NameOwnerChanged in the same instance.
2013-11-29libsystemd-bus: rename sd_bus_kernel_translate_request_name_flagsDaniel Mack
... to keep the namespace clean.
2013-11-29libsystemd-bus: add sd_bus_translate_attach_flags()Daniel Mack
Factor out code from sd_bus_negotiate_attach_creds() to a generic translate function, so it can be used from other places.
2013-11-29kdbus: synthesize NameOwnerChange signals from kernel messages and support ↵Lennart Poettering
matches against NameOwnerChange
2013-11-29libsystemd-bus: follow kdbus renamesDaniel Mack
kdbus now has more generic names for the items it passes around. That allows for usage from other contexts.
2013-11-29libsystemd-bus: copy over kdbus provided 128-bit bus idDaniel Mack
kdbus now copies the bus unique id back to userspace in the hello ioctl(). Use these bytes to set the server id of the sd_bus.
2013-11-29libsystemd-bus: catch up with latest kdbus changesDaniel Mack
kdbus_cmd_hello now has a new uint64_t flags field for the requested attachments. Follow that change in libsystemd-bus.
2013-11-29libsystemd-bus: kernel: add sd_bus_kernel_translate_request_name_flagsDaniel Mack
Flags used to request a name from kdbus are not identical to what DBus and sd_bus use internally. Introduce a simple function to do the translation for us. It's factored out to a separate function so the dbus-driver instance can make use of it as well.
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-29bus: Add KDBUS_MSG_SRC_NAMES to bus_kernel_make_message() functionLukasz Skalski
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-21bus: let's simplify things by getting rid of unnecessary bus parametersLennart Poettering
2013-07-22bus: update for kdbus changesKay Sievers
2013-06-04bus: unmap memfd retrieved from the memfd cacheKay Sievers
2013-05-30bus: update for kdbus changesKay Sievers
2013-05-29bus: when adding memfds to cache and we shorten them, make sure to unmap the ↵Lennart Poettering
remainder
2013-05-22bus: add benchmark tool to determine the right threshold for copying vs. memfdLennart Poettering
2013-05-20bus: add test for bloom filter prefix matchLennart Poettering
2013-05-20bus: calculate bloom filter for matchLennart Poettering
Yay! Filtering using kernel bloom filter matches works now! Yippieh!