github.com/nextlinux/gosbom@v0.81.1-0.20230627115839-1ff50c281391/cmd/gosbom/cli/eventloop/signals.go (about)

     1  package eventloop
     2  
     3  import (
     4  	"os"
     5  	"os/signal"
     6  	"syscall"
     7  )
     8  
     9  func SetupSignals() <-chan os.Signal {
    10  	c := make(chan os.Signal, 1) // Note: A buffered channel is recommended for this; see https://golang.org/pkg/os/signal/#Notify
    11  
    12  	interruptions := []os.Signal{
    13  		syscall.SIGINT,
    14  		syscall.SIGTERM,
    15  	}
    16  
    17  	signal.Notify(c, interruptions...)
    18  
    19  	return c
    20  }