NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |NOTES |HISTORY |SEE ALSO |COLOPHON | |
SD_BUS_GET_NAME_CREDS(3) sd_bus_get_name_credsSD_BUS_GET_NAME_CREDS(3)sd_bus_get_name_creds, sd_bus_get_owner_creds - Query bus client credentials
#include <systemd/sd-bus.h>int sd_bus_get_name_creds(sd_bus *bus, const char *name,uint64_tmask, sd_bus_creds **creds);int sd_bus_get_owner_creds(sd_bus *bus, uint64_tmask,sd_bus_creds **creds);
sd_bus_get_name_creds()queries the credentials of the bus client identified byname. Themask parameter is a combo ofSD_BUS_CREDS_*flags that indicate which credential info the caller is interested in. Seesd_bus_creds_new_from_pid(3) for a list of possible flags. On success,creds contains a new sd_bus_creds instance with the requested information. Ownership of this instance belongs to the caller and it should be freed once no longer needed by callingsd_bus_creds_unref(3).sd_bus_get_owner_creds()queries the credentials of the creator of the given bus. Themask andcreds parameters behave the same as insd_bus_get_name_creds().
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 An argument is invalid.-ENOPKG The bus cannot be resolved.-EPERM The bus has already been started.-ECHILD The bus was created in a different process, library or module instance.-ENOMEM Memory allocation failed.
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.
sd_bus_get_name_creds()andsd_bus_get_owner_creds()were added in version 221.
systemd(1),sd-bus(3),sd_bus_creds_unref(3)
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_GET_NAME_CREDS(3)Pages that refer to this page:sd-bus(3), sd_bus_creds_get_pid(3), sd_bus_creds_new_from_pid(3), sd_bus_query_sender_creds(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. | ![]() |