Ticked below are the lines that are (at least partially) implemented.
macrodefinitions (NB: macro expansion is NOT)
I would be very grateful for examples of rules that trip the parser - please file an issue ticket on GitHub.
Ideas regarding the AST, the API, or other suggestions are also very welcome.
It is always nice with improvements to the pretty-printers! :-)
Support for more lines is a goal, you can help by writing PRs or submitting examples of syntax that is not handled by the parser.
Before taking on larger rewrites, please get in touch so we can avoid merge conflicts.
compiling the example
First, install the dependencies:
opam pin add -n pf . opam install --deps-only pf # build test executable, self-test rules from 'man pf.conf': jbuilder runtest
This will give you the
parse_conf.exe utility that you can use to parse firewall configuration files:
./_build/default/test/parse_conf.exe /home/me/my-pf-file.conf Reading "/home/me/my-pf-file.conf" Line 0: ext_bridge = "external" Read 1 lines!