# Should load from "ipset.cfg" (constant 'IPSET "/sbin/ipset" 'TABLE "TIMO" ) ;; Return current low-leve "close" or "open" status (define (current-status) (if (exec (format "%s list %s | grep %s" IPSET TABLE NET)) "close" "open")) ;; Ensure low-level setting is "close" or "open" as given (define (control cmd reason) (when (!= cmd (current-status)) (let ((todo (case cmd ("open" "del") ("close" "add") (true "XXX")))) (! (println (date-value) (format " ipset-control (%s): " reason) (format "%s %s %s %s" IPSET todo TABLE NET))))) ) "ipset-control.lsp"