Constify ConfigTableItem tables

This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2014-07-15 21:03:11 -04:00
parent 8201af08fa
commit e9f3d2d508
18 changed files with 33 additions and 30 deletions

View File

@ -132,7 +132,7 @@ static void parse_conf(void) {
return; return;
r = config_parse(NULL, BOOTCHART_CONF, f, r = config_parse(NULL, BOOTCHART_CONF, f,
NULL, config_item_table_lookup, (void*) items, true, false, NULL); NULL, config_item_table_lookup, items, true, false, NULL);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -187,7 +187,7 @@ int unit_load_dropin(Unit *u) {
STRV_FOREACH(f, u->dropin_paths) { STRV_FOREACH(f, u->dropin_paths) {
config_parse(u->id, *f, NULL, config_parse(u->id, *f, NULL,
UNIT_VTABLE(u)->sections, config_item_perf_lookup, UNIT_VTABLE(u)->sections, config_item_perf_lookup,
(void*) load_fragment_gperf_lookup, false, false, u); load_fragment_gperf_lookup, false, false, u);
} }
u->dropin_mtime = now(CLOCK_REALTIME); u->dropin_mtime = now(CLOCK_REALTIME);

View File

@ -3370,7 +3370,7 @@ static int load_from_path(Unit *u, const char *path) {
/* Now, parse the file contents */ /* Now, parse the file contents */
r = config_parse(u->id, filename, f, UNIT_VTABLE(u)->sections, r = config_parse(u->id, filename, f, UNIT_VTABLE(u)->sections,
config_item_perf_lookup, config_item_perf_lookup,
(void*) load_fragment_gperf_lookup, false, true, u); load_fragment_gperf_lookup, false, true, u);
if (r < 0) if (r < 0)
return r; return r;
} }

View File

@ -696,7 +696,7 @@ static int parse_config_file(void) {
return 0; return 0;
} }
r = config_parse(NULL, fn, f, "Manager\0", config_item_table_lookup, (void*) items, false, false, NULL); r = config_parse(NULL, fn, f, "Manager\0", config_item_table_lookup, items, false, false, NULL);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -156,7 +156,7 @@ static int create_dbus_files(
static int add_dbus(const char *path, const char *fname, const char *type) { static int add_dbus(const char *path, const char *fname, const char *type) {
_cleanup_free_ char *name = NULL, *exec = NULL, *user = NULL, *service = NULL; _cleanup_free_ char *name = NULL, *exec = NULL, *user = NULL, *service = NULL;
ConfigTableItem table[] = { const ConfigTableItem table[] = {
{ "D-BUS Service", "Name", config_parse_string, 0, &name }, { "D-BUS Service", "Name", config_parse_string, 0, &name },
{ "D-BUS Service", "Exec", config_parse_string, 0, &exec }, { "D-BUS Service", "Exec", config_parse_string, 0, &exec },
{ "D-BUS Service", "User", config_parse_string, 0, &user }, { "D-BUS Service", "User", config_parse_string, 0, &user },

View File

@ -120,7 +120,7 @@ static int parse_config(void) {
NULL, NULL,
"Coredump\0", "Coredump\0",
config_item_table_lookup, config_item_table_lookup,
(void*) items, items,
false, false,
false, false,
NULL); NULL);

View File

@ -1347,7 +1347,7 @@ static int server_parse_config_file(Server *s) {
} }
r = config_parse(NULL, fn, f, "Journal\0", config_item_perf_lookup, r = config_parse(NULL, fn, f, "Journal\0", config_item_perf_lookup,
(void*) journald_gperf_lookup, false, false, s); journald_gperf_lookup, false, false, s);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -1113,7 +1113,7 @@ static int manager_parse_config_file(Manager *m) {
} }
r = config_parse(NULL, fn, f, "Login\0", config_item_perf_lookup, r = config_parse(NULL, fn, f, "Login\0", config_item_perf_lookup,
(void*) logind_gperf_lookup, false, false, m); logind_gperf_lookup, false, false, m);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -525,7 +525,7 @@ static int netdev_load_one(Manager *manager, const char *filename) {
r = config_parse(NULL, filename, file, r = config_parse(NULL, filename, file,
"Match\0NetDev\0VLAN\0MACVLAN\0VXLAN\0Tunnel\0Peer\0Tun\0Tap\0Bond\0", "Match\0NetDev\0VLAN\0MACVLAN\0VXLAN\0Tunnel\0Peer\0Tun\0Tap\0Bond\0",
config_item_perf_lookup, (void*) network_netdev_gperf_lookup, config_item_perf_lookup, network_netdev_gperf_lookup,
false, false, netdev); false, false, netdev);
if (r < 0) { if (r < 0) {
log_warning("Could not parse config file %s: %s", filename, strerror(-r)); log_warning("Could not parse config file %s: %s", filename, strerror(-r));

View File

@ -93,8 +93,10 @@ static int network_load_one(Manager *manager, const char *filename) {
network->dhcp_routes = true; network->dhcp_routes = true;
network->dhcp_sendhost = true; network->dhcp_sendhost = true;
r = config_parse(NULL, filename, file, "Match\0Network\0Address\0Route\0DHCP\0DHCPv4\0", config_item_perf_lookup, r = config_parse(NULL, filename, file,
(void*) network_network_gperf_lookup, false, false, network); "Match\0Network\0Address\0Route\0DHCP\0DHCPv4\0",
config_item_perf_lookup, network_network_gperf_lookup,
false, false, network);
if (r < 0) { if (r < 0) {
log_warning("Could not parse config file %s: %s", filename, strerror(-r)); log_warning("Could not parse config file %s: %s", filename, strerror(-r));
return r; return r;

View File

@ -377,10 +377,9 @@ int manager_parse_config_file(Manager *m) {
assert(m); assert(m);
r = config_parse(NULL, r = config_parse(NULL, "/etc/systemd/resolved.conf", NULL,
"/etc/systemd/resolved.conf", NULL,
"Resolve\0", "Resolve\0",
config_item_perf_lookup, (void*) resolved_gperf_lookup, config_item_perf_lookup, resolved_gperf_lookup,
false, false, m); false, false, m);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -76,7 +76,7 @@ int log_syntax_internal(const char *unit, int level,
} }
int config_item_table_lookup( int config_item_table_lookup(
void *table, const void *table,
const char *section, const char *section,
const char *lvalue, const char *lvalue,
ConfigParserCallback *func, ConfigParserCallback *func,
@ -84,7 +84,7 @@ int config_item_table_lookup(
void **data, void **data,
void *userdata) { void *userdata) {
ConfigTableItem *t; const ConfigTableItem *t;
assert(table); assert(table);
assert(lvalue); assert(lvalue);
@ -110,7 +110,7 @@ int config_item_table_lookup(
} }
int config_item_perf_lookup( int config_item_perf_lookup(
void *table, const void *table,
const char *section, const char *section,
const char *lvalue, const char *lvalue,
ConfigParserCallback *func, ConfigParserCallback *func,
@ -154,7 +154,7 @@ static int next_assignment(const char *unit,
const char *filename, const char *filename,
unsigned line, unsigned line,
ConfigItemLookup lookup, ConfigItemLookup lookup,
void *table, const void *table,
const char *section, const char *section,
unsigned section_line, unsigned section_line,
const char *lvalue, const char *lvalue,
@ -199,7 +199,7 @@ static int parse_line(const char* unit,
unsigned line, unsigned line,
const char *sections, const char *sections,
ConfigItemLookup lookup, ConfigItemLookup lookup,
void *table, const void *table,
bool relaxed, bool relaxed,
bool allow_include, bool allow_include,
char **section, char **section,
@ -323,7 +323,7 @@ int config_parse(const char *unit,
FILE *f, FILE *f,
const char *sections, const char *sections,
ConfigItemLookup lookup, ConfigItemLookup lookup,
void *table, const void *table,
bool relaxed, bool relaxed,
bool allow_include, bool allow_include,
void *userdata) { void *userdata) {

View File

@ -65,7 +65,7 @@ typedef const ConfigPerfItem* (*ConfigPerfItemLookup)(const char *section_and_lv
/* Prototype for a generic high-level lookup function */ /* Prototype for a generic high-level lookup function */
typedef int (*ConfigItemLookup)( typedef int (*ConfigItemLookup)(
void *table, const void *table,
const char *section, const char *section,
const char *lvalue, const char *lvalue,
ConfigParserCallback *func, ConfigParserCallback *func,
@ -75,18 +75,18 @@ typedef int (*ConfigItemLookup)(
/* Linear table search implementation of ConfigItemLookup, based on /* Linear table search implementation of ConfigItemLookup, based on
* ConfigTableItem arrays */ * ConfigTableItem arrays */
int config_item_table_lookup(void *table, const char *section, const char *lvalue, ConfigParserCallback *func, int *ltype, void **data, void *userdata); int config_item_table_lookup(const void *table, const char *section, const char *lvalue, ConfigParserCallback *func, int *ltype, void **data, void *userdata);
/* gperf implementation of ConfigItemLookup, based on gperf /* gperf implementation of ConfigItemLookup, based on gperf
* ConfigPerfItem tables */ * ConfigPerfItem tables */
int config_item_perf_lookup(void *table, const char *section, const char *lvalue, ConfigParserCallback *func, int *ltype, void **data, void *userdata); int config_item_perf_lookup(const void *table, const char *section, const char *lvalue, ConfigParserCallback *func, int *ltype, void **data, void *userdata);
int config_parse(const char *unit, int config_parse(const char *unit,
const char *filename, const char *filename,
FILE *f, FILE *f,
const char *sections, /* nulstr */ const char *sections, /* nulstr */
ConfigItemLookup lookup, ConfigItemLookup lookup,
void *table, const void *table,
bool relaxed, bool relaxed,
bool allow_include, bool allow_include,
void *userdata); void *userdata);

View File

@ -1076,7 +1076,7 @@ static int unit_file_load(
return -ENOMEM; return -ENOMEM;
} }
r = config_parse(NULL, path, f, NULL, config_item_table_lookup, (void*) items, true, true, info); r = config_parse(NULL, path, f, NULL, config_item_table_lookup, items, true, true, info);
if (r < 0) if (r < 0)
return r; return r;

View File

@ -57,7 +57,7 @@ int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
"Failed to open configuration file " PKGSYSCONFDIR "/sleep.conf: %m"); "Failed to open configuration file " PKGSYSCONFDIR "/sleep.conf: %m");
else { else {
r = config_parse(NULL, PKGSYSCONFDIR "/sleep.conf", f, "Sleep\0", r = config_parse(NULL, PKGSYSCONFDIR "/sleep.conf", f, "Sleep\0",
config_item_table_lookup, (void*) items, false, false, NULL); config_item_table_lookup, items, false, false, NULL);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));
} }

View File

@ -1111,7 +1111,7 @@ static int manager_parse_config_file(Manager *m) {
} }
r = config_parse(NULL, fn, f, "Time\0", config_item_perf_lookup, r = config_parse(NULL, fn, f, "Time\0", config_item_perf_lookup,
(void*) timesyncd_gperf_lookup, false, false, m); timesyncd_gperf_lookup, false, false, m);
if (r < 0) if (r < 0)
log_warning("Failed to parse configuration file: %s", strerror(-r)); log_warning("Failed to parse configuration file: %s", strerror(-r));

View File

@ -272,7 +272,7 @@ static int parse_password(const char *filename, char **wall) {
return -errno; return -errno;
} }
r = config_parse(NULL, filename, f, NULL, config_item_table_lookup, (void*) items, true, false, NULL); r = config_parse(NULL, filename, f, NULL, config_item_table_lookup, items, true, false, NULL);
if (r < 0) { if (r < 0) {
log_error("Failed to parse password file %s: %s", filename, strerror(-r)); log_error("Failed to parse password file %s: %s", filename, strerror(-r));
goto finish; goto finish;

View File

@ -174,8 +174,10 @@ static int load_link(link_config_ctx *ctx, const char *filename) {
link->wol = _WOL_INVALID; link->wol = _WOL_INVALID;
link->duplex = _DUP_INVALID; link->duplex = _DUP_INVALID;
r = config_parse(NULL, filename, file, "Match\0Link\0Ethernet\0", config_item_perf_lookup, r = config_parse(NULL, filename, file,
(void*) link_config_gperf_lookup, false, false, link); "Match\0Link\0Ethernet\0",
config_item_perf_lookup, link_config_gperf_lookup,
false, false, link);
if (r < 0) { if (r < 0) {
log_warning("Could not parse config file %s: %s", filename, strerror(-r)); log_warning("Could not parse config file %s: %s", filename, strerror(-r));
return r; return r;