Merge pull request #92182 from sttts/sttts-non-tcp-listener
apiserver: fix secure serving cast for non-tcp listeners Kubernetes-commit: 6dced80b5a7de41d4caf7b287e78c84a4d8761e0
This commit is contained in:
commit
51732c2088
|
|
@ -676,7 +676,7 @@
|
|||
},
|
||||
{
|
||||
"ImportPath": "k8s.io/client-go",
|
||||
"Rev": "3ab27431ef50"
|
||||
"Rev": "18c1ef0354fe"
|
||||
},
|
||||
{
|
||||
"ImportPath": "k8s.io/component-base",
|
||||
|
|
|
|||
4
go.mod
4
go.mod
|
|
@ -43,7 +43,7 @@ require (
|
|||
gopkg.in/yaml.v2 v2.2.8
|
||||
k8s.io/api v0.0.0-20200617090426-8a7a6938a421
|
||||
k8s.io/apimachinery v0.0.0-20200618091750-6e0343cc28d1
|
||||
k8s.io/client-go v0.0.0-20200618092151-3ab27431ef50
|
||||
k8s.io/client-go v0.0.0-20200618132424-18c1ef0354fe
|
||||
k8s.io/component-base v0.0.0-20200617051220-6c60a4d2ed11
|
||||
k8s.io/klog/v2 v2.1.0
|
||||
k8s.io/kube-openapi v0.0.0-20200427153329-656914f816f9
|
||||
|
|
@ -58,6 +58,6 @@ replace (
|
|||
golang.org/x/tools => golang.org/x/tools v0.0.0-20190821162956-65e3620a7ae7 // pinned to release-branch.go1.13
|
||||
k8s.io/api => k8s.io/api v0.0.0-20200617090426-8a7a6938a421
|
||||
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20200618091750-6e0343cc28d1
|
||||
k8s.io/client-go => k8s.io/client-go v0.0.0-20200618092151-3ab27431ef50
|
||||
k8s.io/client-go => k8s.io/client-go v0.0.0-20200618132424-18c1ef0354fe
|
||||
k8s.io/component-base => k8s.io/component-base v0.0.0-20200617051220-6c60a4d2ed11
|
||||
)
|
||||
|
|
|
|||
2
go.sum
2
go.sum
|
|
@ -448,7 +448,7 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
|
|||
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
|
||||
k8s.io/api v0.0.0-20200617090426-8a7a6938a421/go.mod h1:kD7EG+Wyq5Fu0MAEBkXyQVnnjyj/ChS5/vewKVRDaYI=
|
||||
k8s.io/apimachinery v0.0.0-20200618091750-6e0343cc28d1/go.mod h1:OO1oUmqmYEvK9/2GigG7tpElec1NAKGniAPppy1PJGA=
|
||||
k8s.io/client-go v0.0.0-20200618092151-3ab27431ef50/go.mod h1:bOoihAsKle+a9FgufU/ghgSzgvF7xJ/su3zwy/pfK3c=
|
||||
k8s.io/client-go v0.0.0-20200618132424-18c1ef0354fe/go.mod h1:bOoihAsKle+a9FgufU/ghgSzgvF7xJ/su3zwy/pfK3c=
|
||||
k8s.io/component-base v0.0.0-20200617051220-6c60a4d2ed11/go.mod h1:SIJ3hZh19C0QhquEIfpd0PWNnQPXJvrH9ClSZPF25sI=
|
||||
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
|
||||
k8s.io/klog/v2 v2.0.0 h1:Foj74zO6RbjjP4hBEKjnYtjjAhGg4jNynUdYF6fJrok=
|
||||
|
|
|
|||
|
|
@ -218,7 +218,7 @@ func RunServer(
|
|||
defer utilruntime.HandleCrash()
|
||||
|
||||
var listener net.Listener
|
||||
listener = tcpKeepAliveListener{ln.(*net.TCPListener)}
|
||||
listener = tcpKeepAliveListener{ln}
|
||||
if server.TLSConfig != nil {
|
||||
listener = tls.NewListener(listener, server.TLSConfig)
|
||||
}
|
||||
|
|
@ -244,15 +244,17 @@ func RunServer(
|
|||
//
|
||||
// Copied from Go 1.7.2 net/http/server.go
|
||||
type tcpKeepAliveListener struct {
|
||||
*net.TCPListener
|
||||
net.Listener
|
||||
}
|
||||
|
||||
func (ln tcpKeepAliveListener) Accept() (net.Conn, error) {
|
||||
tc, err := ln.AcceptTCP()
|
||||
c, err := ln.Listener.Accept()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
tc.SetKeepAlive(true)
|
||||
tc.SetKeepAlivePeriod(defaultKeepAlivePeriod)
|
||||
return tc, nil
|
||||
if tc, ok := c.(*net.TCPConn); ok {
|
||||
tc.SetKeepAlive(true)
|
||||
tc.SetKeepAlivePeriod(defaultKeepAlivePeriod)
|
||||
}
|
||||
return c, nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue