Burn-down: add validators calibrated against the systemd C parsers (source at the local checkout).
| Validator |
Keys |
Calibrated to |
| config_parse_unit_string_printf |
35 |
any string; '%' must be '%%' or a valid unit specifier (unit_full_printf table + COMMON_* specifiers) |
| config_parse_ip_filter_bpf_progs |
12 |
absolute path (PATH_CHECK_ABSOLUTE), specifier start allowed |
| config_parse_user_group_compat |
12 |
valid_user_group_name(RELAX): no ':' '/' control / edge whitespace; numeric allowed |
| config_parse_io_device_weight |
6 |
<path> <int 1-10000> (cg_weight_parse) |
| config_parse_io_device_latency |
6 |
<path> <timespan> (parse_sec) |
| config_parse_delegate_subgroup |
6 |
cgroup name, !cg_needs_escape |
Grammars are biased toward false-negatives over false-positives: the rarer C checks that can't be modeled without risking false positives are intentionally left unenforced (documented per-validator in the KDoc). The flagship unit_string_printf does real specifier validation rather than accepting everything.
Drops the OptionValueTest burn-down from 372 to 366 missing functions (797 -> 720 missing key-instances).
Burn-down: add validators calibrated against the systemd C parsers (source at the local checkout).
<path> <int 1-10000>(cg_weight_parse)<path> <timespan>(parse_sec)Grammars are biased toward false-negatives over false-positives: the rarer C checks that can't be modeled without risking false positives are intentionally left unenforced (documented per-validator in the KDoc). The flagship
unit_string_printfdoes real specifier validation rather than accepting everything.Drops the OptionValueTest burn-down from 372 to 366 missing functions (797 -> 720 missing key-instances).