OS Manuals

sd_varlink_set_relative_timeout(3)

SD_VARLINK_SET_RELATIVE_TIMEOUT(3) sd_varlink_set_relative_timeout SD_VARLINK_SET_RELATIVE_TIMEOUT(3)


.SH "NAME" sd_varlink_set_relative_timeout - Set method call time-out


.SH "SYNOPSIS"

#include <systemd/sd-varlink.h>


.HP 864u int sd_varlink_set_relative_timeout(sd_varlink *link, uint64_t usec);


.SH "DESCRIPTION"


.PP sd_varlink_set_relative_timeout() sets the relative timeout in µs to enforce on Varlink method calls. A default time-out of 45s (currently) applies, which may be changed with this call. Set to UINT64_MAX to disable the time-out, and to 0 to revert to revert back to the default time-out. The time-out begins whenever a method call is started, and if no response is received by the time the time-out elapses a synthetic io.systemd.TimedOut error is raised as client-generated reply to the method call.


.PP This call is particularly useful for method calls issued via sd_varlink_observe() that shall remain open continuously for a long time.


.SH "RETURN VALUE"


.PP On success, sd_varlink_set_relative_timeout() returns a non-negative integer. On failure, it returns a negative errno-style error code.


.SS "Errors"


.PP Returned errors may indicate the following problems:


.PP -EINVAL


An argument is invalid.


.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 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_varlink_set_relative_timeout() was added in version 257.


.SH "SEE ALSO"


.PP systemd(1), sd-varlink(3)

systemd 262.2

systemd 262.2-r1 · os · ingested 2026-11-06