mirror of
https://github.com/tailscale/tailscale.git
synced 2025-08-20 01:47:33 +00:00
net/ktimeout: add a package to set TCP user timeout
Setting a user timeout will be a more practical tuning knob for a number of endpoints, this provides a way to set it. Updates tailscale/corp#17587 Signed-off-by: James Tucker <james@tailscale.com>
This commit is contained in:

committed by
James Tucker

parent
a4a909a20b
commit
8fe504241d
24
net/ktimeout/ktimeout_test.go
Normal file
24
net/ktimeout/ktimeout_test.go
Normal file
@@ -0,0 +1,24 @@
|
||||
// Copyright (c) Tailscale Inc & AUTHORS
|
||||
// SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
package ktimeout
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"net"
|
||||
"time"
|
||||
)
|
||||
|
||||
func ExampleUserTimeout() {
|
||||
lc := net.ListenConfig{
|
||||
Control: UserTimeout(30 * time.Second),
|
||||
}
|
||||
l, err := lc.Listen(context.TODO(), "tcp", "127.0.0.1:0")
|
||||
if err != nil {
|
||||
fmt.Printf("error: %v", err)
|
||||
return
|
||||
}
|
||||
l.Close()
|
||||
// Output:
|
||||
}
|
Reference in New Issue
Block a user