sd_bus_message_read_array(3) — Linux manual page

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

SD_BUS_MESSAGE_READ_ARRAY(3)_bus_message_read_arrayBUS_MESSAGE_READ_ARRAY(3)

NAME         top

       sd_bus_message_read_array - Access an array of elements in a message

SYNOPSIS         top

       #include <systemd/sd-bus.h>

       int sd_bus_message_read_array(sd_bus_message *m, char type,
                                     const void **ptr, size_t *size);

DESCRIPTION         top

       sd_bus_message_read_array() gives access to an element array in
       message m. The "read pointer" in the message must be right before an
       array of type type. As a special case, type may be NUL, in which case
       any type is acceptable. A pointer to the array data is returned in
       the parameter ptr and the size of array data (in bytes) is returned
       in the parameter size. If size is 0, a valid non-null pointer will be
       returned, but it may not be dereferenced. The data is aligned as
       appropriate for the data type. The data is part of the message — it
       may not be modified and is valid only as long as the message is
       referenced. After this function returns, the "read pointer" points at
       the next element after the array.

       Note that this function only supports arrays of trivial types, i.e.
       arrays of booleans, the various integer types, as well as floating
       point numbers. In particular it may not be used for arrays of
       strings, structures or similar.

RETURN VALUE         top

       On success, sd_bus_message_read_array() returns 0 or a positive
       integer. On failure, it returns a negative errno-style error code.

   Errors
       Returned errors may indicate the following problems:

       -EINVAL
           Specified type is invalid or not a trivial type (see above), or
           the message parameter or one of the output parameters are NULL.

       -EOPNOTSUPP
           The byte order in the message is different than native byte
           order.

       -EPERM
           The message is not sealed.

       -EBADMSG
           The message cannot be parsed.

SEE ALSO         top

       systemd(1), sd-bus(3), sd_bus_message_read(3),
       sd_bus_message_read_strv(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 2020-06-09.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2020-06-09.)  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 245                                     SD_BUS_MESSAGE_READ_ARRAY(3)

Pages that refer to this page: sd-bus(3)30-systemd-environment-d-generator(7)systemd.directives(7)systemd.index(7)