pid1: make TimeoutAbortSec settable for transient units
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 27 Nov 2019 12:42:57 +0000 (13:42 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 27 Nov 2019 12:56:29 +0000 (13:56 +0100)
It was documented to be, but implementation was missing.

src/core/dbus-service.c
src/shared/bus-unit-util.c

index 3a58977..5cf9b21 100644 (file)
@@ -309,6 +309,13 @@ static int bus_service_set_transient_property(
         if (streq(name, "TimeoutStopUSec"))
                 return bus_set_transient_usec(u, name, &s->timeout_stop_usec, message, flags, error);
 
+        if (streq(name, "TimeoutAbortUSec")) {
+                r = bus_set_transient_usec(u, name, &s->timeout_abort_usec, message, flags, error);
+                if (r >= 0 && !UNIT_WRITE_FLAGS_NOOP(flags))
+                        s->timeout_abort_set = true;
+                return r;
+        }
+
         if (streq(name, "RuntimeMaxUSec"))
                 return bus_set_transient_usec(u, name, &s->runtime_max_usec, message, flags, error);
 
index 64c0d12..22a1549 100644 (file)
@@ -1485,6 +1485,7 @@ static int bus_append_service_property(sd_bus_message *m, const char *field, con
         if (STR_IN_SET(field, "RestartSec",
                               "TimeoutStartSec",
                               "TimeoutStopSec",
+                              "TimeoutAbortSec",
                               "RuntimeMaxSec",
                               "WatchdogSec"))
                 return bus_append_parse_sec_rename(m, field, eq);