Move signal to pkg
Docker-DCO-1.1-Signed-off-by: Guillaume J. Charmes <guillaume@charmes.net> (github: creack)
This commit is contained in:
parent
fcd7612643
commit
db6b150d99
4 changed files with 184 additions and 0 deletions
11
signal/signal.go
Normal file
11
signal/signal.go
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
package signal
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"os/signal"
|
||||||
|
)
|
||||||
|
|
||||||
|
func StopCatch(sigc chan os.Signal) {
|
||||||
|
signal.Stop(sigc)
|
||||||
|
close(sigc)
|
||||||
|
}
|
44
signal/signal_darwin.go
Normal file
44
signal/signal_darwin.go
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
package signal
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"os/signal"
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
func CatchAll(sigc chan os.Signal) {
|
||||||
|
signal.Notify(sigc,
|
||||||
|
syscall.SIGABRT,
|
||||||
|
syscall.SIGALRM,
|
||||||
|
syscall.SIGBUS,
|
||||||
|
syscall.SIGCHLD,
|
||||||
|
syscall.SIGCONT,
|
||||||
|
syscall.SIGEMT,
|
||||||
|
syscall.SIGFPE,
|
||||||
|
syscall.SIGHUP,
|
||||||
|
syscall.SIGILL,
|
||||||
|
syscall.SIGINFO,
|
||||||
|
syscall.SIGINT,
|
||||||
|
syscall.SIGIO,
|
||||||
|
syscall.SIGIOT,
|
||||||
|
syscall.SIGKILL,
|
||||||
|
syscall.SIGPIPE,
|
||||||
|
syscall.SIGPROF,
|
||||||
|
syscall.SIGQUIT,
|
||||||
|
syscall.SIGSEGV,
|
||||||
|
syscall.SIGSTOP,
|
||||||
|
syscall.SIGSYS,
|
||||||
|
syscall.SIGTERM,
|
||||||
|
syscall.SIGTRAP,
|
||||||
|
syscall.SIGTSTP,
|
||||||
|
syscall.SIGTTIN,
|
||||||
|
syscall.SIGTTOU,
|
||||||
|
syscall.SIGURG,
|
||||||
|
syscall.SIGUSR1,
|
||||||
|
syscall.SIGUSR2,
|
||||||
|
syscall.SIGVTALRM,
|
||||||
|
syscall.SIGWINCH,
|
||||||
|
syscall.SIGXCPU,
|
||||||
|
syscall.SIGXFSZ,
|
||||||
|
)
|
||||||
|
}
|
42
signal/signal_freebsd.go
Normal file
42
signal/signal_freebsd.go
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
package signal
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"os/signal"
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
func CatchAll(sigc chan os.Signal) {
|
||||||
|
signal.Notify(sigc,
|
||||||
|
syscall.SIGABRT,
|
||||||
|
syscall.SIGALRM,
|
||||||
|
syscall.SIGBUS,
|
||||||
|
syscall.SIGCHLD,
|
||||||
|
syscall.SIGCONT,
|
||||||
|
syscall.SIGFPE,
|
||||||
|
syscall.SIGHUP,
|
||||||
|
syscall.SIGILL,
|
||||||
|
syscall.SIGINT,
|
||||||
|
syscall.SIGIO,
|
||||||
|
syscall.SIGIOT,
|
||||||
|
syscall.SIGKILL,
|
||||||
|
syscall.SIGPIPE,
|
||||||
|
syscall.SIGPROF,
|
||||||
|
syscall.SIGQUIT,
|
||||||
|
syscall.SIGSEGV,
|
||||||
|
syscall.SIGSTOP,
|
||||||
|
syscall.SIGSYS,
|
||||||
|
syscall.SIGTERM,
|
||||||
|
syscall.SIGTRAP,
|
||||||
|
syscall.SIGTSTP,
|
||||||
|
syscall.SIGTTIN,
|
||||||
|
syscall.SIGTTOU,
|
||||||
|
syscall.SIGURG,
|
||||||
|
syscall.SIGUSR1,
|
||||||
|
syscall.SIGUSR2,
|
||||||
|
syscall.SIGVTALRM,
|
||||||
|
syscall.SIGWINCH,
|
||||||
|
syscall.SIGXCPU,
|
||||||
|
syscall.SIGXFSZ,
|
||||||
|
)
|
||||||
|
}
|
87
signal/signal_linux.go
Normal file
87
signal/signal_linux.go
Normal file
|
@ -0,0 +1,87 @@
|
||||||
|
package signal
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"os/signal"
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
var signalMap = map[string]syscall.Signal{}
|
||||||
|
|
||||||
|
/*
|
||||||
|
syscall.SIGABRT,
|
||||||
|
syscall.SIGALRM,
|
||||||
|
syscall.SIGBUS,
|
||||||
|
syscall.SIGCHLD,
|
||||||
|
syscall.SIGCLD,
|
||||||
|
syscall.SIGCONT,
|
||||||
|
syscall.SIGFPE,
|
||||||
|
syscall.SIGHUP,
|
||||||
|
syscall.SIGILL,
|
||||||
|
syscall.SIGINT,
|
||||||
|
syscall.SIGIO,
|
||||||
|
syscall.SIGIOT,
|
||||||
|
syscall.SIGKILL,
|
||||||
|
syscall.SIGPIPE,
|
||||||
|
syscall.SIGPOLL,
|
||||||
|
syscall.SIGPROF,
|
||||||
|
syscall.SIGPWR,
|
||||||
|
syscall.SIGQUIT,
|
||||||
|
syscall.SIGSEGV,
|
||||||
|
syscall.SIGSTKFLT,
|
||||||
|
syscall.SIGSTOP,
|
||||||
|
syscall.SIGSYS,
|
||||||
|
syscall.SIGTERM,
|
||||||
|
syscall.SIGTRAP,
|
||||||
|
syscall.SIGTSTP,
|
||||||
|
syscall.SIGTTIN,
|
||||||
|
syscall.SIGTTOU,
|
||||||
|
syscall.SIGUNUSED,
|
||||||
|
syscall.SIGURG,
|
||||||
|
syscall.SIGUSR1,
|
||||||
|
syscall.SIGUSR2,
|
||||||
|
syscall.SIGVTALRM,
|
||||||
|
syscall.SIGWINCH,
|
||||||
|
syscall.SIGXCPU,
|
||||||
|
syscall.SIGXFSZ,
|
||||||
|
*/
|
||||||
|
|
||||||
|
func CatchAll(sigc chan os.Signal) {
|
||||||
|
signal.Notify(sigc,
|
||||||
|
syscall.SIGABRT,
|
||||||
|
syscall.SIGALRM,
|
||||||
|
syscall.SIGBUS,
|
||||||
|
syscall.SIGCHLD,
|
||||||
|
syscall.SIGCLD,
|
||||||
|
syscall.SIGCONT,
|
||||||
|
syscall.SIGFPE,
|
||||||
|
syscall.SIGHUP,
|
||||||
|
syscall.SIGILL,
|
||||||
|
syscall.SIGINT,
|
||||||
|
syscall.SIGIO,
|
||||||
|
syscall.SIGIOT,
|
||||||
|
syscall.SIGKILL,
|
||||||
|
syscall.SIGPIPE,
|
||||||
|
syscall.SIGPOLL,
|
||||||
|
syscall.SIGPROF,
|
||||||
|
syscall.SIGPWR,
|
||||||
|
syscall.SIGQUIT,
|
||||||
|
syscall.SIGSEGV,
|
||||||
|
syscall.SIGSTKFLT,
|
||||||
|
syscall.SIGSTOP,
|
||||||
|
syscall.SIGSYS,
|
||||||
|
syscall.SIGTERM,
|
||||||
|
syscall.SIGTRAP,
|
||||||
|
syscall.SIGTSTP,
|
||||||
|
syscall.SIGTTIN,
|
||||||
|
syscall.SIGTTOU,
|
||||||
|
syscall.SIGUNUSED,
|
||||||
|
syscall.SIGURG,
|
||||||
|
syscall.SIGUSR1,
|
||||||
|
syscall.SIGUSR2,
|
||||||
|
syscall.SIGVTALRM,
|
||||||
|
syscall.SIGWINCH,
|
||||||
|
syscall.SIGXCPU,
|
||||||
|
syscall.SIGXFSZ,
|
||||||
|
)
|
||||||
|
}
|
Loading…
Reference in a new issue