1
0
mirror of https://github.com/fumiama/terasu.git synced 2026-06-05 01:00:23 +08:00

fix(tlsconn): clear deadline after tcp dial

This commit is contained in:
源文雨
2025-10-06 14:02:48 +08:00
parent d81a14f444
commit 48a5909e84
3 changed files with 32 additions and 1 deletions

View File

@@ -59,6 +59,16 @@ var DefaultClient = http.Client{
continue
}
tlsConn = tls.Client(conn, cfg)
// re-init ctx due to deadline settings in tcp dial
if defaultDialer.Timeout != 0 {
var cancel context.CancelFunc
ctx, cancel = context.WithTimeout(context.Background(), defaultDialer.Timeout)
defer cancel()
} else if !defaultDialer.Deadline.IsZero() {
var cancel context.CancelFunc
ctx, cancel = context.WithDeadline(context.Background(), defaultDialer.Deadline)
defer cancel()
}
if terasu.DefaultFirstFragmentLen > 0 {
err = terasu.Use(tlsConn).HandshakeContext(ctx, terasu.DefaultFirstFragmentLen)
} else {