The goal of this ticket would be to refactor entry_guard_parse_from_state() (and family) to use the config/state parsing API, instead of the ad-hoc string parsing approach it currently uses.
As an example, see entry_guards_parse_state_for_guard_selection() and how it uses the config_line_t API. Is it more elegant?
IMO it isn't. It requires separate config_lines for anything, requires a loop over all the lines, and is harder to read as a function.
We have lots of places throughout our code that use a space-separated K=V metaformat, like FooPort lines and so on. It could be cool to refactor all of those, and this, to use a common parser.