Index · Directives systemd 250


sd_bus_message_append_strv — Attach an array of strings to a message


#include <systemd/sd-bus.h>
int sd_bus_message_append_strv(sd_bus_message *m,
 char **l);


The sd_bus_message_append() function can be used to append an array of strings to message m. The parameter l shall point to a NULL-terminated array of pointers to NUL-terminated strings. Each string must satisfy the same constraints as described for the "s" type in sd_bus_message_append_basic(3).

The memory pointed at by p and the contents of the strings themselves are copied into the memory area containing the message and may be changed after this call. Note that the signature of l parameter is to be treated as const char *const *, and the contents will not be modified.

Return Value

On success, this call returns 0 or a positive integer. On failure, a negative errno-style error code is returned.


Returned errors may indicate the following problems:


Specified parameter is invalid.


Message has been sealed.


Message is in invalid state.


Message cannot be appended to.


Memory allocation failed.


These APIs are implemented as a shared library, which can be compiled and linked to with the libsystemd pkg-config(1) file.

See Also

systemd(1), sd-bus(3), sd_bus_message_append(3), sd_bus_message_append_array(3), The D-Bus specification