Skip to content

Add 6 validators - unit_string_printf, ip_filter_bpf_progs, user_group_compat, io_device_weight, io_device_latency, delegate_subgroup #463

Description

@SJrX

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).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions