Skip to content

Commit

Permalink
fix(api): add a global timeout when checking network requirement
Browse files Browse the repository at this point in the history
  • Loading branch information
richardlt committed Mar 20, 2020
1 parent e1e4fc3 commit 6e1616d
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion sdk/requirement.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package sdk

import (
"context"
"net"
"time"
)
Expand Down Expand Up @@ -177,7 +178,11 @@ func (a *Action) Requirement(name string, t string, value string) *Action {

// CheckNetworkAccessRequirement returns true if req.Value can Dial
func CheckNetworkAccessRequirement(req Requirement) bool {
conn, err := net.DialTimeout("tcp", req.Value, 10*time.Second)
d := net.Dialer{Timeout: 10 * time.Second}
ctx, cancel := context.WithTimeout(context.Background(), d.Timeout)
defer cancel()

conn, err := d.DialContext(ctx, "tcp", req.Value)
if err != nil {
return false
}
Expand Down

0 comments on commit 6e1616d

Please sign in to comment.