]> git.ipfire.org Git - thirdparty/systemd.git/commit
varlink: add two helpers for delayed processing of method calls
authorLennart Poettering <lennart@poettering.net>
Thu, 23 Nov 2023 17:17:44 +0000 (18:17 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 2 Jan 2024 16:57:35 +0000 (17:57 +0100)
commit35793c71e4276eceeac690680732f38e1a50475e
treef1ab54fb33e08d8bd6a0fb8009a7a92af0861274
parent0eccf7259ec9e891347adecf4326401a619b8848
varlink: add two helpers for delayed processing of method calls

When we want to do Polkit authentication we want to temporarily pause
handling of a method call until we have the Polkit reply, and then start
again. Let's add some glue to make that easy. This adds two helpers:

varlink_dispatch_again() allows to ask for redispatching of the
currently queued incoming message. Usecase is this: if we don't process
a methd right away, we can come back later, and ask it to be processed
again with this function, in which case our handlers will be called a
2nd time, exactly like on the first time.

varlink_get_current_message() provides access to the currently processed
method call.

With this the polkit logic can look into the current message, do its
thing, and then restart the method handling.
src/shared/varlink.c
src/shared/varlink.h