mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-18 20:51:45 +00:00
control/controlclient: fix Noise HTTP/2 regression from earlier commit
Fix regression from 21069124db caught by tests in another repo. The HTTP/2 Transport that was being returned had a ConnPool that never dialed. Updates #3488 Change-Id: I3184d6393813448ae143d37ece14eb732334c05f Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
parent
21069124db
commit
c4f6df47e5
@ -90,6 +90,15 @@ func newNoiseClient(priKey key.MachinePrivate, serverPubKey key.MachinePublic, s
|
|||||||
// but it's actually our Noise dialer:
|
// but it's actually our Noise dialer:
|
||||||
h2Transport.DialTLS = np.dial
|
h2Transport.DialTLS = np.dial
|
||||||
|
|
||||||
|
// ConfigureTransports assumes it's being used to wire up an HTTP/1
|
||||||
|
// and HTTP/2 Transport together, so its returned http2.Transport
|
||||||
|
// has a ConnPool already initialized that's configured to not dial
|
||||||
|
// (assuming it's only called from the HTTP/1 Transport). But we
|
||||||
|
// want it to dial, so nil it out before use. On first use it has
|
||||||
|
// a sync.Once that lazily initializes the ConnPool to its default
|
||||||
|
// one that dials.
|
||||||
|
h2Transport.ConnPool = nil
|
||||||
|
|
||||||
np.Client = &http.Client{Transport: h2Transport}
|
np.Client = &http.Client{Transport: h2Transport}
|
||||||
return np, nil
|
return np, nil
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user