3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-12-25 04:02:38 +01:00
ergo/vendor/github.com/okzk/sdnotify/notify_linux.go

24 lines
430 B
Go
Raw Normal View History

package sdnotify
import (
"net"
"os"
)
// SdNotify sends a specified string to the systemd notification socket.
func SdNotify(state string) error {
name := os.Getenv("NOTIFY_SOCKET")
if name == "" {
return ErrSdNotifyNoSocket
}
conn, err := net.DialUnix("unixgram", nil, &net.UnixAddr{Name: name, Net: "unixgram"})
if err != nil {
return err
}
defer conn.Close()
_, err = conn.Write([]byte(state))
return err
}