summaryrefslogtreecommitdiff
path: root/src/libsystemd-bus/bus-internal.h
AgeCommit message (Collapse)Author
2013-11-12bus: introduce concept of a default bus for each thread and make use of it ↵Lennart Poettering
everywhere We want to emphasize bus connections as per-thread communication primitives, hence introduce a concept of a per-thread default bus, and make use of it everywhere.
2013-11-09bus: let magic ":no-sender" pass the validationKay Sievers
2013-11-08bus: allow queuing more local msgsLennart Poettering
When issuing a synchronous "systemctl daemon-reload" requests this will send out a tonload of UnitRemoved+UnitNew signals, that we will queue locally. When we wait for the message reply, we should be able to queue those, hence bump the limits on locally queuing messages.
2013-11-05bus: add sd_bus_get_current() bus call to determine message that is ↵Lennart Poettering
currently being dispatched
2013-10-30bus: add API call to create bus connection to the system bus of local containersLennart Poettering
Also, add support for this to machinectl, so that we can enumerate the machines that run inside a container. We must go deeper!
2013-10-30bus: move ssh support into public API of libsystem-busLennart Poettering
2013-10-18bus: automatically flush bus queue when we exit the event loopLennart Poettering
This way, we do not have to call it manually
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
2013-10-14bus: make sure that we always keep a ref to the bus when we dispatch callbacksLennart Poettering
Otherwise the callback might unref the bus we are processing and destroy the object while we are processing it.
2013-10-11bus: unify code to find parents of an object path withLennart Poettering
2013-10-09libsystemd-bus: add lightweight object vtable implementation for exposing ↵Lennart Poettering
objects on the bus This adds a lightweight scheme how to define interfaces in static fixed arrays which then can be easily registered on a bus connection. This makes it much easier to write bus services. This automatically handles implementation of the Properties, ObjectManager, and Introspection bus interfaces.
2013-05-22bus: add benchmark tool to determine the right threshold for copying vs. memfdLennart Poettering
2013-05-20bus: calculate bloom filter for matchLennart Poettering
Yay! Filtering using kernel bloom filter matches works now! Yippieh!
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: return ECHILD as soon as people try to reuse a bus connection across a ↵Lennart Poettering
fork()
2013-05-17bus: keep kernel bus fd around during entire life-time of busLennart Poettering
We need this since we might need to invoke the release ioctl for messages. Since we don't want to add any locking for that we simply keep a reference to the bus and then rely that the fd stays valid all the time.
2013-05-16bus: make bus ref counting atomicLennart Poettering
This is preparation to allow sd_bus_message obejcts to be processed in a different thread from their originating sd_bus object.
2013-05-14bus: properly handle message bodies that are a chain of memory areas rather ↵Lennart Poettering
than a single one
2013-05-10bus: catch up with latest kdbusLennart Poettering
2013-04-14kdbus: generare bloom filters properly for messages we sendLennart Poettering
2013-04-13kdbus: update to newest kdbus APILennart Poettering
2013-04-11bus: basic implementation of kdbus client sideLennart Poettering
2013-04-05bus: properly detect and handle if a callback is installed/removed from ↵Lennart Poettering
within a callback
2013-04-05bus: don't allow recursive invocation of sd_bus_process()Lennart Poettering
2013-04-01bus: fall back to readv/writev if recvmsg/sendmsg don't workLennart Poettering
2013-04-01bus: allow two different fds for input/output in sd_bus_set_fd()Lennart Poettering
This is useful so that we can speak D-Bus over a FIFO pair such as stdin+stdout.
2013-03-31bus: rename sd_bus_get_peer() to sd_bus_get_server_id()Lennart Poettering
This function always returns the server side ID. The name suggested it was actually always the peer's ID, but that's not correct if the call is called on a server bus context. Hence, let's correct the name a bit.
2013-03-31bus: s/sd_message_handler_t/sd_bus_message_handler_t/gLennart Poettering
2013-03-31bus: parse matches locally and allow registration of callbacks for themLennart Poettering
This includes code to parse and split up match strings which will also be useful to calculate bloom filter masks when the time comes.
2013-03-30bus: implement server mode, and anonymous authenticationLennart Poettering
2013-03-30bus: consider it an error if the first message we get on the bus is not a ↵Lennart Poettering
reply to HELLO
2013-03-26bus: rename send_hello flag to bus_cientLennart Poettering
This way we can hide more than just the hello logic behind this flag, for example, later on automatic match management.
2013-03-25bus: split socket related code into bus-socket.[ch], to prepare for kdbus ↵Lennart Poettering
backend
2013-03-25bus: implement 'unixexec:' protocolLennart Poettering
2013-03-25bus: make optional whether unix socket passing is negotiated and whether ↵Lennart Poettering
hello is sent This alos gets rid of explicit sd_open_fd() and sd_open_address() constructors in favour of sd_new() + sd_new_start() where the negotiation parameters may be set it in between.
2013-03-25bus: implement support for FD passingLennart Poettering
2013-03-22bus: implement object handler registryLennart Poettering
2013-03-22bus: implicitly collect ucred/label informationLennart Poettering
2013-03-22bus: also finish connection before returning from sd_bus_get_unique_name()Lennart Poettering
2013-03-22bus: when parsing enforce maximum container depthLennart Poettering
2013-03-22bus: validate the entire header more closelyLennart Poettering
2013-03-22bus: properly validate object path valuesLennart Poettering
2013-03-22bus: implicitly handle peer commands Ping() and GetMachineId()Lennart Poettering
2013-03-22bus: enforce limits on all client influenced data objectsLennart Poettering
2013-03-21bus: implement full method call timeout logicLennart Poettering
2013-03-20bus: hook up client with socket communicationLennart Poettering
2013-03-20bus: add basic implementation of a native bus client libraryLennart Poettering