1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-06-29 02:35:23 +00:00
v2fly/transport/internet/domainsocket/listener.go

27 lines
399 B
Go
Raw Normal View History

2017-10-31 05:51:31 +00:00
package domainsocket
2017-11-03 12:02:05 +00:00
import (
"context"
"net"
)
type Listener struct {
ln net.Listener
}
func ListenDS(ctx context.Context, path string) (*Listener, error) {
addr := new(net.UnixAddr)
addr.Name = path
2018-03-11 05:44:21 +00:00
addr.Net = "unix"
li, err := net.ListenUnix("unix", addr)
2017-11-03 12:02:05 +00:00
if err != nil {
return nil, err
}
vln := &Listener{ln: li}
return vln, nil
}
2018-03-11 05:44:21 +00:00
func (ls *Listener) Down() {
ls.ln.Close()
}