summaryrefslogtreecommitdiff
path: root/src/libsystemd-bus/bus-kernel.c
AgeCommit message (Collapse)Author
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!
2013-05-17bus: do not pass a pointer but a uint64_t address in RECVKay Sievers
2013-05-17bus: add APIs for negotiating what is attached to messagesLennart Poettering
2013-05-17bus: add minimal locking around the memfd cacheLennart Poettering
We want to allow clients to process an sd_bus_message on a different thread than it was received on. Since unreffing a bus message might readd some of its memfds to the memfd cache add some minimal locking around the cache.
2013-05-17bus: actually unmap kdbus pool after useLennart Poettering
2013-05-16bus: send memfds as payload only on directed messages and for large partsLennart Poettering
2013-05-16bus: implement receiving side of memfd hookupLennart Poettering
2013-05-16bus: put together messages with memfd payload correctlyLennart Poettering
2013-05-15bus: add support for adding memfds into message payloadLennart Poettering
2013-05-15bus: rework message struct to keep header with fields in same malloc() blockLennart Poettering
This allows us to guarantee that the first payload_vec we pass to the kernel for each message is guaranteed to include the full header and all its field.
2013-05-15bus: add macro for iterating through body parts of a messageLennart Poettering
2013-05-14bus: fix allocation of body parts from memfdLennart Poettering
2013-05-14bus: properly handle message bodies that are a chain of memory areas rather ↵Lennart Poettering
than a single one
2013-05-14bus: add and use UINT64_TO_PTR()Kay Sievers
2013-05-12bus: remove KDBUS_MAKE_ACCESS_WORLD, remove (n_payload > 2) checkKay Sievers
KDBUS_MAKE_ACCESS_WORLD is no longer needed, the kernel creates the kdbus device node with the uid/gid of the caller now.
2013-05-10bus: fix test-bus-memfdKay Sievers