From 55944e5e40b1be2afc4855d8d2baf4b73d1876b5 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 10 Apr 2024 22:49:52 +0200 Subject: Adding upstream version 255.4. Signed-off-by: Daniel Baumann --- man/sd_bus_slot_set_floating.xml | 123 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 man/sd_bus_slot_set_floating.xml (limited to 'man/sd_bus_slot_set_floating.xml') diff --git a/man/sd_bus_slot_set_floating.xml b/man/sd_bus_slot_set_floating.xml new file mode 100644 index 0000000..df2cbc6 --- /dev/null +++ b/man/sd_bus_slot_set_floating.xml @@ -0,0 +1,123 @@ + + + + + + + + sd_bus_slot_set_floating + systemd + + + + sd_bus_slot_set_floating + 3 + + + + sd_bus_slot_set_floating + sd_bus_slot_get_floating + + Control whether a bus slot object is "floating" + + + + + #include <systemd/sd-bus.h> + + + int sd_bus_slot_set_floating + sd_bus_slot *slot + int b + + + + int sd_bus_slot_get_floating + sd_bus_slot *slot + + + + + + + Description + + sd_bus_slot_set_floating() controls whether the specified bus slot object + slot shall be "floating" or not. A floating bus slot object's lifetime is bound to the + lifetime of the bus object it is associated with, meaning that it remains allocated as long as the bus object + itself and is freed automatically when the bus object is freed. Regular (i.e. non-floating) bus slot objects keep + the bus referenced, hence the bus object remains allocated at least as long as there remains at least one + referenced bus slot object around. The floating state hence controls the direction of referencing between the bus + object and the bus slot objects: if floating the bus pins the bus slot, and otherwise the bus slot pins the bus + objects. Use sd_bus_slot_set_floating() to switch between both modes: if the + b parameter is zero, the slot object is considered floating, otherwise it is made a regular + (non-floating) slot object. + + Bus slot objects may be allocated with calls such as + sd_bus_add_match3. If the + slot of these functions is non-NULL the slot object will be of the + regular kind (i.e. non-floating), otherwise it will be created floating. With + sd_bus_slot_set_floating() a bus slot object allocated as regular can be converted into a + floating object and back. This is particularly useful for creating a bus slot object, then changing parameters of + it, and then turning it into a floating object, whose lifecycle is managed by the bus object. + + sd_bus_slot_get_floating() returns the current floating state of the specified bus slot + object. It returns negative on error, zero if the bus slot object is a regular (non-floating) object and positive + otherwise. + + + + Return Value + + On success, these functions return 0 or a positive integer. On failure, they return a negative + errno-style error code. + + + Errors + + Returned errors may indicate the following problems: + + + + -EINVAL + + The slot parameter is NULL. + + + + -ECHILD + + The bus connection has been created in a different process, library or module instance. + + + + -ESTALE + + The bus object the specified bus slot object is associated with has already been + freed, and hence no change in the floating state can be made anymore. + + + + + + + + + History + sd_bus_slot_set_floating() and + sd_bus_slot_get_floating() were added in version 239. + + + + See Also + + + systemd1, + sd-bus3, + sd_bus_slot_set_destroy_callback3, + sd_bus_add_match3 + + + + -- cgit v1.2.3