updated multiaddr use across codebase
Juan Batiz-Benet committed
Oct 6, 2014 at 04:13 UTC
910a76e220a6db720e9dd434e168d2e67bd6a249
12 files changed
+25
-39
core/core.go
+2
-2
@@ -177,14 +177,14 @@ func initIdentity(cfg *config.Config, online bool) (*peer.Peer, error) {
177
}
178
179
// address is optional
180
- var addresses []*ma.Multiaddr
180
+ var addresses []ma.Multiaddr
181
if len(cfg.Addresses.Swarm) > 0 {
182
maddr, err := ma.NewMultiaddr(cfg.Addresses.Swarm)
183
if err != nil {
184
return nil, err
185
}
186
187
- addresses = []*ma.Multiaddr{maddr}
187
+ addresses = []ma.Multiaddr{maddr}
188
}
189
190
var (
daemon/daemon.go
+3
-8
@@ -39,7 +39,7 @@ type Command struct {
39
Opts map[string]interface{}
40
}
41
42
-func NewDaemonListener(ipfsnode *core.IpfsNode, addr *ma.Multiaddr, confdir string) (*DaemonListener, error) {
42
+func NewDaemonListener(ipfsnode *core.IpfsNode, addr ma.Multiaddr, confdir string) (*DaemonListener, error) {
43
var err error
44
confdir, err = u.TildeExpansion(confdir)
45
if err != nil {
@@ -51,7 +51,7 @@ func NewDaemonListener(ipfsnode *core.IpfsNode, addr *ma.Multiaddr, confdir stri
51
return nil, err
52
}
53
54
- network, host, err := addr.DialArgs()
54
+ network, host, err := ma.DialArgs(addr)
55
if err != nil {
56
return nil, err
57
}
@@ -62,12 +62,7 @@ func NewDaemonListener(ipfsnode *core.IpfsNode, addr *ma.Multiaddr, confdir stri
62
return nil, err
63
}
64
65
- mstr, err := addr.String()
66
- if err != nil {
67
- return nil, err
68
- }
69
-
70
- _, err = ofi.Write([]byte(mstr))
65
+ _, err = ofi.Write([]byte(addr.String()))
66
if err != nil {
67
log.Warning("Could not write to rpcaddress file: %s", err)
68
return nil, err
daemon/daemon_client.go
+1
-1
@@ -73,7 +73,7 @@ func SendCommand(command *Command, confdir string) error {
73
return err
74
}
75
76
- network, host, err := maddr.DialArgs()
76
+ network, host, err := ma.DialArgs(maddr)
77
78
conn, err := net.Dial(network, host)
79
if err != nil {
net/conn/conn.go
+4
-4
@@ -21,7 +21,7 @@ const MaxMessageSize = 1 << 20
21
// Conn represents a connection to another Peer (IPFS Node).
22
type Conn struct {
23
Peer *peer.Peer
24
- Addr *ma.Multiaddr
24
+ Addr ma.Multiaddr
25
Conn net.Conn
26
27
Closed chan bool
@@ -34,7 +34,7 @@ type Conn struct {
34
type Map map[u.Key]*Conn
35
36
// NewConn constructs a new connection
37
-func NewConn(peer *peer.Peer, addr *ma.Multiaddr, nconn net.Conn) (*Conn, error) {
37
+func NewConn(peer *peer.Peer, addr ma.Multiaddr, nconn net.Conn) (*Conn, error) {
38
conn := &Conn{
39
Peer: peer,
40
Addr: addr,
@@ -56,7 +56,7 @@ func Dial(network string, peer *peer.Peer) (*Conn, error) {
56
return nil, fmt.Errorf("No address for network %s", network)
57
}
58
59
- network, host, err := addr.DialArgs()
59
+ network, host, err := ma.DialArgs(addr)
60
if err != nil {
61
return nil, err
62
}
@@ -104,6 +104,6 @@ func (c *Conn) Close() error {
104
105
// NetConnMultiaddr returns the net.Conn's address, recast as a multiaddr.
106
// (consider moving this directly into the multiaddr package)
107
-func NetConnMultiaddr(nconn net.Conn) (*ma.Multiaddr, error) {
107
+func NetConnMultiaddr(nconn net.Conn) (ma.Multiaddr, error) {
108
return ma.FromNetAddr(nconn.RemoteAddr())
109
}
net/swarm/conn.go
+2
-2
@@ -37,8 +37,8 @@ func (s *Swarm) listen() error {
37
}
38
39
// Listen for new connections on the given multiaddr
40
-func (s *Swarm) connListen(maddr *ma.Multiaddr) error {
41
- netstr, addr, err := maddr.DialArgs()
40
+func (s *Swarm) connListen(maddr ma.Multiaddr) error {
41
+ netstr, addr, err := ma.DialArgs(maddr)
42
if err != nil {
43
return err
44
}
net/swarm/swarm.go
+1
-1
@@ -143,7 +143,7 @@ func (s *Swarm) Dial(peer *peer.Peer) (*conn.Conn, error) {
143
// DialAddr is for connecting to a peer when you know their addr but not their ID.
144
// Should only be used when sure that not connected to peer in question
145
// TODO(jbenet) merge with Dial? need way to patch back.
146
-func (s *Swarm) DialAddr(addr *ma.Multiaddr) (*conn.Conn, error) {
146
+func (s *Swarm) DialAddr(addr ma.Multiaddr) (*conn.Conn, error) {
147
if addr == nil {
148
return nil, errors.New("addr must be a non-nil Multiaddr")
149
}
net/swarm/swarm_test.go
+1
-1
@@ -95,7 +95,7 @@ func TestSwarm(t *testing.T) {
95
if a == nil {
96
t.Fatal("error setting up peer (addr is nil)", peer)
97
}
98
- n, h, err := a.DialArgs()
98
+ n, h, err := ma.DialArgs(a)
99
if err != nil {
100
t.Fatal("error getting dial args from addr")
101
}
peer/peer.go
+4
-9
@@ -38,7 +38,7 @@ type Map map[u.Key]*Peer
38
// ID, and relevant Addresses.
39
type Peer struct {
40
ID ID
41
- Addresses []*ma.Multiaddr
41
+ Addresses []ma.Multiaddr
42
43
PrivKey ic.PrivKey
44
PubKey ic.PubKey
@@ -54,7 +54,7 @@ func (p *Peer) Key() u.Key {
54
}
55
56
// AddAddress adds the given Multiaddr address to Peer's addresses.
57
-func (p *Peer) AddAddress(a *ma.Multiaddr) {
57
+func (p *Peer) AddAddress(a ma.Multiaddr) {
58
p.Lock()
59
defer p.Unlock()
60
@@ -67,17 +67,12 @@ func (p *Peer) AddAddress(a *ma.Multiaddr) {
67
}
68
69
// NetAddress returns the first Multiaddr found for a given network.
70
-func (p *Peer) NetAddress(n string) *ma.Multiaddr {
70
+func (p *Peer) NetAddress(n string) ma.Multiaddr {
71
p.RLock()
72
defer p.RUnlock()
73
74
for _, a := range p.Addresses {
75
- ps, err := a.Protocols()
76
- if err != nil {
77
- continue // invalid addr
78
- }
79
-
80
- for _, p := range ps {
75
+ for _, p := range a.Protocols() {
76
if p.Name == n {
77
return a
78
}
routing/dht/Message.go
+1
-5
@@ -20,11 +20,7 @@ func peerToPBPeer(p *peer.Peer) *Message_Peer {
20
if len(p.Addresses) == 0 || p.Addresses[0] == nil {
21
pbp.Addr = proto.String("")
22
} else {
23
- addr, err := p.Addresses[0].String()
24
- if err != nil {
25
- //Temp: what situations could cause this?
26
- panic(err)
27
- }
23
+ addr := p.Addresses[0].String()
24
pbp.Addr = &addr
25
}
26
pid := string(p.ID)
routing/dht/dht_test.go
+3
-3
@@ -43,8 +43,8 @@ func setupDHT(t *testing.T, p *peer.Peer) *IpfsDHT {
43
return d
44
}
45
46
-func setupDHTS(n int, t *testing.T) ([]*ma.Multiaddr, []*peer.Peer, []*IpfsDHT) {
47
- var addrs []*ma.Multiaddr
46
+func setupDHTS(n int, t *testing.T) ([]ma.Multiaddr, []*peer.Peer, []*IpfsDHT) {
47
+ var addrs []ma.Multiaddr
48
for i := 0; i < n; i++ {
49
a, err := ma.NewMultiaddr(fmt.Sprintf("/ip4/127.0.0.1/tcp/%d", 5000+i))
50
if err != nil {
@@ -67,7 +67,7 @@ func setupDHTS(n int, t *testing.T) ([]*ma.Multiaddr, []*peer.Peer, []*IpfsDHT)
67
return addrs, peers, dhts
68
}
69
70
-func makePeer(addr *ma.Multiaddr) *peer.Peer {
70
+func makePeer(addr ma.Multiaddr) *peer.Peer {
71
p := new(peer.Peer)
72
p.AddAddress(addr)
73
sk, pk, err := ci.GenerateKeyPair(ci.RSA, 512)
routing/dht/ext_test.go
+1
-1
@@ -184,7 +184,7 @@ func TestGetFailures(t *testing.T) {
184
func _randPeer() *peer.Peer {
185
p := new(peer.Peer)
186
p.ID = make(peer.ID, 16)
187
- p.Addresses = []*ma.Multiaddr{nil}
187
+ p.Addresses = []ma.Multiaddr{nil}
188
crand.Read(p.ID)
189
return p
190
}
server/http/http.go
+2
-2
@@ -17,14 +17,14 @@ type handler struct {
17
}
18
19
// Serve starts the http server
20
-func Serve(address *ma.Multiaddr, node *core.IpfsNode) error {
20
+func Serve(address ma.Multiaddr, node *core.IpfsNode) error {
21
r := mux.NewRouter()
22
handler := &handler{&ipfsHandler{node}}
23
r.HandleFunc("/ipfs/", handler.postHandler).Methods("POST")
24
r.PathPrefix("/ipfs/").Handler(handler).Methods("GET")
25
http.Handle("/", r)
26
27
- _, host, err := address.DialArgs()
27
+ _, host, err := ma.DialArgs(address)
28
if err != nil {
29
return err
30
}