X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsd_bus_creds_get_pid.xml;h=29cb9bd32fed76b7ecbae14c0c8b24b433572357;hb=d04b238170998e0cbcc86db0f8ae66c3ee4a14d6;hp=25978a28957491f542cfde655820c031ae0bd2fb;hpb=66f756d437658cc464bfb5647c97efd0cf77f933;p=elogind.git diff --git a/man/sd_bus_creds_get_pid.xml b/man/sd_bus_creds_get_pid.xml index 25978a289..29cb9bd32 100644 --- a/man/sd_bus_creds_get_pid.xml +++ b/man/sd_bus_creds_get_pid.xml @@ -1,24 +1,24 @@ - + @@ -44,18 +44,26 @@ along with systemd; If not, see . sd_bus_creds_get_pid - sd_bus_creds_get_pid_starttime + sd_bus_creds_get_ppid sd_bus_creds_get_tid sd_bus_creds_get_uid + sd_bus_creds_get_euid + sd_bus_creds_get_suid + sd_bus_creds_get_fsuid sd_bus_creds_get_gid + sd_bus_creds_get_egid + sd_bus_creds_get_sgid + sd_bus_creds_get_fsgid + sd_bus_creds_get_supplementary_gids sd_bus_creds_get_comm sd_bus_creds_get_tid_comm sd_bus_creds_get_exe sd_bus_creds_get_cmdline sd_bus_creds_get_cgroup sd_bus_creds_get_unit - sd_bus_creds_get_user_unit sd_bus_creds_get_slice + sd_bus_creds_get_user_unit + sd_bus_creds_get_user_slice sd_bus_creds_get_session sd_bus_creds_get_owner_uid sd_bus_creds_has_effective_cap @@ -65,8 +73,10 @@ along with systemd; If not, see . sd_bus_creds_get_selinux_context sd_bus_creds_get_audit_session_id sd_bus_creds_get_audit_login_uid + sd_bus_creds_get_tty sd_bus_creds_get_unique_name sd_bus_creds_get_well_known_names + sd_bus_creds_get_description Retrieve fields from a credentials object @@ -77,281 +87,378 @@ along with systemd; If not, see . int sd_bus_creds_get_pid - sd_bus_creds* c + sd_bus_creds *c pid_t *pid - int sd_bus_creds_get_pid_starttime - sd_bus_creds* c - uint64_t *usec + int sd_bus_creds_get_ppid + sd_bus_creds *c + pid_t *ppid int sd_bus_creds_get_tid - sd_bus_creds* c + sd_bus_creds *c pid_t *tid - int sd_bus_creds_get_pid - sd_bus_creds* c + int sd_bus_creds_get_uid + sd_bus_creds *c + uid_t *uid + + + + int sd_bus_creds_get_euid + sd_bus_creds *c + uid_t *uid + + + + int sd_bus_creds_get_suid + sd_bus_creds *c + uid_t *uid + + + + int sd_bus_creds_get_fsuid + sd_bus_creds *c uid_t *uid int sd_bus_creds_get_gid - sd_bus_creds* c + sd_bus_creds *c gid_t *gid + + int sd_bus_creds_get_egid + sd_bus_creds *c + gid_t *gid + + + + int sd_bus_creds_get_sgid + sd_bus_creds *c + gid_t *gid + + + + int sd_bus_creds_get_fsgid + sd_bus_creds *c + gid_t *gid + + + + int sd_bus_creds_get_supplementary_gids + sd_bus_creds *c + const gid_t **gids + + int sd_bus_creds_get_comm - sd_bus_creds* c + sd_bus_creds *c const char **comm int sd_bus_creds_get_tid_comm - sd_bus_creds* c + sd_bus_creds *c const char **comm int sd_bus_creds_get_exe - sd_bus_creds* c + sd_bus_creds *c const char **exe int sd_bus_creds_get_cmdline - sd_bus_creds* c + sd_bus_creds *c char ***cmdline int sd_bus_creds_get_cgroup - sd_bus_creds* c + sd_bus_creds *c const char **cgroup int sd_bus_creds_get_unit - sd_bus_creds* c + sd_bus_creds *c const char **unit + + int sd_bus_creds_get_slice + sd_bus_creds *c + const char **slice + + int sd_bus_creds_get_user_unit - sd_bus_creds* c + sd_bus_creds *c const char **unit - int sd_bus_creds_get_slice - sd_bus_creds* c + int sd_bus_creds_get_user_slice + sd_bus_creds *c const char **slice int sd_bus_creds_get_session - sd_bus_creds* c + sd_bus_creds *c const char **slice int sd_bus_creds_get_owner_uid - sd_bus_creds* c + sd_bus_creds *c uid_t *uid int sd_bus_creds_has_effective_cap - sd_bus_creds* c + sd_bus_creds *c int capability int sd_bus_creds_has_permitted_cap - sd_bus_creds* c + sd_bus_creds *c int capability int sd_bus_creds_has_inheritable_cap - sd_bus_creds* c + sd_bus_creds *c int capability int sd_bus_creds_has_bounding_cap - sd_bus_creds* c + sd_bus_creds *c int capability int sd_bus_creds_get_selinux_context - sd_bus_creds* c + sd_bus_creds *c const char **context int sd_bus_creds_get_audit_session_id - sd_bus_creds* c + sd_bus_creds *c uint32_t *sessionid int sd_bus_creds_get_audit_login_uid - sd_bus_creds* c + sd_bus_creds *c uid_t *loginuid + + int sd_bus_creds_get_tty + sd_bus_creds *c + const char **tty + + int sd_bus_creds_get_unique_name - sd_bus_creds* c + sd_bus_creds *c const char **name int sd_bus_creds_get_well_known_names - sd_bus_creds* c + sd_bus_creds *c char ***name + + int sd_bus_creds_get_description + sd_bus_creds *c + const char **name + + Description - These functions return information from an - sd_bus_creds object. It may be created with + These functions return credential information from an + sd_bus_creds object. Credential objects may + be created with sd_bus_creds_new_from_pid3, - in which case it will describe the specified process, or it may be - created by - sd_bus_get_peer_creds3, - in which case it will describe the process at the other endpoint - of a connection. - - - sd_bus_creds_get_pid will retrieve the - PID (process identifier). - - sd_bus_creds_get_pid_starttime will - retrieve the time since the start of the epoch in microseconds - since the process was started. - - sd_bus_creds_get_tid will retrieve the + in which case they describe the credentials of the process + identified by the specified PID, with + sd_bus_get_name_creds3, + in which case they describe the credentials of a bus peer + identified by the specified bus name, with + sd_bus_get_owner_creds3, + in which case they describe the credentials of the creator of a + bus, or with + sd_bus_message_get_creds3, + in which case they describe the credentials of the sender of the + message. + + Not all credential fields are part of every + sd_bus_creds object. Use + sd_bus_creds_get_mask3 + to determine the mask of fields available. + + sd_bus_creds_get_pid() will retrieve + the PID (process identifier). Similarly, + sd_bus_creds_get_ppid() will retrieve the + parent PID. Note that PID 1 has no parent process, in which case + -ENXIO is returned. + + sd_bus_creds_get_tid() will retrieve the TID (thread identifier). - sd_bus_creds_get_uid will retrieve the - numeric UID (user identifier). - - sd_bus_creds_get_gid will retrieve the - numeric GID (group identifier). - - sd_bus_creds_get_comm will retrieve the - comm field (name of the executable, as stored in + sd_bus_creds_get_uid() will retrieve + the numeric UID (user identifier). Similarly, + sd_bus_creds_get_euid() returns the effective + UID, sd_bus_creds_get_suid() the saved UID + and sd_bus_creds_get_fsuid() the file system + UID. + + sd_bus_creds_get_gid() will retrieve the + numeric GID (group identifier). Similarly, + sd_bus_creds_get_egid() returns the effective + GID, sd_bus_creds_get_sgid() the saved GID + and sd_bus_creds_get_fsgid() the file system + GID. + + sd_bus_creds_get_supplementary_gids() + will retrieve the supplementary GIDs list. + + sd_bus_creds_get_comm() will retrieve the + comm field (truncated name of the executable, as stored in /proc/pid/comm). - sd_bus_creds_get_tid_comm will retrieve + sd_bus_creds_get_tid_comm() will retrieve the comm field of the thread (as stored in /proc/pid/task/tid/comm). - sd_bus_creds_get_exe will retrieve the - path to the program (as stored in the + sd_bus_creds_get_exe() will retrieve + the path to the program executable (as stored in the /proc/pid/exe - link, but with (deleted) suffix removed). - - - sd_bus_creds_get_cmdline will retrieve - an array of command-line arguments (as stored in - /proc/pid/cmdline). - - - sd_bus_creds_get_cgroup will retrieve - the cgroup path. See (deleted) suffix removed). Note + that kernel threads do not have an executable path, in which case + -ENXIO is returned. + + sd_bus_creds_get_cmdline() will + retrieve an array of command line arguments (as stored in + /proc/pid/cmdline). Note + that kernel threads do not have a command line, in which case + -ENXIO is returned. + + sd_bus_creds_get_cgroup() will retrieve + the control group path. See cgroups.txt. - sd_bus_creds_get_unit will retrieve the - systemd unit name (in the system instance of systemd) that the - process is part of. See - systemd.unit5. + sd_bus_creds_get_unit() will retrieve + the systemd unit name (in the system instance of systemd) that the + process is a part of. See + systemd.unit5. For + processes that are not part of a unit, returns -ENXIO. - sd_bus_creds_get_user_unit will + sd_bus_creds_get_user_unit() will retrieve the systemd unit name (in the user instance of systemd) - that the process is part of. See - systemd.unit5. + that the process is a part of. See + systemd.unit5. For + processes that are not part of a user unit, returns -ENXIO. - sd_bus_creds_get_slice will retrieve + sd_bus_creds_get_slice() will retrieve the systemd slice (a unit in the system instance of systemd) that - the process is part of. See - systemd.slice5. + the process is a part of. See + systemd.slice5. Similarly, + sd_bus_creds_get_user_slice() retrieves the + systemd slice of the process, in the user instance of systemd. - sd_bus_creds_get_session will retrieve - the logind session that the process is part of. See - systemd-logind.service8. + sd_bus_creds_get_session() will + retrieve the identifier of the login session that the process is + a part of. See + systemd-logind.service8. For + processes that are not part of a session, returns -ENXIO. - sd_bus_creds_get_owner_uid will retrieve - the numeric UID (user identifier) of the user who owns the slice - that the process is part of. See - systemd.slice5 - . + sd_bus_creds_get_owner_uid() will + retrieve the numeric UID (user identifier) of the user who owns + the login session that the process is a part of. See + systemd-logind.service8. + For processes that are not part of a session, returns -ENXIO. - sd_bus_creds_has_effective_cap will - check whether the capability specified by - capability was set in the effective - capabilities mask. A positive return value means that is was - set, zero means that it was not set, and a negative return - value signifies an error. See - capabilities7 - and Capabilities= and - CapabilityBoundingSet= settings in + sd_bus_creds_has_effective_cap() will check whether the capability specified by + capability was set in the effective capabilities mask. A positive return value means that it + was set, zero means that it was not set, and a negative return value indicates an error. See capabilities7 and the + AmbientCapabilities= and CapabilityBoundingSet= settings in systemd.exec5. - sd_bus_creds_has_permitted_cap is - similar to sd_bus_creds_has_effective_cap, + sd_bus_creds_has_permitted_cap() is + similar to sd_bus_creds_has_effective_cap(), but will check the permitted capabilities mask. - sd_bus_creds_has_inheritable_cap is - similar to sd_bus_creds_has_effective_cap, + sd_bus_creds_has_inheritable_cap() is + similar to sd_bus_creds_has_effective_cap(), but will check the inheritable capabilities mask. - sd_bus_creds_has_bounding_cap is - similar to sd_bus_creds_has_effective_cap, + sd_bus_creds_has_bounding_cap() is + similar to sd_bus_creds_has_effective_cap(), but will check the bounding capabilities mask. - sd_bus_creds_get_selinux_context will + sd_bus_creds_get_selinux_context() will retrieve the SELinux security context (label) of the process. - sd_bus_creds_get_audit_session_id will - retrieve the audit session identifier of the process. + sd_bus_creds_get_audit_session_id() + will retrieve the audit session identifier of the process. Returns + -ENXIO for processes that are not part of an audit session. - sd_bus_creds_get_audit_login_uid will + sd_bus_creds_get_audit_login_uid() will retrieve the audit user login identifier (the identifier of the - user who is "responsible" for the session). + user who is "responsible" for the session). Returns -ENXIO for + processes that are not part of an audit session. + + sd_bus_creds_get_tty() will retrieve + the controlling TTY, without the prefixing "/dev/". Returns -ENXIO + for processes that have no controlling TTY. - sd_bus_creds_get_unique_name will + sd_bus_creds_get_unique_name() will retrieve the D-Bus unique name. See The D-Bus specification. - sd_bus_creds_get_well_known_names will + sd_bus_creds_get_well_known_names() will retrieve the set of D-Bus well-known names. See The D-Bus specification. + sd_bus_creds_get_description() will + retrieve a descriptive name of the bus connection of the + peer. This name is useful to discern multiple bus connections by + the same peer, and may be altered by the peer with the + sd_bus_set_description3 + call. + All functions that take a const char** parameter will store the answer there as an address of a NUL-terminated string. It will be valid as long as @@ -359,8 +466,8 @@ along with systemd; If not, see . modified by the caller. All functions that take a char*** - parameter will store the answer there as an address of a an array - of strings. Each invidividual string is NUL-terminated, and the + parameter will store the answer there as an address of an array + of strings. Each individual string is NUL-terminated, and the array is NULL-terminated as a whole. It will be valid as long as c remains valid, and should not be freed or modified by the caller. @@ -381,44 +488,48 @@ along with systemd; If not, see . - -ENODATA + -ENODATA - Given field is not available in - c. + The given field is not available in the + credentials object c. - -ENOENT - - Given field is not specified for the sender. - This will be returned by sd_bus_get_unit, - sd_bus_get_user_unit, - sd_bus_get_slice, - sd_bus_get_session, and - sd_bus_get_owner_uid if the sender is not - part of a systemd system unit, systemd user unit, systemd - slice, logind session, or a systemd user session. + -ENXIO + + The given field is not specified for the described + process or peer. This will be returned by + sd_bus_get_unit(), + sd_bus_get_slice(), + sd_bus_get_user_unit(), + sd_bus_get_user_slice(), + sd_bus_get_session(), and + sd_bus_get_owner_uid() if the process is + not part of a systemd system unit, systemd user unit, systemd + slice, or logind session. It will also be returned by + sd_bus_creds_get_exe() and + sd_bus_creds_get_cmdline() for kernel + threads (since these are not started from an executable binary, + nor have a command line), and by + sd_bus_creds_get_audit_session_id() and + sd_bus_creds_get_audit_login_uid() when + the process is not part of an audit session, and + sd_bus_creds_get_tty() if the process has + no controlling TTY. + - -ENXIO - - An error occured in parsing cgroup paths. - libsystemd might be out of sync with - the running systemd version. - - - - -EINVAL + -EINVAL Specified pointer parameter is NULL. - -ENOMEM + -ENOMEM Memory allocation failed. @@ -428,10 +539,11 @@ along with systemd; If not, see . Notes - sd_bus_open_user() and other functions - described here are available as a shared library, which can be - compiled and linked to with the - libsystemd pkg-config1 + sd_bus_creds_get_pid() and the other + functions described here are available as a shared library, which + can be compiled and linked to with the + libelogind pkg-config1 file. @@ -441,12 +553,13 @@ along with systemd; If not, see . systemd1, sd-bus3, - credentials7, - fork2, - execve2, - free3, - proc5, - systemd.journald-fields7 + sd_bus_creds_new_from_pid2, + fork2, + execve2, + credentials7, + free3, + proc5, + systemd.journal-fields7