From 8ff290af3b7db00eef76bdec61fee4aca7d84d0b Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Fri, 22 Jun 2012 16:24:57 +0200 Subject: unit: drop the Names= option Names= is a source of errors, simply because alias names specified like this only become relevant after a unit has been loaded but cannot be used to load a unit. Let's get rid of the confusion and drop this field. To establish alias names peope should use symlinks, which have the the benefit of being useful as key to load a unit, even though they are not taken into account if unit names are listed but they haven't been explicitly referenced before. --- src/core/load-fragment-gperf.gperf.m4 | 1 - src/core/load-fragment.c | 44 ----------------------------------- src/core/load-fragment.h | 1 - 3 files changed, 46 deletions(-) (limited to 'src') diff --git a/src/core/load-fragment-gperf.gperf.m4 b/src/core/load-fragment-gperf.gperf.m4 index d51c7ac5e2..f5e9b70672 100644 --- a/src/core/load-fragment-gperf.gperf.m4 +++ b/src/core/load-fragment-gperf.gperf.m4 @@ -90,7 +90,6 @@ $1.UtmpIdentifier, config_parse_unit_string_printf, 0, $1.ControlGroupModify, config_parse_bool, 0, offsetof($1, exec_context.control_group_modify) $1.ControlGroupPersistent, config_parse_tristate, 0, offsetof($1, exec_context.control_group_persistent)' )m4_dnl -Unit.Names, config_parse_unit_names, 0, 0 Unit.Description, config_parse_unit_string_printf, 0, offsetof(Unit, description) Unit.Documentation, config_parse_documentation, 0, offsetof(Unit, documentation) Unit.SourcePath, config_parse_path, 0, offsetof(Unit, source_path) diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index 22da6c1197..1ca0dece67 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -105,49 +105,6 @@ int config_parse_unit_deps( return 0; } -int config_parse_unit_names( - const char *filename, - unsigned line, - const char *section, - const char *lvalue, - int ltype, - const char *rvalue, - void *data, - void *userdata) { - - Unit *u = userdata; - char *w; - size_t l; - char *state; - - assert(filename); - assert(lvalue); - assert(rvalue); - assert(data); - - FOREACH_WORD_QUOTED(w, l, rvalue, state) { - char *t, *k; - int r; - - t = strndup(w, l); - if (!t) - return -ENOMEM; - - k = unit_name_printf(u, t); - free(t); - if (!k) - return -ENOMEM; - - r = unit_merge_by_name(u, k); - if (r < 0) - log_error("Failed to add name %s, ignoring: %s", k, strerror(-r)); - - free(k); - } - - return 0; -} - int config_parse_unit_string_printf( const char *filename, unsigned line, @@ -2395,7 +2352,6 @@ void unit_dump_config_items(FILE *f) { { config_parse_limit, "LIMIT" }, { config_parse_unit_cgroup, "CGROUP [...]" }, { config_parse_unit_deps, "UNIT [...]" }, - { config_parse_unit_names, "UNIT [...]" }, { config_parse_exec, "PATH [ARGUMENT [...]]" }, { config_parse_service_type, "SERVICETYPE" }, { config_parse_service_restart, "SERVICERESTART" }, diff --git a/src/core/load-fragment.h b/src/core/load-fragment.h index 9a3465a166..501ea4ad47 100644 --- a/src/core/load-fragment.h +++ b/src/core/load-fragment.h @@ -32,7 +32,6 @@ void unit_dump_config_items(FILE *f); int config_parse_warn_compat(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_unit_deps(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); -int config_parse_unit_names(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_unit_string_printf(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_unit_strv_printf(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_unit_path_printf(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); -- cgit v1.2.3-54-g00ecf