diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-09-03 16:59:14 -0600 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-09-03 16:59:14 -0600 |
commit | a5bad9d6ec4ce526015403c9565efea58d2867ea (patch) | |
tree | d3cf4d0f9bd3387c1bffddd40725efef605c495f /sd_daemon | |
parent | 031737d8d1ed8ada3a260e0bdd7c2a874008982d (diff) |
Use a defer/recover block to have the exit status on panic match LSB.
Diffstat (limited to 'sd_daemon')
-rw-r--r-- | sd_daemon/lsb/exit-status.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sd_daemon/lsb/exit-status.go b/sd_daemon/lsb/exit-status.go index ba5b68b..41eaafd 100644 --- a/sd_daemon/lsb/exit-status.go +++ b/sd_daemon/lsb/exit-status.go @@ -1,5 +1,10 @@ package lsb +import ( + "os" + "sd_daemon/logger" +) + /* systemd daemon(7) recommends using the exit codes defined in the * "LSB recomendations for SysV init scripts"[1]. * @@ -60,3 +65,10 @@ const ( EXIT_BUS_ENDPOINT uint8 = 236 EXIT_SMACK_PROCESS_LABEL uint8 = 237 ) + +func Recover() { + if r := recover(); r != nil { + logger.Err("panic: %v", r) + os.Exit(int(EXIT_FAILURE)) + } +} |