1234567891011121314151617181920212223242526272829303132 |
- // Code forked from Docker project
- package daemon
- import (
- "errors"
- "net"
- "os"
- )
- var SdNotifyNoSocket = errors.New("No socket")
- // SdNotify sends a message to the init daemon. It is common to ignore the error.
- func SdNotify(state string) error {
- socketAddr := &net.UnixAddr{
- Name: os.Getenv("NOTIFY_SOCKET"),
- Net: "unixgram",
- }
- if socketAddr.Name == "" {
- return SdNotifyNoSocket
- }
- conn, err := net.DialUnix(socketAddr.Net, nil, socketAddr)
- if err != nil {
- return err
- }
- defer conn.Close()
- _, err = conn.Write([]byte(state))
- return err
- }
|