1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
4 typedef struct Scope Scope
;
10 typedef enum ScopeResult
{
12 SCOPE_FAILURE_RESOURCES
,
13 SCOPE_FAILURE_TIMEOUT
,
15 _SCOPE_RESULT_INVALID
= -EINVAL
,
21 CGroupContext cgroup_context
;
22 KillContext kill_context
;
24 ScopeState state
, deserialized_state
;
27 usec_t runtime_max_usec
;
28 usec_t runtime_rand_extra_usec
;
29 usec_t timeout_stop_usec
;
32 sd_bus_track
*controller_track
;
36 sd_event_source
*timer_event_source
;
42 extern const UnitVTable scope_vtable
;
44 int scope_abandon(Scope
*s
);
46 const char* scope_result_to_string(ScopeResult i
) _const_
;
47 ScopeResult
scope_result_from_string(const char *s
) _pure_
;
49 DEFINE_CAST(SCOPE
, Scope
);