From: Lennart Poettering Date: Mon, 24 May 2010 20:32:09 +0000 (+0200) Subject: service: interpret Debian-style X-Interactive LSB header field X-Git-Tag: 0.git+20100605+dfd8ee-1~11^2^2~1 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=723c83fd051e2c3a195251cc0bd1313cb6bcf729;p=systemd service: interpret Debian-style X-Interactive LSB header field --- diff --git a/src/service.c b/src/service.c index 3fbc0acd..8ff7b731 100644 --- a/src/service.c +++ b/src/service.c @@ -599,6 +599,19 @@ static int service_load_sysv_path(Service *s, const char *path) { u->meta.description = d; + } else if (startswith_no_case(t, "X-Interactive:")) { + int b; + + if ((b = parse_boolean(strstrip(t+14))) < 0) { + log_warning("[%s:%u] Couldn't parse interactive flag. Ignoring.", path, line); + continue; + } + + if (b) + s->exec_context.std_input = EXEC_INPUT_TTY; + else + s->exec_context.std_input = EXEC_INPUT_NULL; + } else if (state == LSB_DESCRIPTION) { if (startswith(l, "#\t") || startswith(l, "# ")) {