X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsd_pid_get_session.xml;h=a8266e02062f222bff09a9f9e7d0637f678fa876;hp=24e468015f42769324aade5e427ae1c2634e3462;hb=05a2f6fefedd7254fd799502191d025d2908cf74;hpb=01448ff92d9549785242ffab453bf5bcde348c61 diff --git a/man/sd_pid_get_session.xml b/man/sd_pid_get_session.xml index 24e468015..a8266e020 100644 --- a/man/sd_pid_get_session.xml +++ b/man/sd_pid_get_session.xml @@ -8,20 +8,20 @@ Copyright 2010 Lennart Poettering systemd is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. systemd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + Lesser General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . --> - + sd_pid_get_session @@ -44,8 +44,20 @@ sd_pid_get_session + sd_pid_get_unit + sd_pid_get_user_unit sd_pid_get_owner_uid - Determine session or owner of a session of a specific PID + sd_pid_get_machine_name + sd_pid_get_slice + sd_peer_get_session + sd_peer_get_unit + sd_peer_get_user_unit + sd_peer_get_owner_uid + sd_peer_get_machine_name + sd_peer_get_slice + Determine session, service, owner of a + session, container/VM or slice of a specific + PID or socket peer @@ -58,11 +70,71 @@ char** session + + int sd_pid_get_unit + pid_t pid + char** unit + + + + int sd_pid_get_user_unit + pid_t pid + char** unit + + int sd_pid_get_owner_uid pid_t pid uid_t* uid + + + int sd_pid_get_machine_name + pid_t pid + char** name + + + + int sd_pid_get_slice + pid_t pid + char** slice + + + + int sd_peer_get_session + int fd + char** session + + + + int sd_peer_get_unit + int fd + char** unit + + + + int sd_peer_get_user_unit + int fd + char** unit + + + + int sd_peer_get_owner_uid + int fd + uid_t* uid + + + + int sd_peer_get_machine_name + int fd + char** name + + + + int sd_peer_get_slice + int fd + char** slice + @@ -75,14 +147,37 @@ identifier. The session identifier is a short string, suitable for usage in file system paths. Note that not all processes are part of a login session (e.g. system - service processes and user processes that are shared - between multiple sessions of the same user). For - processes not being part of a login session this - function will fail. The returned string needs to be - freed with the libc + service processes, user processes that are shared + between multiple sessions of the same user, or kernel + threads). For processes not being part of a login + session this function will fail. The returned string + needs to be freed with the libc + free3 + call after use. + + sd_pid_get_unit() may be + used to determine the systemd system unit (i.e. system + service) identifier of a process identified by the + specified PID. The unit name is a short string, + suitable for usage in file system paths. Note that not + all processes are part of a system unit/service + (e.g. user processes, or kernel threads). For + processes not being part of a systemd system unit this + function will fail. (More specifically: this call will + not work for processes that are part of user units, + use sd_pid_get_user_unit() for + that.) The returned string needs to be freed with the + libc free3 call after use. + sd_pid_get_user_unit() may + be used to determine the systemd user unit (i.e. user + service) identifier of a process identified by the + specified PID. This is similar to + sd_pid_get_unit() but applies to + user units instead of system units. + sd_pid_get_owner_uid() may be used to determine the Unix user identifier of the owner of the session of a process identified the @@ -93,12 +188,43 @@ fail. For processes not being part of a login session and not being a shared process of a user this function will fail. + + sd_pid_get_machine_name() + may be used to determine the name of the VM or + container is a member of. The machine name is a short + string, suitable for usage in file system paths. The + returned string needs to be freed with the libc + free3 + call after use. + + sd_pid_get_slice() may be + used to determine the slice unit the process is a + member of. See + systemd.slice5 + for details about slices. The returned string needs to + be freed with the libc + free3 + call after use. + + If the pid parameter of any + of these functions is passed as 0, the operation is + executed for the calling process. + + The sd_peer_get_session(), + sd_peer_get_unit(), + sd_peer_get_user_unit(), + sd_peer_get_owner_uid(), + sd_peer_get_machine_name() and + sd_peer_get_slice() calls operate + similar to their PID counterparts, but operate on a + connected AF_UNIX socket and retrieve information + about the connected peer process. Return Value - On success these calls return 0 or a positive + On success, these calls return 0 or a positive integer. On failure, these calls return a negative errno-style error code. @@ -106,12 +232,21 @@ Notes - The sd_pid_get_session() - and sd_pid_get_owner_uid() - interfaces are available as shared library, which can - be compiled and linked to with the - libsystemd-login - pkg-config1 + The sd_pid_get_session(), + sd_pid_get_unit(), + sd_pid_get_user_unit(), + sd_pid_get_owner_uid(), + sd_pid_get_machine_name(), + sd_pid_get_slice(), + sd_peer_get_session(), + sd_peer_get_unit(), + sd_peer_get_user_unit(), + sd_peer_get_owner_uid(), + sd_peer_get_machine_name() and + sd_peer_get_slice() interfaces are + available as a shared library, which can be compiled + and linked to with the + libsystemd pkg-config1 file. Note that the login session identifier as @@ -126,9 +261,10 @@ systemd1, - sd-login7, + sd-login3, sd_session_is_active3, - getsid2 + getsid2, + systemd.slice5