Files
indra/pkg/rpc/socket_unix.go
2023-03-04 01:14:00 +00:00

47 lines
582 B
Go

package rpc
import (
"google.golang.org/grpc"
"net"
"os"
)
const unixPathDefault = "/tmp/indra.sock"
var (
isUnixSockEnabled bool = false
unixSock net.Listener
)
func startUnixSocket(srv *grpc.Server) (err error) {
if !isUnixSockEnabled {
return
}
if unixSock, err = net.Listen("unix", o.unixPath); err != nil {
return
}
go srv.Serve(unixSock)
return
}
func stopUnixSocket() (err error) {
if !isUnixSockEnabled {
return
}
if unixSock != nil {
if err = unixSock.Close(); err != nil {
// continue
}
}
os.Remove(o.unixPath)
return
}