Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


sd_bus_message_append_basic(3) — Linux manual page

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

SD_BUS_...ND_BASIC(3)  sd_bus_message_append_basicSD_BUS_...ND_BASIC(3)

NAME        top

       sd_bus_message_append_basic - Attach a single field to a message

SYNOPSIS        top

#include <systemd/sd-bus.h>int sd_bus_message_append_basic(sd_bus_message *m, chartype,const void *p);

DESCRIPTION        top

sd_bus_message_append_basic()appends a single field to the       messagem. The parametertype determines how the pointerp is       interpreted.type must be one of the basic types as defined by       theBasic Types[1] section of the D-Bus specification, and listed       in the table below.Table 1. Item type specifiers       ┌───────────┬─────────────────────────┬────────────────┬──────────┬────────────┐       │SpecifierConstantDescriptionSizeExpected C│       │           │                         │                │          │Type│       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "y"       │SD_BUS_TYPE_BYTE│ unsigned       │ 1 byte   │ uint8_t    │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "b"       │SD_BUS_TYPE_BOOLEAN│ boolean        │ 4 bytes  │ int        │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "n"       │SD_BUS_TYPE_INT16│ signed         │ 2 bytes  │ int16_t    │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "q"       │SD_BUS_TYPE_UINT16│ unsigned       │ 2 bytes  │ uint16_t   │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "i"       │SD_BUS_TYPE_INT32│ signed         │ 4 bytes  │ int32_t    │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "u"       │SD_BUS_TYPE_UINT32│ unsigned       │ 4 bytes  │ uint32_t   │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "x"       │SD_BUS_TYPE_INT64│ signed         │ 8 bytes  │ int64_t    │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "t"       │SD_BUS_TYPE_UINT64│ unsigned       │ 8 bytes  │ uint64_t   │       │           │                         │ integer        │          │            │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "d"       │SD_BUS_TYPE_DOUBLE│ floating-point │ 8 bytes  │ double     │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "s"       │SD_BUS_TYPE_STRING│ Unicode string │ variable │ char[]     │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "o"       │SD_BUS_TYPE_OBJECT_PATH│ object path    │ variable │ char[]     │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "g"       │SD_BUS_TYPE_SIGNATURE│ signature      │ variable │ char[]     │       ├───────────┼─────────────────────────┼────────────────┼──────────┼────────────┤       │ "h"       │SD_BUS_TYPE_UNIX_FD│ UNIX file      │ 4 bytes  │ int        │       │           │                         │ descriptor     │          │            │       └───────────┴─────────────────────────┴────────────────┴──────────┴────────────┘       The value of the parameter is copied into a memory area held by       the message object, stays in the possession of the caller and may       hence be freely changed after this call without affecting the bus       message it has been added to. Iftype is "h" (UNIX file       descriptor), the descriptor is duplicated by this call and the       passed descriptor stays in possession of the caller.       For types "s", "o", and "g", the parameterp is interpreted as a       pointer to aNUL-terminated character sequence. As a special case,       aNULLpointer is interpreted as an empty string. The string       should be valid Unicode string encoded as UTF-8. In case of the       two latter types, the additional requirements for a D-Bus object       path or type signature should be satisfied. Those requirements       should be verified by the recipient of the message.

RETURN VALUE        top

       On success, this call 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 parameter is invalid.-EPERM           Message has been sealed.-ESTALE           Message is in invalid state.-ENXIO           Message cannot be appended to.-ENOMEM           Memory allocation failed.

NOTES        top

       Functions described here are available as a shared library, which       can be compiled against and linked to with thelibsystemd pkg-config(1) file.       The code described here usesgetenv(3), which is declared to be       not multi-thread-safe. This means that the code calling the       functions described here must not callsetenv(3) from a parallel       thread. It is recommended to only do calls tosetenv()from an       early phase of the program when no other threads have been       started.

SEE ALSO        top

systemd(1),sd-bus(3),sd_bus_message_read_basic(3),sd_bus_message_append(3),The D-Bus specification[2]

NOTES        top

        1. Basic Typeshttps://dbus.freedesktop.org/doc/dbus-specification.html#basic-types        2. The D-Bus specificationhttps://dbus.freedesktop.org/doc/dbus-specification.html

COLOPHON        top

       This page is part of thesystemd (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 2025-08-11.  (At that       time, the date of the most recent commit that was found in the       repository was 2025-08-11.)  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 isnot part of the original manual page), send a mail to       man-pages@man7.orgsystemd 258~rc2SD_BUS_...ND_BASIC(3)

Pages that refer to this page:sd-bus(3)sd_bus_message_append(3)sd_bus_message_append_array(3)sd_bus_message_append_string_memfd(3)sd_bus_message_append_strv(3)sd_bus_message_read_basic(3)systemd.directives(7)systemd.index(7)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp