summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-12-06 17:05:34 +0100
committerLudovic Courtès <ludo@gnu.org>2022-12-06 17:07:12 +0100
commite45c83c3979c2554119fafdee7bb204d27e138b5 (patch)
tree166651e1dc54f0f3bee9fddbb57eb8c8eef9488a
parentfe563a87ad7c171448c56ed6b628c8e32a52c94a (diff)
downloadguix-e45c83c3979c2554119fafdee7bb204d27e138b5.tar.gz
services: fail2ban: 'stop' returns #f when the dameon is stopped.
* gnu/services/security.scm (fail2ban-shepherd-service): Change
FAIL2BAN-ACTION to return an 'invoke' gexp.
Adjust the shepherd 'start' and 'stop' fields accordingly.  Have 'stop'
return #f on success.
-rw-r--r--gnu/services/security.scm20
1 files changed, 11 insertions, 9 deletions
diff --git a/gnu/services/security.scm b/gnu/services/security.scm
index 15fae7a628..2d048ab47b 100644
--- a/gnu/services/security.scm
+++ b/gnu/services/security.scm
@@ -356,13 +356,12 @@ provided as a list of file-like objects."))
            (config-dir (file-append (config->fail2ban-etc-directory config)
                                     "/etc/fail2ban"))
            (fail2ban-action (lambda args
-                              #~(lambda _
-                                  (invoke #$fail2ban-server
-                                          "-c" #$config-dir
-                                          "-p" #$pid-file
-                                          "-s" #$socket-file
-                                          "-b"
-                                          #$@args)))))
+                              #~(invoke #$fail2ban-server
+                                        "-c" #$config-dir
+                                        "-p" #$pid-file
+                                        "-s" #$socket-file
+                                        "-b"
+                                        #$@args))))
 
       ;; TODO: Add 'reload' action.
       (list (shepherd-service
@@ -371,8 +370,11 @@ provided as a list of file-like objects."))
              (requirement '(user-processes))
              (modules `((ice-9 match)
                         ,@%default-modules))
-             (start (fail2ban-action "start"))
-             (stop (fail2ban-action "stop")))))))
+             (start #~(lambda ()
+                        #$(fail2ban-action "start")))
+             (stop #~(lambda (_)
+                       #$(fail2ban-action "stop")
+                       #f)))))))                  ;successfully stopped
 
 (define fail2ban-service-type
   (service-type (name 'fail2ban)