chiark / gitweb /
cgls: add pager support to systemd-cgls
[elogind.git] / src / logind-session.h
index 7a8001eca6807461754bf54353c36a8128d0f9a8..e58ff6fd8f53fa97b78e192f3b897b654bae58f6 100644 (file)
@@ -31,9 +31,9 @@ typedef struct Session Session;
 #include "logind-user.h"
 
 typedef enum SessionType {
+        SESSION_UNSPECIFIED,
         SESSION_TTY,
         SESSION_X11,
-        SESSION_OTHER,
         _SESSION_TYPE_MAX,
         _SESSION_TYPE_INVALID = -1
 } SessionType;
@@ -65,7 +65,8 @@ struct Session {
         pid_t leader;
         uint32_t audit_id;
 
-        int pipe_fd;
+        int fifo_fd;
+        char *fifo_path;
 
         char *cgroup_path;
         char **controllers, **reset_controllers;
@@ -85,14 +86,14 @@ struct Session {
 
 Session *session_new(Manager *m, User *u, const char *id);
 void session_free(Session *s);
-int session_check_gc(Session *s);
+int session_check_gc(Session *s, bool drop_not_started);
 void session_add_to_gc_queue(Session *s);
 int session_activate(Session *s);
 bool session_is_active(Session *s);
 int session_get_idle_hint(Session *s, dual_timestamp *t);
 void session_set_idle_hint(Session *s, bool b);
-int session_set_pipe_fd(Session *s, int fd);
-void session_unset_pipe_fd(Session *s);
+int session_create_fifo(Session *s);
+void session_remove_fifo(Session *s);
 int session_start(Session *s);
 int session_stop(Session *s);
 int session_save(Session *s);