sd_bus_message_read_strv(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | HISTORY | SEE ALSO | COLOPHON

SD_BUS_M...EAD_STRV(3)  sd_bus_message_read_strv  SD_BUS_M...EAD_STRV(3)

NAME         top

       sd_bus_message_read_strv, sd_bus_message_read_strv_extend -
       Access an array of strings in a message

SYNOPSIS         top

       #include <systemd/sd-bus.h>

       int sd_bus_message_read_strv(sd_bus_message *m, char ***l);

       int sd_bus_message_read_strv_extend(sd_bus_message *m,
                                           char ***l);

DESCRIPTION         top

       sd_bus_message_read_strv() reads an array of string-like items
       from the message m. The "read pointer" in the message must be
       right before an array of strings (D-Bus type "as"), object paths
       (D-Bus type "ao"), or signatures (D-Bus type "ag"). On success, a
       pointer to a NULL-terminated array of strings (strv) is returned
       in the output parameter l. Note that ownership of this array is
       transferred to the caller. Hence, the caller is responsible for
       freeing this array and its contents.

       sd_bus_message_read_strv_extend() is similar, but the second
       parameter is an input-output parameter. If *l is NULL, if behaves
       identically to sd_bus_message_read_strv(). Otherwise, *l must
       point to a strv, which will be reallocated and extended with
       additional strings. This function is particularly useful when
       combining multiple lists of strings in a message or messages into
       a single array of strings.

RETURN VALUE         top

       On success, these functions return a non-negative integer. On
       failure, they return a negative errno-style error code.

   Errors
       Returned errors may indicate the following problems:

       -EINVAL
           m or l are NULL.

           Added in version 246.

       -EPERM
           The message is not sealed.

           Added in version 246.

       -EBADMSG
           The message cannot be parsed.

           Added in version 246.

       -ENXIO
           The message "read pointer" is not right before an array of
           the appropriate type.

           Added in version 248.

HISTORY         top

       sd_bus_message_read_strv() was added in version 246.

       sd_bus_message_read_strv_extend() was added in version 252.

SEE ALSO         top

       systemd(1), sd-bus(3), sd_bus_message_read(3)

COLOPHON         top

       This page is part of the systemd (systemd system and service
       manager) project.  Information about the project can be found at
       ⟨http://www.freedesktop.org/wiki/Software/systemd⟩.  If you have
       a bug report for this manual page, see
       ⟨http://www.freedesktop.org/wiki/Software/systemd/#bugreports⟩.
       This page was obtained from the project's upstream Git repository
       ⟨https://github.com/systemd/systemd.git⟩ on 2023-12-22.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2023-12-22.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

systemd 255                                       SD_BUS_M...EAD_STRV(3)

Pages that refer to this page: sd-bus(3)sd_bus_message_read_array(3)systemd.directives(7)systemd.index(7)