Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
systemd
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
steam
systemd
Commits
d18dff43
Commit
d18dff43
authored
Sep 12, 2012
by
Lennart Poettering
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
login: reshuffle meaning of require_active parameter
parent
78ab361c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
10 deletions
+21
-10
man/sd_uid_get_state.xml
man/sd_uid_get_state.xml
+9
-8
src/login/sd-login.c
src/login/sd-login.c
+12
-2
No files found.
man/sd_uid_get_state.xml
View file @
d18dff43
...
...
@@ -111,7 +111,7 @@
or active on a specific seat. Accepts a Unix user
identifier and a seat identifier string as
parameters. The
<parameter>
require_active
</parameter>
parameter is a boolean. If non-zero (true) this
parameter is a boolean
value
. If non-zero (true) this
function will test if the user is active (i.e. has a
session that is in the foreground and accepting user
input) on the specified seat, otherwise (false) only
...
...
@@ -122,13 +122,14 @@
be used to determine the current sessions of the
specified user. Acceptes a Unix user identifier as
parameter. The
<parameter>
require_active
</parameter>
boolean parameter controls whether the returned list
shall consist of only those sessions where the user is
currently active (true) or where the user is currently
logged in at all, possibly inactive (false). The call
returns a NULL terminated string array of session
identifiers in
<parameter>
sessions
</parameter>
which
needs to be freed by the caller with the libc
parameter controls whether the returned list shall
consist of only those sessions where the user is
currently active (
>
0), where the user is currently
online but possibly inactive (= 0), or
logged in at all but possibly closing the session (
<
0). The call returns a
NULL terminated string array of session identifiers in
<parameter>
sessions
</parameter>
which needs to be
freed by the caller with the libc
<citerefentry><refentrytitle>
free
</refentrytitle><manvolnum>
3
</manvolnum></citerefentry>
call after use, including all the strings
referenced. If the string array parameter is passed as
...
...
src/login/sd-login.c
View file @
d18dff43
...
...
@@ -259,11 +259,21 @@ static int uid_get_array(uid_t uid, const char *variable, char ***array) {
}
_public_
int
sd_uid_get_sessions
(
uid_t
uid
,
int
require_active
,
char
***
sessions
)
{
return
uid_get_array
(
uid
,
require_active
==
2
?
"ONLINE_SESSIONS"
:
(
require_active
?
"ACTIVE_SESSIONS"
:
"SESSIONS"
),
sessions
);
return
uid_get_array
(
uid
,
require_active
==
0
?
"ONLINE_SESSIONS"
:
require_active
>
0
?
"ACTIVE_SESSIONS"
:
"SESSIONS"
,
sessions
);
}
_public_
int
sd_uid_get_seats
(
uid_t
uid
,
int
require_active
,
char
***
seats
)
{
return
uid_get_array
(
uid
,
require_active
==
2
?
"ONLINE_SEATS"
:
(
require_active
?
"ACTIVE_SEATS"
:
"SEATS"
),
seats
);
return
uid_get_array
(
uid
,
require_active
==
0
?
"ONLINE_SEATS"
:
require_active
>
0
?
"ACTIVE_SEATS"
:
"SEATS"
,
seats
);
}
static
int
file_of_session
(
const
char
*
session
,
char
**
_p
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment