mirror of https://github.com/docker/docs.git
Fix interactive exec over TLS
The code no longer assumes a net.TCPConn underlying the HTTP connection in order to close attached streams. Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
This commit is contained in:
parent
b487d2f2ff
commit
266a1044de
|
@ -1136,15 +1136,19 @@ func postContainerExecStart(eng *engine.Engine, version version.Version, w http.
|
||||||
}
|
}
|
||||||
|
|
||||||
defer func() {
|
defer func() {
|
||||||
if tcpc, ok := inStream.(*net.TCPConn); ok {
|
if cw, ok := inStream.(interface {
|
||||||
tcpc.CloseWrite()
|
CloseWrite() error
|
||||||
|
}); ok {
|
||||||
|
cw.CloseWrite()
|
||||||
} else {
|
} else {
|
||||||
inStream.Close()
|
inStream.Close()
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
defer func() {
|
defer func() {
|
||||||
if tcpc, ok := outStream.(*net.TCPConn); ok {
|
if cw, ok := outStream.(interface {
|
||||||
tcpc.CloseWrite()
|
CloseWrite() error
|
||||||
|
}); ok {
|
||||||
|
cw.CloseWrite()
|
||||||
} else if closer, ok := outStream.(io.Closer); ok {
|
} else if closer, ok := outStream.(io.Closer); ok {
|
||||||
closer.Close()
|
closer.Close()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue