mirror of
https://github.com/morgan9e/systemd
synced 2026-04-15 08:56:15 +09:00
conf-parser: introduce config_parse_uint32_flag()
This is not used currently, but will be used later.
This commit is contained in:
@@ -1008,6 +1008,35 @@ int config_parse_bool(
|
||||
return 1; /* set */
|
||||
}
|
||||
|
||||
int config_parse_uint32_flag(
|
||||
const char *unit,
|
||||
const char *filename,
|
||||
unsigned line,
|
||||
const char *section,
|
||||
unsigned section_line,
|
||||
const char *lvalue,
|
||||
int ltype,
|
||||
const char *rvalue,
|
||||
void *data,
|
||||
void *userdata) {
|
||||
|
||||
uint32_t *flags = ASSERT_PTR(data);
|
||||
int r;
|
||||
|
||||
assert(ltype != 0);
|
||||
|
||||
r = isempty(rvalue) ? 0 : parse_boolean(rvalue);
|
||||
if (r < 0) {
|
||||
log_syntax(unit, LOG_WARNING, filename, line, r,
|
||||
"Failed to parse %s=%s. Ignoring assignment: %m",
|
||||
lvalue, rvalue);
|
||||
return 0;
|
||||
}
|
||||
|
||||
SET_FLAG(*flags, ltype, r);
|
||||
return 1;
|
||||
}
|
||||
|
||||
int config_parse_id128(
|
||||
const char *unit,
|
||||
const char *filename,
|
||||
|
||||
@@ -254,6 +254,7 @@ CONFIG_PARSER_PROTOTYPE(config_parse_si_uint64);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_iec_uint64);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_iec_uint64_infinity);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_bool);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_uint32_flag);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_id128);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_tristate);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_string);
|
||||
|
||||
Reference in New Issue
Block a user