Signed-off-by: Jean-Tiare Le Bigot <jt@yadutaf.fr>
| ... | ... |
@@ -135,6 +135,8 @@ func (cli *DockerCli) hijack(method, path string, setRawTerminal bool, in io.Rea |
| 135 | 135 |
} |
| 136 | 136 |
req.Header.Set("User-Agent", "Docker-Client/"+dockerversion.VERSION)
|
| 137 | 137 |
req.Header.Set("Content-Type", "plain/text")
|
| 138 |
+ req.Header.Set("Connection", "Upgrade")
|
|
| 139 |
+ req.Header.Set("Upgrade", "tcp")
|
|
| 138 | 140 |
req.Host = cli.addr |
| 139 | 141 |
|
| 140 | 142 |
dial, err := cli.dial() |
| ... | ... |
@@ -887,7 +887,7 @@ func postContainersAttach(eng *engine.Engine, version version.Version, w http.Re |
| 887 | 887 |
|
| 888 | 888 |
var errStream io.Writer |
| 889 | 889 |
|
| 890 |
- fmt.Fprintf(outStream, "HTTP/1.1 200 OK\r\nContent-Type: application/vnd.docker.raw-stream\r\n\r\n") |
|
| 890 |
+ fmt.Fprintf(outStream, "HTTP/1.1 101 UPGRADED\r\nContent-Type: application/vnd.docker.raw-stream\r\nConnection: Upgrade\r\nUpgrade: tcp\r\n\r\n") |
|
| 891 | 891 |
|
| 892 | 892 |
if c.GetSubEnv("Config") != nil && !c.GetSubEnv("Config").GetBool("Tty") && version.GreaterThanOrEqualTo("1.6") {
|
| 893 | 893 |
errStream = stdcopy.NewStdWriter(outStream, stdcopy.Stderr) |
| ... | ... |
@@ -1137,7 +1137,7 @@ func postContainerExecStart(eng *engine.Engine, version version.Version, w http. |
| 1137 | 1137 |
|
| 1138 | 1138 |
var errStream io.Writer |
| 1139 | 1139 |
|
| 1140 |
- fmt.Fprintf(outStream, "HTTP/1.1 200 OK\r\nContent-Type: application/vnd.docker.raw-stream\r\n\r\n") |
|
| 1140 |
+ fmt.Fprintf(outStream, "HTTP/1.1 101 UPGRADED\r\nContent-Type: application/vnd.docker.raw-stream\r\nConnection: Upgrade\r\nUpgrade: tcp\r\n\r\n") |
|
| 1141 | 1141 |
if !job.GetenvBool("Tty") && version.GreaterThanOrEqualTo("1.6") {
|
| 1142 | 1142 |
errStream = stdcopy.NewStdWriter(outStream, stdcopy.Stderr) |
| 1143 | 1143 |
outStream = stdcopy.NewStdWriter(outStream, stdcopy.Stdout) |