X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Funit.c;h=1e33936346573bcb866513cd54dc8cdc471ded4f;hp=4eea5b57ae49107dcba461397460e38582d96677;hb=3ef63c317481c2b3f1fe39e1b0f130aac3544522;hpb=41f9172f427bdbb8221c64029f78364b8dd4e527 diff --git a/src/core/unit.c b/src/core/unit.c index 4eea5b57a..1e3393634 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -2684,6 +2684,17 @@ int unit_exec_context_defaults(Unit *u, ExecContext *c) { return 0; } +ExecContext *unit_get_exec_context(Unit *u) { + size_t offset; + assert(u); + + offset = UNIT_VTABLE(u)->exec_context_offset; + if (offset <= 0) + return NULL; + + return (ExecContext*) ((uint8_t*) u + offset); +} + static const char* const unit_active_state_table[_UNIT_ACTIVE_STATE_MAX] = { [UNIT_ACTIVE] = "active", [UNIT_RELOADING] = "reloading",