Add transport dial timeout

This commit is contained in:
Asim
2016-01-03 21:25:03 +00:00
parent 332a229169
commit d43d3e8efa
4 changed files with 32 additions and 8 deletions

View File

@@ -276,17 +276,19 @@ func (h *httpTransportListener) Accept(fn func(Socket)) error {
}
func (h *httpTransport) Dial(addr string, opts ...DialOption) (Client, error) {
conn, err := net.Dial("tcp", addr)
if err != nil {
return nil, err
dopts := DialOptions{
Timeout: DefaultDialTimeout,
}
var dopts DialOptions
for _, opt := range opts {
opt(&dopts)
}
conn, err := net.DialTimeout("tcp", addr, dopts.Timeout)
if err != nil {
return nil, err
}
return &httpTransportClient{
ht: h,
addr: addr,