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