1
2
3
4
5
6
7 package net
8
9 import (
10 "os"
11 )
12
13
14 type UnixAddr struct {
15 Name string
16 Net string
17 }
18
19
20 func (a *UnixAddr) Network() string {
21 return a.Net
22 }
23
24 func (a *UnixAddr) String() string {
25 if a == nil {
26 return "<nil>"
27 }
28 return a.Name
29 }
30
31 func (a *UnixAddr) toAddr() Addr {
32 if a == nil {
33 return nil
34 }
35 return a
36 }
37
38
39
40
41 func ResolveUnixAddr(net, addr string) (*UnixAddr, os.Error) {
42 switch net {
43 case "unix":
44 case "unixpacket":
45 case "unixgram":
46 default:
47 return nil, UnknownNetworkError(net)
48 }
49 return &UnixAddr{addr, net}, nil
50 }