brontide: modify the Dial function to take a *lnwire.NetAddress
This commit is contained in:
parent
99ed3b8616
commit
9850e8667e
@ -6,6 +6,7 @@ import (
|
||||
"net"
|
||||
"time"
|
||||
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
"github.com/roasbeef/btcd/btcec"
|
||||
)
|
||||
|
||||
@ -30,17 +31,16 @@ var _ net.Conn = (*Conn)(nil)
|
||||
// remote peer located at address which has remotePub as its long-term static
|
||||
// public key. In the case of a handshake failure, the connection is closed and
|
||||
// a non-nil error is returned.
|
||||
func Dial(localPriv *btcec.PrivateKey, remotePub *btcec.PublicKey,
|
||||
address string) (*Conn, error) {
|
||||
|
||||
conn, err := net.Dial("tcp", address)
|
||||
func Dial(localPriv *btcec.PrivateKey, netAddr *lnwire.NetAddress) (*Conn, error) {
|
||||
ipAddr := netAddr.Address.String()
|
||||
conn, err := net.Dial("tcp", ipAddr)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
b := &Conn{
|
||||
conn: conn,
|
||||
noise: NewBrontideMachine(true, localPriv, remotePub),
|
||||
noise: NewBrontideMachine(true, localPriv, netAddr.IdentityKey),
|
||||
}
|
||||
|
||||
// Initiate the handshake by sending the first act to the receiver.
|
||||
|
@ -5,6 +5,7 @@ import (
|
||||
"net"
|
||||
"testing"
|
||||
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
"github.com/roasbeef/btcd/btcec"
|
||||
)
|
||||
|
||||
@ -31,14 +32,17 @@ func TestConnectionCorrectness(t *testing.T) {
|
||||
}
|
||||
defer listener.Close()
|
||||
|
||||
listenAddr := listener.Addr().String()
|
||||
netAddr := &lnwire.NetAddress{
|
||||
IdentityKey: localPriv.PubKey(),
|
||||
Address: listener.Addr().(*net.TCPAddr),
|
||||
}
|
||||
|
||||
// Initiate a connection with a separate goroutine, and listen with our
|
||||
// main one. If both errors are nil, then encryption+auth was succesful.
|
||||
errChan := make(chan error)
|
||||
connChan := make(chan net.Conn)
|
||||
go func() {
|
||||
conn, err := Dial(remotePriv, localPriv.PubKey(), listenAddr)
|
||||
conn, err := Dial(remotePriv, netAddr)
|
||||
errChan <- err
|
||||
connChan <- conn
|
||||
}()
|
||||
|
Loading…
Reference in New Issue
Block a user