X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=inline;f=manager.h;h=b6030a02374c018059c33647172786297958216f;hb=10a94420172b33a7472a16b2e829689dbc570cad;hp=77b39b27d07a2252bd4f5d1dad7d3b4d3b3809b2;hpb=28247076541bb1d1c0b09c8e10f4dcb421e20188;p=elogind.git diff --git a/manager.h b/manager.h index 77b39b27d..b6030a023 100644 --- a/manager.h +++ b/manager.h @@ -35,7 +35,7 @@ typedef struct Watch Watch; typedef enum ManagerRunningAs { MANAGER_INIT, /* root and pid=1 */ MANAGER_SYSTEM, /* root and pid!=1 */ - MANAGER_SESSION, /* non-root */ + MANAGER_SESSION, /* non-root, for a session */ _MANAGER_RUNNING_AS_MAX, _MANAGER_RUNNING_AS_INVALID = -1 } ManagerRunningAs; @@ -152,6 +152,8 @@ struct Manager { bool utmp_reboot_written:1; + bool confirm_spawn:1; + Hashmap *watch_pids; /* pid => Unit object n:1 */ int epoll_fd; @@ -183,7 +185,7 @@ struct Manager { usec_t boot_timestamp; }; -int manager_new(ManagerRunningAs running_as, Manager **m); +int manager_new(ManagerRunningAs running_as, bool confirm_spawn, Manager **m); void manager_free(Manager *m); int manager_coldplug(Manager *m);