package pf-qubes
All checked builds passInstall
dune-project
Dependency
Authors
Maintainers
Sources
sha256=f1eb3921e827b13e6edfaeb1fcf39360f965e59aec3e8509691490fde24b281c
sha512=5d83e2d7b95dd0577ba762e6e73ecd0ae96ca84efc55df6421cb18c83c1ff4a2d8d6d11a6a2987a925a6006b2e46fa8f18d66cf8d2b5107b8f227bd22a534784
Description
pf-qubes provides a parser for the QubesOS (>=4.0) firewall ruleset syntax.
README
ocaml-pf
An Angstrom-based parser for the FreeBSD pf firewall configuration format.
implementation status
Ticked below are the lines that are (at least partially) implemented.
macrodefinitions (NB: macro expansion is NOT)optionpf-rulenat-rulebinat-rulerdr-ruleantispoof-rulealtq-rulequeue-ruletrans-anchorsanchor-ruleanchor-closeload-anchortable-ruleinclude
contributing
- 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 runtestThis 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!
Dependencies (10)
Dev Dependencies (2)
-
afl-persistent
with-test -
alcotest
with-test
Optional Dependencies
None
Used by
None
Conflicts
None
Build status
Results of building pf-qubes with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.
Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.
| Version | OCaml 4.11 | OCaml 4.14 | OCaml 5.2 | OCaml 5.4 | OCaml 5.5 |
|---|---|---|---|---|---|
| 0.1.2 (this version) | good | good | good | good | good |
- good Package successfully built
- partial One of the dependencies failed to build
- bad Package failed to build
- n/a Package is not available in this environment
- internal Internal failure