X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Funit.c;h=2d18976c262032f7e0db45a3e27345864dd4e905;hp=f53bdd5a911addb49980da9af5a94fa5042a8e77;hb=5f73969991fa765f2826975c0fc5e47438b5e9ea;hpb=1b64d026af01277e332d10d9e67e2eed5a4ded28 diff --git a/src/core/unit.c b/src/core/unit.c index f53bdd5a9..2d18976c2 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -1835,20 +1835,12 @@ int set_unit_path(const char *p) { } char *unit_dbus_path(Unit *u) { - char *p, *e; - assert(u); if (!u->id) return NULL; - if (!(e = bus_path_escape(u->id))) - return NULL; - - p = strappend("/org/freedesktop/systemd1/unit/", e); - free(e); - - return p; + return unit_dbus_path_from_name(u->id); } int unit_add_cgroup(Unit *u, CGroupBonding *b) { @@ -2517,7 +2509,8 @@ int unit_add_node_link(Unit *u, const char *what, bool wants) { if (!is_device_path(what)) return 0; - if (!(e = unit_name_build_escape(what+1, NULL, ".device"))) + e = unit_name_from_path(what, ".device"); + if (!e) return -ENOMEM; r = manager_load_unit(u->manager, e, NULL, NULL, &device); @@ -2654,28 +2647,6 @@ bool unit_pending_active(Unit *u) { return false; } -UnitType unit_name_to_type(const char *n) { - UnitType t; - - assert(n); - - for (t = 0; t < _UNIT_TYPE_MAX; t++) - if (endswith(n, unit_vtable[t]->suffix)) - return t; - - return _UNIT_TYPE_INVALID; -} - -bool unit_name_is_valid(const char *n, bool template_ok) { - UnitType t; - - t = unit_name_to_type(n); - if (t < 0 || t >= _UNIT_TYPE_MAX) - return false; - - return unit_name_is_valid_no_type(n, template_ok); -} - int unit_kill(Unit *u, KillWho w, KillMode m, int signo, DBusError *error) { assert(u); assert(w >= 0 && w < _KILL_WHO_MAX);