From: Masahiro Yamada Date: Mon, 28 May 2018 09:21:43 +0000 (+0900) Subject: kconfig: remove sym_expand_string_value() X-Git-Url: https://jxself.org/git/?a=commitdiff_plain;h=e8ba5aaead7057988bb1a7d8df008acfa0695354;p=carl9170fw.git kconfig: remove sym_expand_string_value() There is no more caller of sym_expand_string_value(). Signed-off-by: Masahiro Yamada Reviewed-by: Kees Cook Signed-off-by: Christian Lamparter --- diff --git a/config/lkc_proto.h b/config/lkc_proto.h index 9f465fe..c46929f 100644 --- a/config/lkc_proto.h +++ b/config/lkc_proto.h @@ -31,7 +31,6 @@ extern struct symbol * symbol_hash[SYMBOL_HASHSIZE]; struct symbol * sym_lookup(const char *name, int flags); struct symbol * sym_find(const char *name); -char *sym_expand_string_value(const char *in); const char * sym_escape_string_value(const char *in); struct symbol ** sym_re_search(const char *pattern); const char * sym_type_name(enum symbol_type type); diff --git a/config/symbol.c b/config/symbol.c index 2460648..7c9a88e 100644 --- a/config/symbol.c +++ b/config/symbol.c @@ -879,59 +879,6 @@ struct symbol *sym_find(const char *name) return symbol; } -/* - * Expand symbol's names embedded in the string given in argument. Symbols' - * name to be expanded shall be prefixed by a '$'. Unknown symbol expands to - * the empty string. - */ -char *sym_expand_string_value(const char *in) -{ - const char *src; - char *res; - size_t reslen; - - /* - * Note: 'in' might come from a token that's about to be - * freed, so make sure to always allocate a new string - */ - reslen = strlen(in) + 1; - res = xmalloc(reslen); - res[0] = '\0'; - - while ((src = strchr(in, '$'))) { - char *p, name[SYMBOL_MAXLENGTH]; - const char *symval = ""; - struct symbol *sym; - size_t newlen; - - strncat(res, in, src - in); - src++; - - p = name; - while (isalnum(*src) || *src == '_') - *p++ = *src++; - *p = '\0'; - - sym = sym_find(name); - if (sym != NULL) { - sym_calc_value(sym); - symval = sym_get_string_value(sym); - } - - newlen = strlen(res) + strlen(symval) + strlen(src) + 1; - if (newlen > reslen) { - reslen = newlen; - res = xrealloc(res, reslen); - } - - strcat(res, symval); - in = src; - } - strcat(res, in); - - return res; -} - const char *sym_escape_string_value(const char *in) { const char *p;