X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=src%2Fconf.c;h=e3574ea5442888b3fa3edee6886040264f2378c5;hb=7b36d61024ee05caa638f7cd45044b98b31b8aa8;hp=771abe58600ca788b6dbc19ab929a2c6e444b17b;hpb=dc0e52cb3e42620c3139e713b373d130aa30b698;p=meshlink diff --git a/src/conf.c b/src/conf.c index 771abe58..e3574ea5 100644 --- a/src/conf.c +++ b/src/conf.c @@ -40,13 +40,7 @@ static int config_compare(const config_t *a, const config_t *b) { return result; } - result = a->line - b->line; - - if(result) { - return result; - } else { - return a->file ? strcmp(a->file, b->file) : 0; - } + return result = a->line - b->line; } void init_configuration(splay_tree_t **config_tree) { @@ -66,18 +60,8 @@ config_t *new_config(void) { } void free_config(config_t *cfg) { - if(cfg->variable) { - free(cfg->variable); - } - - if(cfg->value) { - free(cfg->value); - } - - if(cfg->file) { - free(cfg->file); - } - + free(cfg->variable); + free(cfg->value); free(cfg); } @@ -89,7 +73,6 @@ config_t *lookup_config(splay_tree_t *config_tree, char *variable) { config_t cfg, *found; cfg.variable = variable; - cfg.file = NULL; cfg.line = 0; found = splay_search_closest_greater(config_tree, &cfg); @@ -137,8 +120,8 @@ bool get_config_bool(const config_t *cfg, bool *result) { return true; } - logger(NULL, MESHLINK_ERROR, "\"yes\" or \"no\" expected for configuration variable %s in %s line %d", - cfg->variable, cfg->file, cfg->line); + logger(NULL, MESHLINK_ERROR, "\"yes\" or \"no\" expected for configuration variable %s in line %d", + cfg->variable, cfg->line); return false; } @@ -152,8 +135,8 @@ bool get_config_int(const config_t *cfg, int *result) { return true; } - logger(NULL, MESHLINK_ERROR, "Integer expected for configuration variable %s in %s line %d", - cfg->variable, cfg->file, cfg->line); + logger(NULL, MESHLINK_ERROR, "Integer expected for configuration variable %s in line %d", + cfg->variable, cfg->line); return false; } @@ -213,8 +196,8 @@ bool get_config_address(const config_t *cfg, struct addrinfo **result) { return true; } - logger(NULL, MESHLINK_ERROR, "Hostname or IP address expected for configuration variable %s in %s line %d", - cfg->variable, cfg->file, cfg->line); + logger(NULL, MESHLINK_ERROR, "Hostname or IP address expected for configuration variable %s in line %d", + cfg->variable, cfg->line); return false; } @@ -285,7 +268,6 @@ config_t *parse_config_line(char *line, const char *fname, int lineno) { cfg = new_config(); cfg->variable = xstrdup(variable); cfg->value = xstrdup(value); - cfg->file = xstrdup(fname); cfg->line = lineno; return cfg; @@ -431,12 +413,12 @@ bool modify_config_file(struct meshlink_handle *mesh, const char *name, const ch char tmpname[PATH_MAX]; bool error = false; - if (snprintf(filename, sizeof(filename), "%s" SLASH "hosts" SLASH "%s", mesh->confbase, name) >= PATH_MAX) { + if(snprintf(filename, sizeof(filename), "%s" SLASH "hosts" SLASH "%s", mesh->confbase, name) >= PATH_MAX) { logger(mesh, MESHLINK_ERROR, "Filename too long: %s" SLASH "hosts" SLASH "%s", mesh->confbase, name); return false; } - if (snprintf(tmpname, sizeof(tmpname), "%s.tmp", filename) >= PATH_MAX) { + if(snprintf(tmpname, sizeof(tmpname), "%s.tmp", filename) >= PATH_MAX) { logger(mesh, MESHLINK_ERROR, "Filename too long: %s.tmp", filename); return false; }