X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fswap.c;h=26141e6a33a643db721e1554d36c126b6d9c149c;hb=ff975efb2e88dcd5221a2f0d76c4c87e85b821a8;hp=6b204df5841d1d682bd2025d7f77786d464431b0;hpb=7bb01eff62aa7b612e33fe0e512a4d97862050c4;p=elogind.git diff --git a/src/core/swap.c b/src/core/swap.c index 6b204df58..26141e6a3 100644 --- a/src/core/swap.c +++ b/src/core/swap.c @@ -1367,6 +1367,20 @@ static int swap_kill(Unit *u, KillWho who, int signo, sd_bus_error *error) { return unit_kill_common(u, who, signo, -1, SWAP(u)->control_pid, error); } +static int swap_get_timeout(Unit *u, uint64_t *timeout) { + Swap *s = SWAP(u); + int r; + + if (!s->timer_event_source) + return 0; + + r = sd_event_source_get_time(s->timer_event_source, timeout); + if (r < 0) + return r; + + return 1; +} + static const char* const swap_state_table[_SWAP_STATE_MAX] = { [SWAP_DEAD] = "dead", [SWAP_ACTIVATING] = "activating", @@ -1429,6 +1443,8 @@ const UnitVTable swap_vtable = { .kill = swap_kill, + .get_timeout = swap_get_timeout, + .serialize = swap_serialize, .deserialize_item = swap_deserialize_item,