summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/manager.h3
-rw-r--r--src/service.c8
2 files changed, 9 insertions, 2 deletions
diff --git a/src/manager.h b/src/manager.h
index 9548b0f613..e2f9cf67e9 100644
--- a/src/manager.h
+++ b/src/manager.h
@@ -105,7 +105,8 @@ struct Watch {
#define SPECIAL_RPCBIND_TARGET "rpcbind.target" /* LSB's $portmap */
#define SPECIAL_SYSLOG_TARGET "syslog.target" /* LSB's $syslog; Should pull in syslog.socket or syslog.service */
#define SPECIAL_RTC_SET_TARGET "rtc-set.target" /* LSB's $time */
-
+#define SPECIAL_DISPLAY_MANAGER_TARGET "display-manager.target" /* Debian's $x-display-manager */
+#define SPECIAL_MAIL_TRANSFER_AGENT_TARGET "mail-transfer-agent.target" /* Debian's $mail-{transport|transfer-agent */
#define SPECIAL_BASIC_TARGET "basic.target"
#define SPECIAL_RESCUE_TARGET "rescue.target"
diff --git a/src/service.c b/src/service.c
index 1379d14ff0..d4b874d624 100644
--- a/src/service.c
+++ b/src/service.c
@@ -191,13 +191,19 @@ static char *sysv_translate_name(const char *name) {
static int sysv_translate_facility(const char *name, char **_r) {
static const char * const table[] = {
+ /* LSB defined facilities */
"$local_fs", SPECIAL_LOCAL_FS_TARGET,
"$network", SPECIAL_NETWORK_TARGET,
"$named", SPECIAL_NSS_LOOKUP_TARGET,
"$portmap", SPECIAL_RPCBIND_TARGET,
"$remote_fs", SPECIAL_REMOTE_FS_TARGET,
"$syslog", SPECIAL_SYSLOG_TARGET,
- "$time", SPECIAL_RTC_SET_TARGET
+ "$time", SPECIAL_RTC_SET_TARGET,
+
+ /* Debian extensions */
+ "$mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
+ "$mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
+ "$x-display-manager", SPECIAL_DISPLAY_MANAGER_TARGET,
};
unsigned i;