cmd/strelaysrv: Use listen address for outgoing HTTP requests (fixes #3682)

This commit is contained in:
Audrius Butkevicius 2016-11-11 22:51:48 +00:00 committed by Jakob Borg
parent 94e4370c7e
commit bb23e3940e
1 changed files with 16 additions and 0 deletions

View File

@ -8,6 +8,7 @@ import (
"fmt"
"log"
"net"
"net/http"
"net/url"
"os"
"os/signal"
@ -120,6 +121,21 @@ func main() {
log.Fatal(err)
}
laddr, err := net.ResolveTCPAddr(proto, listen)
if err != nil {
log.Fatal(err)
}
if laddr.IP != nil && !laddr.IP.IsUnspecified() {
laddr.Port = 0
transport, ok := http.DefaultTransport.(*http.Transport)
if ok {
transport.DialContext = (&net.Dialer{
Timeout: 30 * time.Second,
LocalAddr: laddr,
}).DialContext
}
}
log.Println(LongVersion)
maxDescriptors, err := osutil.MaximizeOpenFileLimit()