X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsd_session_is_active.xml;h=31a611996e3b4b6bbb5a5404e1d0a04607b8e05b;hp=88b22fd9f8366cabe5b791d26c209f98f84610f2;hb=9541666b8d97f107335dd7e3cb93b4d2cfbf19c9;hpb=dc1ecd78e9f046880d10ddb45cf9b06df1084b10 diff --git a/man/sd_session_is_active.xml b/man/sd_session_is_active.xml index 88b22fd9f..31a611996 100644 --- a/man/sd_session_is_active.xml +++ b/man/sd_session_is_active.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_session_is_active @@ -44,8 +44,18 @@ sd_session_is_active + sd_session_is_remote + sd_session_get_state sd_session_get_uid sd_session_get_seat + sd_session_get_service + sd_session_get_type + sd_session_get_class + sd_session_get_display + sd_session_get_tty + sd_session_get_vt + sd_session_get_remote_host + sd_session_get_remote_user Determine state of a specific session @@ -58,6 +68,17 @@ const char* session + + int sd_session_is_remote + const char* session + + + + int sd_session_get_state + const char* session + char** state + + int sd_session_get_uid const char* session @@ -69,6 +90,54 @@ const char* session char** seat + + + int sd_session_get_service + const char* session + char** service + + + + int sd_session_get_type + const char* session + char** type + + + + int sd_session_get_class + const char* session + char** class + + + + int sd_session_get_display + const char* session + char** display + + + + int sd_session_get_remote_host + const char* session + char** remote_host + + + + int sd_session_get_remote_user + const char* session + char** remote_user + + + + int sd_session_get_tty + const char* session + char** tty + + + + int sd_session_get_vt + const char* session + unsigned int* vt + @@ -81,6 +150,30 @@ (i.e. currently in the foreground and available for user input) or not. + sd_session_is_remote() may + be used to determine whether the session identified by + the specified session identifier is a remote session + (i.e. its remote host is known) or not. + + sd_session_get_state() may + be used to determine the state of the session + identified by the specified session identifier. The + following states are currently known: + online (session logged in, but + session not active, i.e. not in the foreground), + active (session logged in and + active, i.e. in the foreground), + closing (session nominally logged + out, but some processes belonging to it are still + around). In the future additional states might be + defined, client code should be written to be robust in + regards to additional state strings being + returned. This function is a more generic version of + sd_session_is_active(). The returned + string needs to be freed with the libc + free3 + call after use. + sd_session_get_uid() may be used to determine the user identifier of the Unix user the session identified by the specified session identifier belongs @@ -94,16 +187,100 @@ returned string needs to be freed with the libc free3 call after use. + + sd_session_get_service() + may be used to determine the name of the service (as + passed during PAM session setup) that registered the + session identified by the specified session + identifier. The returned string needs to be freed with + the libc + free3 + call after use. + + sd_session_get_type() may + be used to determine the type of the session + identified by the specified session identifier. The + returned string is one of x11, + wayland, tty, + mir or unspecified and + needs to be freed with the libc + free3 + call after use. + + sd_session_get_class() may + be used to determine the class of the session + identified by the specified session identifier. The + returned string is one of user, + greeter, + lock-screen, or + background and needs to be freed + with the libc + free3 + call after use. + + sd_session_get_display() + may be used to determine the X11 display of the + session identified by the specified session + identifier. The returned string needs to be + freed with the libc + free3 + call after use. + + sd_session_get_remote_host() + may be used to determine the remote hostname of the + session identified by the specified session + identifier. The returned string needs to be + freed with the libc + free3 + call after use. + + sd_session_get_remote_user() + may be used to determine the remote username of the + session identified by the specified session + identifier. The returned string needs to be + freed with the libc + free3 + call after use. Note that this value is rarely known + to the system, and even then should not be relied on. + + sd_session_get_tty() + may be used to determine the TTY device of the + session identified by the specified session + identifier. The returned string needs to be + freed with the libc + free3 + call after use. + + sd_session_get_vt() + may be used to determine the VT number of the + session identified by the specified session + identifier. This function will return an error if + the seat does not support VTs. + + If the session parameter of + any of these functions is passed as + NULL, the operation is executed + for the session the calling process is a member of, if + there is any. Return Value - If the test succeeds - sd_session_is_active() returns a - positive integer, if it fails 0. On success - sd_session_get_uid() and - sd_session_get_seat() return 0 or + If the test succeeds, + sd_session_is_active() and + sd_session_is_remote() return a + positive integer; if it fails, 0. On success, + sd_session_get_state(), + sd_session_get_uid(), + sd_session_get_seat(), + sd_session_get_service(), + sd_session_get_type(), + sd_session_get_class(), + sd_session_get_display(), + sd_session_get_remote_user(), + sd_session_get_remote_host() and + sd_session_get_tty() return 0 or a positive integer. On failure, these calls return a negative errno-style error code. @@ -112,12 +289,19 @@ Notes The sd_session_is_active(), - sd_session_get_uid(), and - sd_session_get_seat() interfaces - are available as shared library, which can be compiled - and linked to with the - libsystemd-login - pkg-config1 + sd_session_get_state(), + sd_session_get_uid(), + sd_session_get_seat(), + sd_session_get_service(), + sd_session_get_type(), + sd_session_get_class(), + sd_session_get_display(), + sd_session_get_remote_host(), + sd_session_get_remote_user() and + sd_session_get_tty() + interfaces are available as a shared library, which can + be compiled and linked to with the + libsystemd pkg-config1 file. @@ -126,7 +310,7 @@ systemd1, - sd-login7, + sd-login3, sd_pid_get_session3