diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-06-30 10:39:32 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-07-06 19:47:17 -0700 |
commit | 1604ea2e6757cc11c2c7b2e8b408d2ce969bd846 (patch) | |
tree | 5335d48c0f6001ded39fd8a76bd22937fc8e7235 | |
parent | 855181e5e5edeb8bc4502448fa0b7803e79eb954 (diff) | |
download | consfigurator-1604ea2e6757cc11c2c7b2e8b408d2ce969bd846.tar.gz |
factor out FIREWALLD::%SETXML & add reloading
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
-rw-r--r-- | src/package.lisp | 3 | ||||
-rw-r--r-- | src/property/firewalld.lisp | 10 |
2 files changed, 9 insertions, 4 deletions
diff --git a/src/package.lisp b/src/package.lisp index e0d7cbc..231e693 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -732,7 +732,8 @@ (defpackage :consfigurator.property.firewalld (:use #:cl #:consfigurator) - (:local-nicknames (#:file #:consfigurator.property.file) + (:local-nicknames (#:cmd #:consfigurator.property.cmd) + (#:file #:consfigurator.property.file) (#:apt #:consfigurator.property.apt) (#:os #:consfigurator.property.os)) (:export #:installed diff --git a/src/property/firewalld.lisp b/src/property/firewalld.lisp index 4b75713..ad362ca 100644 --- a/src/property/firewalld.lisp +++ b/src/property/firewalld.lisp @@ -31,11 +31,15 @@ (os:etypecase (debianlike (apt:installed "firewalld")))) +(defproplist %setxml :posix (type name xml) + (installed) + (on-change + (file:exists-with-content #?"/etc/firewalld/${type}/${name}.xml" xml) + (cmd:single "firewall-cmd" "--reload"))) + (defproplist service :posix (name xml) (:desc #?"firewalld knows service ${name}") - (installed) - (file:exists-with-content - (merge-pathnames (strcat name ".xml") #P"/etc/firewalld/services/") xml)) + (%setxml "services" name xml)) (defprop %firewall-cmd :posix (file warning &rest args) (:apply |