firewall: use watch-outputs to track changes in zone->interface map

includes a horrible hack to work around (claimed (by me)) deficiencies
in the nftables parser
This commit is contained in:
Daniel Barlow
2025-02-28 00:43:20 +00:00
parent 929226ed9e
commit 6649ebeccd
7 changed files with 108 additions and 48 deletions

View File

@@ -25,9 +25,9 @@
myenv {
: string
:output
(fn [service-path path]
(fn [service-path path default]
(let [s (assert (svc.open (.. service-path "/.outputs")))]
(s:output path)))
(or (s:output path) default)))
:lua_quote #(string.format "%q" %1)
:json_quote (fn [x] (.. "\"" (json-escape x) "\""))
}]