From 0a9f8ed00c8f323d5bf24a9a11149a9342c0e1aa Mon Sep 17 00:00:00 2001 From: Zbigniew Jędrzejewski-Szmek Date: Wed, 6 Jun 2012 16:56:18 +0200 Subject: unit: Move UnitType definitions from core/unit.c to shared/unit-name.c This makes it possible to use them from systemctl without linking against the core. A string->enum lookup table is added. --- src/shared/unit-name.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/shared/unit-name.c') diff --git a/src/shared/unit-name.c b/src/shared/unit-name.c index 4b52f7bc53..67a760ace6 100644 --- a/src/shared/unit-name.c +++ b/src/shared/unit-name.c @@ -33,6 +33,21 @@ "ABCDEFGHIJKLMNOPQRSTUVWXYZ" \ ":-_.\\" +static const char* const unit_type_table[_UNIT_TYPE_MAX] = { + [UNIT_SERVICE] = "service", + [UNIT_SOCKET] = "socket", + [UNIT_TARGET] = "target", + [UNIT_DEVICE] = "device", + [UNIT_MOUNT] = "mount", + [UNIT_AUTOMOUNT] = "automount", + [UNIT_SNAPSHOT] = "snapshot", + [UNIT_TIMER] = "timer", + [UNIT_SWAP] = "swap", + [UNIT_PATH] = "path", +}; + +DEFINE_STRING_TABLE_LOOKUP(unit_type, UnitType); + bool unit_name_is_valid_no_type(const char *n, bool template_ok) { const char *e, *i, *at; -- cgit v1.2.3-54-g00ecf