summaryrefslogtreecommitdiff
path: root/src/sd_daemon/lsb/exit-status.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/sd_daemon/lsb/exit-status.go')
-rw-r--r--src/sd_daemon/lsb/exit-status.go41
1 files changed, 29 insertions, 12 deletions
diff --git a/src/sd_daemon/lsb/exit-status.go b/src/sd_daemon/lsb/exit-status.go
index 41eaafd..cc1604d 100644
--- a/src/sd_daemon/lsb/exit-status.go
+++ b/src/sd_daemon/lsb/exit-status.go
@@ -1,3 +1,19 @@
+// Copyright 2015 Luke Shumaker
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Package lsb provides constant exit codes specified by the Linux
+// Standard Base.
package lsb
import (
@@ -5,11 +21,10 @@ import (
"sd_daemon/logger"
)
-/* systemd daemon(7) recommends using the exit codes defined in the
- * "LSB recomendations for SysV init scripts"[1].
- *
- * [1]: http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html
- */
+// systemd daemon(7) recommends using the exit codes defined in the
+// "LSB recomendations for SysV init scripts"[1].
+//
+// [1]: http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html
const (
EXIT_SUCCESS uint8 = 0
EXIT_FAILURE uint8 = 1
@@ -19,13 +34,13 @@ const (
EXIT_NOTINSTALLED uint8 = 5
EXIT_NOTCONFIGURED uint8 = 6
EXIT_NOTRUNNING uint8 = 7
- /* 8- 99 are reserved for future LSB use */
- /* 100-149 are reserved for distribution use */
- /* 150-199 are reserved for application use */
- /* 200-254 are reserved for init system use */
+ // 8- 99 are reserved for future LSB use
+ // 100-149 are reserved for distribution use
+ // 150-199 are reserved for application use
+ // 200-254 are reserved for init system use
- /* Therefore, the following are taken from systemd's
- /* `src/basic/exit-status.h` */
+ // Therefore, the following are taken from systemd's
+ // `src/basic/exit-status.h`
EXIT_CHDIR uint8 = 200
EXIT_NICE uint8 = 201
EXIT_FDS uint8 = 202
@@ -49,7 +64,7 @@ const (
EXIT_SETSID uint8 = 220
EXIT_CONFIRM uint8 = 221
EXIT_STDERR uint8 = 222
- _EXIT_RESERVED uint8 = 223 /* used to be tcpwrap don't reuse! */
+ _EXIT_RESERVED uint8 = 223 // used to be tcpwrap don't reuse!
EXIT_PAM uint8 = 224
EXIT_NETWORK uint8 = 225
EXIT_NAMESPACE uint8 = 226
@@ -66,6 +81,8 @@ const (
EXIT_SMACK_PROCESS_LABEL uint8 = 237
)
+// This is a utility function to defer at the beginning of a goroutine
+// in order to have the correct exit code in the case of a panic.
func Recover() {
if r := recover(); r != nil {
logger.Err("panic: %v", r)