chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
core: when an already abandoned unit gets abandoned again generate a clean error
[elogind.git]
/
src
/
core
/
service.h
diff --git
a/src/core/service.h
b/src/core/service.h
index d1e53bf727fa0a97ffc1b848659ca085f8be398b..1992926e92414a16ac3eb8711a80c529d5891e2c 100644
(file)
--- a/
src/core/service.h
+++ b/
src/core/service.h
@@
-26,7
+26,6
@@
typedef struct Service Service;
#include "unit.h"
#include "path.h"
#include "ratelimit.h"
#include "unit.h"
#include "path.h"
#include "ratelimit.h"
-#include "service.h"
#include "kill.h"
#include "exit-status.h"
#include "kill.h"
#include "exit-status.h"
@@
-54,6
+53,7
@@
typedef enum ServiceRestart {
SERVICE_RESTART_NO,
SERVICE_RESTART_ON_SUCCESS,
SERVICE_RESTART_ON_FAILURE,
SERVICE_RESTART_NO,
SERVICE_RESTART_ON_SUCCESS,
SERVICE_RESTART_ON_FAILURE,
+ SERVICE_RESTART_ON_WATCHDOG,
SERVICE_RESTART_ON_ABORT,
SERVICE_RESTART_ALWAYS,
_SERVICE_RESTART_MAX,
SERVICE_RESTART_ON_ABORT,
SERVICE_RESTART_ALWAYS,
_SERVICE_RESTART_MAX,
@@
-129,12
+129,13
@@
struct Service {
dual_timestamp watchdog_timestamp;
usec_t watchdog_usec;
dual_timestamp watchdog_timestamp;
usec_t watchdog_usec;
-
Watch watchdog_watch
;
+
sd_event_source *watchdog_event_source
;
ExecCommand* exec_command[_SERVICE_EXEC_COMMAND_MAX];
ExecContext exec_context;
KillContext kill_context;
ExecCommand* exec_command[_SERVICE_EXEC_COMMAND_MAX];
ExecContext exec_context;
KillContext kill_context;
+ CGroupContext cgroup_context;
ServiceState state, deserialized_state;
ServiceState state, deserialized_state;
@@
-152,11
+153,12
@@
struct Service {
/* The ID of the control command currently being executed */
ServiceExecCommand control_command_id;
/* The ID of the control command currently being executed */
ServiceExecCommand control_command_id;
+ /* Runtime data of the execution context */
+ ExecRuntime *exec_runtime;
+
pid_t main_pid, control_pid;
int socket_fd;
pid_t main_pid, control_pid;
int socket_fd;
- int fsck_passno;
-
bool permissions_start_only;
bool root_directory_start_only;
bool remain_after_exit;
bool permissions_start_only;
bool root_directory_start_only;
bool remain_after_exit;
@@
-170,7
+172,6
@@
struct Service {
bool main_pid_alien:1;
bool bus_name_good:1;
bool forbid_restart:1;
bool main_pid_alien:1;
bool bus_name_good:1;
bool forbid_restart:1;
- bool got_socket_fd:1;
bool start_timeout_defined:1;
#ifdef HAVE_SYSV_COMPAT
bool is_sysv:1;
bool start_timeout_defined:1;
#ifdef HAVE_SYSV_COMPAT
bool is_sysv:1;
@@
-191,7
+192,7
@@
struct Service {
UnitRef accept_socket;
UnitRef accept_socket;
-
Watch timer_watch
;
+
sd_event_source *timer_event_source
;
PathSpec *pid_file_pathspec;
NotifyAccess notify_access;
PathSpec *pid_file_pathspec;
NotifyAccess notify_access;
@@
-203,23
+204,23
@@
struct Socket;
int service_set_socket_fd(Service *s, int fd, struct Socket *socket);
int service_set_socket_fd(Service *s, int fd, struct Socket *socket);
-const char* service_state_to_string(ServiceState i);
-ServiceState service_state_from_string(const char *s);
+const char* service_state_to_string(ServiceState i)
_const_
;
+ServiceState service_state_from_string(const char *s)
_pure_
;
-const char* service_restart_to_string(ServiceRestart i);
-ServiceRestart service_restart_from_string(const char *s);
+const char* service_restart_to_string(ServiceRestart i)
_const_
;
+ServiceRestart service_restart_from_string(const char *s)
_pure_
;
-const char* service_type_to_string(ServiceType i);
-ServiceType service_type_from_string(const char *s);
+const char* service_type_to_string(ServiceType i)
_const_
;
+ServiceType service_type_from_string(const char *s)
_pure_
;
-const char* service_exec_command_to_string(ServiceExecCommand i);
-ServiceExecCommand service_exec_command_from_string(const char *s);
+const char* service_exec_command_to_string(ServiceExecCommand i)
_const_
;
+ServiceExecCommand service_exec_command_from_string(const char *s)
_pure_
;
-const char* notify_access_to_string(NotifyAccess i);
-NotifyAccess notify_access_from_string(const char *s);
+const char* notify_access_to_string(NotifyAccess i)
_const_
;
+NotifyAccess notify_access_from_string(const char *s)
_pure_
;
-const char* service_result_to_string(ServiceResult i);
-ServiceResult service_result_from_string(const char *s);
+const char* service_result_to_string(ServiceResult i)
_const_
;
+ServiceResult service_result_from_string(const char *s)
_pure_
;
-const char* start_limit_action_to_string(StartLimitAction i);
-StartLimitAction start_limit_action_from_string(const char *s);
+const char* start_limit_action_to_string(StartLimitAction i)
_const_
;
+StartLimitAction start_limit_action_from_string(const char *s)
_pure_
;