mirror of
https://github.com/systemd/systemd
synced 2024-09-06 08:46:19 +00:00
login: introduce sd_session_get_display()
This commit is contained in:
parent
068665b6fd
commit
fc8af9ff3f
|
@ -44,4 +44,5 @@ LIBSYSTEMD_LOGIN_43 {
|
|||
global:
|
||||
sd_session_get_type;
|
||||
sd_session_get_class;
|
||||
sd_session_get_display;
|
||||
} LIBSYSTEMD_LOGIN_38;
|
||||
|
|
|
@ -475,6 +475,10 @@ _public_ int sd_session_get_class(const char *session, char **class) {
|
|||
return session_get_string(session, "CLASS", class);
|
||||
}
|
||||
|
||||
_public_ int sd_session_get_display(const char *session, char **display) {
|
||||
return session_get_string(session, "DISPLAY", display);
|
||||
}
|
||||
|
||||
static int file_of_seat(const char *seat, char **_p) {
|
||||
char *p;
|
||||
int r;
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
int main(int argc, char* argv[]) {
|
||||
int r, k;
|
||||
uid_t u, u2;
|
||||
char *seat, *type, *class;
|
||||
char *seat, *type, *class, *display;
|
||||
char *session;
|
||||
char *state;
|
||||
char *session2;
|
||||
|
@ -83,6 +83,10 @@ int main(int argc, char* argv[]) {
|
|||
printf("class = %s\n", class);
|
||||
free(class);
|
||||
|
||||
assert_se(sd_session_get_display(session, &display) >= 0);
|
||||
printf("display = %s\n", display);
|
||||
free(display);
|
||||
|
||||
assert_se(sd_session_get_seat(session, &seat) >= 0);
|
||||
printf("seat = %s\n", seat);
|
||||
|
||||
|
|
|
@ -96,6 +96,9 @@ int sd_session_get_type(const char *session, char **type);
|
|||
/* Determine the class of this session, i.e. one of "user", "greeter" or "lock-screen". */
|
||||
int sd_session_get_class(const char *session, char **class);
|
||||
|
||||
/* Determine the X11 display of this session. */
|
||||
int sd_session_get_display(const char *session, char **display);
|
||||
|
||||
/* Return active session and user of seat */
|
||||
int sd_seat_get_active(const char *seat, char **session, uid_t *uid);
|
||||
|
||||
|
|
Loading…
Reference in a new issue