chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: look at STDOUT, not STDIN, when determining tty columns
[elogind.git]
/
src
/
service.c
diff --git
a/src/service.c
b/src/service.c
index d52856af897985afe57b2e4ca51a4910172ed872..88992eb42a5d15007b8ac2743898fc661e920e5c 100644
(file)
--- a/
src/service.c
+++ b/
src/service.c
@@
-95,7
+95,7
@@
static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
[SERVICE_STOP_POST] = UNIT_DEACTIVATING,
[SERVICE_FINAL_SIGTERM] = UNIT_DEACTIVATING,
[SERVICE_FINAL_SIGKILL] = UNIT_DEACTIVATING,
[SERVICE_STOP_POST] = UNIT_DEACTIVATING,
[SERVICE_FINAL_SIGTERM] = UNIT_DEACTIVATING,
[SERVICE_FINAL_SIGKILL] = UNIT_DEACTIVATING,
- [SERVICE_
MAINTENANCE] = UNIT_MAINTENANCE
,
+ [SERVICE_
FAILED] = UNIT_FAILED
,
[SERVICE_AUTO_RESTART] = UNIT_ACTIVATING
};
[SERVICE_AUTO_RESTART] = UNIT_ACTIVATING
};
@@
-251,9
+251,17
@@
static int sysv_translate_facility(const char *name, char **_r) {
"$time", SPECIAL_RTC_SET_TARGET,
/* Debian extensions */
"$time", SPECIAL_RTC_SET_TARGET,
/* Debian extensions */
+#ifdef TARGET_DEBIAN
"$mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
"$mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
+#endif
"$mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
"$mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
- "$x-display-manager", SPECIAL_DISPLAY_MANAGER_SERVICE
+ "$x-display-manager", SPECIAL_DISPLAY_MANAGER_SERVICE,
+
+#ifdef TARGET_FEDORA
+ /* Fedora extensions, lacking the $ prefix */
+ "MTA", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
+ "smtpdaemon", SPECIAL_MAIL_TRANSFER_AGENT_TARGET
+#endif
};
unsigned i;
};
unsigned i;
@@
-1189,7
+1197,7
@@
static void service_set_state(Service *s, ServiceState state) {
state == SERVICE_STOP_POST ||
state == SERVICE_FINAL_SIGTERM ||
state == SERVICE_FINAL_SIGKILL ||
state == SERVICE_STOP_POST ||
state == SERVICE_FINAL_SIGTERM ||
state == SERVICE_FINAL_SIGKILL ||
- state == SERVICE_
MAINTENANCE
||
+ state == SERVICE_
FAILED
||
state == SERVICE_AUTO_RESTART)
service_notify_sockets_dead(s);
state == SERVICE_AUTO_RESTART)
service_notify_sockets_dead(s);
@@
-1513,7
+1521,7
@@
static void service_enter_dead(Service *s, bool success, bool allow_restart) {
service_set_state(s, SERVICE_AUTO_RESTART);
} else
service_set_state(s, SERVICE_AUTO_RESTART);
} else
- service_set_state(s, s->failure ? SERVICE_
MAINTENANCE
: SERVICE_DEAD);
+ service_set_state(s, s->failure ? SERVICE_
FAILED
: SERVICE_DEAD);
s->forbid_restart = false;
s->forbid_restart = false;
@@
-1958,7
+1966,7
@@
static int service_start(Unit *u) {
s->state == SERVICE_START_POST)
return 0;
s->state == SERVICE_START_POST)
return 0;
- assert(s->state == SERVICE_DEAD || s->state == SERVICE_
MAINTENANCE
|| s->state == SERVICE_AUTO_RESTART);
+ assert(s->state == SERVICE_DEAD || s->state == SERVICE_
FAILED
|| s->state == SERVICE_AUTO_RESTART);
/* Make sure we don't enter a busy loop of some kind. */
if (!ratelimit_test(&s->ratelimit)) {
/* Make sure we don't enter a busy loop of some kind. */
if (!ratelimit_test(&s->ratelimit)) {
@@
-2512,7
+2520,7
@@
static void service_timer_event(Unit *u, uint64_t elapsed, Watch* w) {
break;
case SERVICE_FINAL_SIGKILL:
break;
case SERVICE_FINAL_SIGKILL:
- log_warning("%s still around after SIGKILL (2). Entering
maintenance
mode.", u->meta.id);
+ log_warning("%s still around after SIGKILL (2). Entering
failed
mode.", u->meta.id);
service_enter_dead(s, false, true);
break;
service_enter_dead(s, false, true);
break;
@@
-2845,12
+2853,12
@@
int service_set_socket_fd(Service *s, int fd, Socket *sock) {
return 0;
}
return 0;
}
-static void service_reset_
maintenance
(Unit *u) {
+static void service_reset_
failed
(Unit *u) {
Service *s = SERVICE(u);
assert(s);
Service *s = SERVICE(u);
assert(s);
- if (s->state == SERVICE_
MAINTENANCE
)
+ if (s->state == SERVICE_
FAILED
)
service_set_state(s, SERVICE_DEAD);
s->failure = false;
service_set_state(s, SERVICE_DEAD);
s->failure = false;
@@
-2870,7
+2878,7
@@
static const char* const service_state_table[_SERVICE_STATE_MAX] = {
[SERVICE_STOP_POST] = "stop-post",
[SERVICE_FINAL_SIGTERM] = "final-sigterm",
[SERVICE_FINAL_SIGKILL] = "final-sigkill",
[SERVICE_STOP_POST] = "stop-post",
[SERVICE_FINAL_SIGTERM] = "final-sigterm",
[SERVICE_FINAL_SIGKILL] = "final-sigkill",
- [SERVICE_
MAINTENANCE] = "maintenance
",
+ [SERVICE_
FAILED] = "failed
",
[SERVICE_AUTO_RESTART] = "auto-restart",
};
[SERVICE_AUTO_RESTART] = "auto-restart",
};
@@
-2943,7
+2951,7
@@
const UnitVTable service_vtable = {
.sigchld_event = service_sigchld_event,
.timer_event = service_timer_event,
.sigchld_event = service_sigchld_event,
.timer_event = service_timer_event,
- .reset_
maintenance = service_reset_maintenance
,
+ .reset_
failed = service_reset_failed
,
.cgroup_notify_empty = service_cgroup_notify_event,
.notify_message = service_notify_message,
.cgroup_notify_empty = service_cgroup_notify_event,
.notify_message = service_notify_message,