conf-parser: Add root argument to config_parse_many()

This commit is contained in:
Daan De Meyer
2023-05-12 17:52:32 +02:00
parent 9b05a3715b
commit 947f59ba2b
8 changed files with 13 additions and 7 deletions
+1
View File
@@ -726,6 +726,7 @@ static int parse_config_file(void) {
(const char* const*) files,
(const char* const*) dirs,
"user.conf.d",
/* root = */ NULL,
"Manager\0",
config_item_table_lookup, items,
CONFIG_PARSE_WARN,
+2 -2
View File
@@ -787,7 +787,7 @@ int netdev_load_one(Manager *manager, const char *filename) {
dropin_dirname = strjoina(basename(filename), ".d");
r = config_parse_many(
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname,
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname, /* root = */ NULL,
NETDEV_COMMON_SECTIONS NETDEV_OTHER_SECTIONS,
config_item_perf_lookup, network_netdev_gperf_lookup,
CONFIG_PARSE_WARN,
@@ -823,7 +823,7 @@ int netdev_load_one(Manager *manager, const char *filename) {
NETDEV_VTABLE(netdev)->init(netdev);
r = config_parse_many(
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname,
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname, /* root = */ NULL,
NETDEV_VTABLE(netdev)->sections,
config_item_perf_lookup, network_netdev_gperf_lookup,
CONFIG_PARSE_WARN,
+1 -1
View File
@@ -493,7 +493,7 @@ int network_load_one(Manager *manager, OrderedHashmap **networks, const char *fi
};
r = config_parse_many(
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname,
STRV_MAKE_CONST(filename), NETWORK_DIRS, dropin_dirname, /* root = */ NULL,
"Match\0"
"Link\0"
"SR-IOV\0"
+1
View File
@@ -1638,6 +1638,7 @@ static int partition_read_definition(Partition *p, const char *path, const char
STRV_MAKE_CONST(path),
conf_file_dirs,
dropin_dirname,
/* root = */ NULL,
"Partition\0",
config_item_table_lookup, table,
CONFIG_PARSE_WARN,
+1 -1
View File
@@ -88,7 +88,7 @@ static int dnssd_service_load(Manager *manager, const char *filename) {
dropin_dirname = strjoina(service->name, ".dnssd.d");
r = config_parse_many(
STRV_MAKE_CONST(filename), DNSSD_SERVICE_DIRS, dropin_dirname,
STRV_MAKE_CONST(filename), DNSSD_SERVICE_DIRS, dropin_dirname, /* root = */ NULL,
"Service\0",
config_item_perf_lookup, resolved_dnssd_gperf_lookup,
CONFIG_PARSE_WARN,
+5 -3
View File
@@ -584,6 +584,7 @@ int config_parse_config_file(
static int config_get_dropin_files(
const char* const* conf_file_dirs,
const char *dropin_dirname,
const char *root,
char ***ret) {
_cleanup_strv_free_ char **dropin_dirs = NULL;
@@ -599,7 +600,7 @@ static int config_get_dropin_files(
if (r < 0)
return r;
return conf_files_list_strv(ret, ".conf", NULL, 0, (const char* const*) dropin_dirs);
return conf_files_list_strv(ret, ".conf", root, 0, (const char* const*) dropin_dirs);
}
/* Parse each config file in the directories specified as strv. */
@@ -607,6 +608,7 @@ int config_parse_many(
const char* const* conf_files,
const char* const* conf_file_dirs,
const char *dropin_dirname,
const char *root,
const char *sections,
ConfigItemLookup lookup,
const void *table,
@@ -623,7 +625,7 @@ int config_parse_many(
assert(sections);
assert(table);
r = config_get_dropin_files(conf_file_dirs, dropin_dirname, &files);
r = config_get_dropin_files(conf_file_dirs, dropin_dirname, root, &files);
if (r < 0)
return r;
@@ -659,7 +661,7 @@ static int dropins_get_stats_by_path(
if (!strextend(&dropin_dirname, ".d"))
return -ENOMEM;
r = config_get_dropin_files(conf_file_dirs, dropin_dirname, &files);
r = config_get_dropin_files(conf_file_dirs, dropin_dirname, /* root = */ NULL, &files);
if (r < 0)
return r;
+1
View File
@@ -105,6 +105,7 @@ int config_parse_many(
const char* const* conf_files, /* possibly empty */
const char* const* conf_file_dirs,
const char *dropin_dirname,
const char *root,
const char *sections, /* nulstr */
ConfigItemLookup lookup,
const void *table,
+1
View File
@@ -260,6 +260,7 @@ int link_load_one(LinkConfigContext *ctx, const char *filename) {
STRV_MAKE_CONST(filename),
NETWORK_DIRS,
dropin_dirname,
/* root = */ NULL,
"Match\0"
"Link\0"
"SR-IOV\0",