chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
service: fix parsing word size functions
[elogind.git]
/
src
/
manager.h
diff --git
a/src/manager.h
b/src/manager.h
index 405f14356639015de97e413cf9825cac2b724a85..5b3aaf3364fe95d8be0a9d926253f125653d2fc1 100644
(file)
--- a/
src/manager.h
+++ b/
src/manager.h
@@
-46,9
+46,8
@@
typedef enum ManagerExitCode {
} ManagerExitCode;
typedef enum ManagerRunningAs {
} ManagerExitCode;
typedef enum ManagerRunningAs {
- MANAGER_INIT, /* root and pid=1 */
- MANAGER_SYSTEM, /* root and pid!=1 */
- MANAGER_SESSION, /* non-root, for a session */
+ MANAGER_SYSTEM,
+ MANAGER_SESSION,
_MANAGER_RUNNING_AS_MAX,
_MANAGER_RUNNING_AS_INVALID = -1
} ManagerRunningAs;
_MANAGER_RUNNING_AS_MAX,
_MANAGER_RUNNING_AS_INVALID = -1
} ManagerRunningAs;
@@
-125,6
+124,8
@@
struct Manager {
Hashmap *watch_pids; /* pid => Unit object n:1 */
Hashmap *watch_pids; /* pid => Unit object n:1 */
+ char *notify_socket;
+
Watch notify_watch;
Watch signal_watch;
Watch notify_watch;
Watch signal_watch;
@@
-136,7
+137,7
@@
struct Manager {
char **environment;
char **environment;
- timestamp startup_timestamp;
+
dual_
timestamp startup_timestamp;
/* Data specific to the device subsystem */
struct udev* udev;
/* Data specific to the device subsystem */
struct udev* udev;
@@
-152,14
+153,18
@@
struct Manager {
/* Data specific to the D-Bus subsystem */
DBusConnection *api_bus, *system_bus;
/* Data specific to the D-Bus subsystem */
DBusConnection *api_bus, *system_bus;
- Set *subscribed;
+ DBusServer *private_bus;
+ Set *bus_connections, *bus_connections_for_dispatch;
+
DBusMessage *queued_message; /* This is used during reloading:
* before the reload we queue the
* reply message here, and
* afterwards we send it */
DBusMessage *queued_message; /* This is used during reloading:
* before the reload we queue the
* reply message here, and
* afterwards we send it */
+ DBusConnection *queued_message_connection; /* The connection to send the queued message on */
Hashmap *watch_bus; /* D-Bus names => Unit object n:1 */
int32_t name_data_slot;
Hashmap *watch_bus; /* D-Bus names => Unit object n:1 */
int32_t name_data_slot;
+ int32_t subscribed_data_slot;
/* Data specific to the Automount subsystem */
int dev_autofs_fd;
/* Data specific to the Automount subsystem */
int dev_autofs_fd;
@@
-167,12
+172,17
@@
struct Manager {
/* Data specific to the cgroup subsystem */
Hashmap *cgroup_bondings; /* path string => CGroupBonding object 1:n */
char *cgroup_controller;
/* Data specific to the cgroup subsystem */
Hashmap *cgroup_bondings; /* path string => CGroupBonding object 1:n */
char *cgroup_controller;
+ char *cgroup_mount_point;
char *cgroup_hierarchy;
usec_t gc_queue_timestamp;
int gc_marker;
unsigned n_in_gc_queue;
char *cgroup_hierarchy;
usec_t gc_queue_timestamp;
int gc_marker;
unsigned n_in_gc_queue;
+ /* Make sure the user cannot accidentaly unmount our cgroup
+ * file system */
+ int pin_cgroupfs_fd;
+
/* Flags */
ManagerRunningAs running_as;
ManagerExitCode exit_code:4;
/* Flags */
ManagerRunningAs running_as;
ManagerExitCode exit_code:4;
@@
-181,15
+191,13
@@
struct Manager {
bool dispatching_run_queue:1;
bool dispatching_dbus_queue:1;
bool dispatching_run_queue:1;
bool dispatching_dbus_queue:1;
- bool request_api_bus_dispatch:1;
- bool request_system_bus_dispatch:1;
-
bool utmp_reboot_written:1;
bool utmp_reboot_written:1;
- bool confirm_spawn:1;
+ bool show_status;
+ bool confirm_spawn;
};
};
-int manager_new(ManagerRunningAs running_as,
bool confirm_spawn,
Manager **m);
+int manager_new(ManagerRunningAs running_as, Manager **m);
void manager_free(Manager *m);
int manager_enumerate(Manager *m);
void manager_free(Manager *m);
int manager_enumerate(Manager *m);
@@
-234,6
+242,8
@@
int manager_deserialize(Manager *m, FILE *f, FDSet *fds);
int manager_reload(Manager *m);
int manager_reload(Manager *m);
+bool manager_is_booting_or_shutting_down(Manager *m);
+
const char *manager_running_as_to_string(ManagerRunningAs i);
ManagerRunningAs manager_running_as_from_string(const char *s);
const char *manager_running_as_to_string(ManagerRunningAs i);
ManagerRunningAs manager_running_as_from_string(const char *s);