From: Daan De Meyer Date: Sun, 19 Apr 2020 15:08:06 +0000 (+0200) Subject: sd-bus: Add sd_bus_add_object_manager docs X-Git-Tag: v246-rc1~563 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e762fa039246a4e3111017418556f9d7b1ea6bff;p=thirdparty%2Fsystemd.git sd-bus: Add sd_bus_add_object_manager docs --- diff --git a/man/rules/meson.build b/man/rules/meson.build index 5fc2b5a9806..cb6544f4909 100644 --- a/man/rules/meson.build +++ b/man/rules/meson.build @@ -147,6 +147,7 @@ manpages = [ 'sd_bus_add_filter', 'sd_bus_add_object_vtable'], ''], + ['sd_bus_add_object_manager', '3', [], ''], ['sd_bus_attach_event', '3', ['sd_bus_detach_event', 'sd_bus_get_event'], ''], ['sd_bus_call', '3', ['sd_bus_call_async'], ''], ['sd_bus_call_method', diff --git a/man/sd-bus.xml b/man/sd-bus.xml index 389ae18b50b..bd1f6203a5a 100644 --- a/man/sd-bus.xml +++ b/man/sd-bus.xml @@ -42,6 +42,7 @@ See sd_bus_add_match3, sd_bus_add_object3, +sd_bus_add_object_manager3, sd_bus_add_object_vtable3, sd_bus_add_fallback3, sd_bus_add_fallback_vtable3, diff --git a/man/sd_bus_add_object_manager.xml b/man/sd_bus_add_object_manager.xml new file mode 100644 index 00000000000..c8bfcdd016e --- /dev/null +++ b/man/sd_bus_add_object_manager.xml @@ -0,0 +1,117 @@ + + + + + + + + sd_bus_add_object_manager + systemd + + + + sd_bus_add_object_manager + 3 + + + + sd_bus_add_object_manager + + Add a D-Bus object manager for a D-Bus object sub-tree + + + + + #include <systemd/sd-bus.h> + + + int sd_bus_add_object_manager + sd_bus *bus + sd_bus_slot **slot + const char *path + + + + + + Description + + sd_bus_add_object_manager() installs a handler for the given path + that implements the GetManagedObjects() method of the + org.freedesktop.DBus.ObjectManager interface. See + + org.freedesktop.DBus.ObjectManager for more information. + + To implement the InterfacesAdded and + InterfacesRemoved signals of the + org.freedesktop.DBus.ObjectManager interface, call + sd_bus_emit_interfaces_added3 and + sd_bus_emit_interfaces_removed3 + whenever interfaces are added or removed from the sub-tree, respectively. + + When sd_bus_add_object_manager succeeds, a slot is created + internally. If the output parameter slot is NULL, + a "floating" slot object is created, see + sd_bus_slot_set_floating3. + Otherwise, a pointer to the slot object is returned. In that case, the reference to the slot + object should be dropped when the object manager is not needed anymore, see + sd_bus_slot_unref3. + + + + + Return Value + + On success, sd_bus_add_object_manager() returns a non-negative + integer. On failure, it returns a negative errno-style error code. + + + Errors + + Returned errors may indicate the following problems: + + + + -EINVAL + + One of the required parameters is NULL or + path is not a valid object path. + + + + + -ENOPKG + + The bus cannot be resolved. + + + + -ECHILD + + The bus was created in a different process. + + + + -ENOMEM + + Memory allocation failed. + + + + + + + + + See Also + + + sd-bus3, + busctl1, + sd_bus_add_object_vtable3, + sd_bus_slot_unref3 + + +