From e296964046157893c0fe27c70ef3fedc60863a31 Mon Sep 17 00:00:00 2001 From: Jeromy Date: Tue, 16 Aug 2016 20:31:17 -0700 Subject: [PATCH] add DialContext method and use DialContext from stdlib --- .travis.yml | 2 +- net.go | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index b8ab51b..7e46c4f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,7 +7,7 @@ language: go sudo: false go: - - 1.5.3 + - 1.7 install: - make deps diff --git a/net.go b/net.go index 4e940b2..98795aa 100644 --- a/net.go +++ b/net.go @@ -1,6 +1,7 @@ package manet import ( + "context" "fmt" "net" @@ -86,7 +87,10 @@ type Dialer struct { // net.Conn, then wraps that in a Conn object (with local and // remote Multiaddrs). func (d *Dialer) Dial(remote ma.Multiaddr) (Conn, error) { + return d.DialContext(context.Background(), remote) +} +func (d *Dialer) DialContext(ctx context.Context, remote ma.Multiaddr) (Conn, error) { // if a LocalAddr is specified, use it on the embedded dialer. if d.LocalAddr != nil { // convert our multiaddr to net.Addr friendly @@ -109,7 +113,7 @@ func (d *Dialer) Dial(remote ma.Multiaddr) (Conn, error) { var nconn net.Conn switch rnet { case "tcp", "tcp4", "tcp6", "udp", "udp4", "udp6": - nconn, err = d.Dialer.Dial(rnet, rnaddr) + nconn, err = d.Dialer.DialContext(ctx, rnet, rnaddr) if err != nil { return nil, err }