| SD_BUS_SET_SENDER(3) | sd_bus_set_sender | SD_BUS_SET_SENDER(3) |
.SH "NAME" sd_bus_set_sender, sd_bus_get_sender - Configure default
sender for outgoing messages
.SH "SYNOPSIS"
#include <systemd/sd-bus.h>
.HP 528u int sd_bus_set_sender(sd_bus *bus,
const char* name);
.HP 528u int sd_bus_get_sender(sd_bus *bus,
const char** name);
.SH "DESCRIPTION"
.PP sd_bus_set_sender() configures the default sender service name to
use for outgoing messages. The service name specified in the name
parameter is set on all outgoing messages that are sent on the connection
and have no sender set yet, for example through
sd_bus_message_set_sender(3). Note that this function is only
supported on direct connections, i.e. not on connections to a bus broker as
the broker will fill in the sender service name automatically anyway. By
default, no sender name is configured, and hence messages are sent without
sender field set. If the name parameter is specified as NULL
the default sender service name is cleared, returning to the default state
if a default sender service name was set before. If passed as
non-NULL the specified name must be a valid unique or well-known
service name.
.PP sd_bus_get_sender() may be used to query the current default
service name for outgoing messages.
.SH "RETURN VALUE"
.PP On success, these functions return 0 or a positive integer. On failure,
they return a negative errno-style error code.
.SS "Errors"
.PP Returned errors may indicate the following problems:
.PP -ECHILD
The bus connection has been created in a different process, library or module
instance.
.RE
.PP -EPERM
The specified bus connection object is a not a direct but a brokered
connection.
.RE
.SH "NOTES"
.PP Functions described here are available as a shared library, which can be
compiled against and linked to with the
libsystemd pkg-config(1) file.
.PP All functions listed here are thread-agnostic and only a single thread
may operate on a given object at any given time. Different threads may
access the same object at different times. Multiple independent objects may
be used from different threads in parallel.
.PP The code described here uses getenv(3), which is declared to be
not multi-thread-safe. This means that the code calling the functions
described here must not call setenv(3) from a parallel thread. It is
recommended to only do calls to setenv() from an early phase of the
program when no other threads have been started.
.SH "HISTORY"
.PP sd_bus_set_sender() and sd_bus_get_sender() were added in
version 237.
.SH "SEE ALSO"
.PP systemd(1), sd-bus(3),
sd_bus_message_set_sender(3)
| systemd 262.2 |