diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-06-16 15:29:34 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-16 15:29:34 -0400 |
commit | 2509a81c343314fa452a0215d05e9d74ab4ec15c (patch) | |
tree | 18252074d42b6adfa4021e89a80d6c2f399f0a34 /libpod/oci.go | |
parent | b3f61ec38cda171caf8e8624a9ec875ba85bc20d (diff) | |
parent | 666f555aa52b9f82da9d6ca64cf11e4f5e1e78e8 (diff) | |
download | podman-2509a81c343314fa452a0215d05e9d74ab4ec15c.tar.gz podman-2509a81c343314fa452a0215d05e9d74ab4ec15c.tar.bz2 podman-2509a81c343314fa452a0215d05e9d74ab4ec15c.zip |
Merge pull request #10683 from Luap99/exec-resize
Fix resize race with podman exec -it
Diffstat (limited to 'libpod/oci.go')
-rw-r--r-- | libpod/oci.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libpod/oci.go b/libpod/oci.go index 1f2c7dd71..c92d9a077 100644 --- a/libpod/oci.go +++ b/libpod/oci.go @@ -72,13 +72,16 @@ type OCIRuntime interface { // has completed, as one might expect. The attach session will remain // running, in a goroutine that will return via the chan error in the // return signature. - ExecContainer(ctr *Container, sessionID string, options *ExecOptions, streams *define.AttachStreams) (int, chan error, error) + // newSize resizes the tty to this size before the process is started, must be nil if the exec session has no tty + ExecContainer(ctr *Container, sessionID string, options *ExecOptions, streams *define.AttachStreams, newSize *define.TerminalSize) (int, chan error, error) // ExecContainerHTTP executes a command in a running container and // attaches its standard streams to a provided hijacked HTTP session. // Maintains the same invariants as ExecContainer (returns on session // start, with a goroutine running in the background to handle attach). // The HTTP attach itself maintains the same invariants as HTTPAttach. - ExecContainerHTTP(ctr *Container, sessionID string, options *ExecOptions, r *http.Request, w http.ResponseWriter, streams *HTTPAttachStreams, cancel <-chan bool, hijackDone chan<- bool, holdConnOpen <-chan bool) (int, chan error, error) + // newSize resizes the tty to this size before the process is started, must be nil if the exec session has no tty + ExecContainerHTTP(ctr *Container, sessionID string, options *ExecOptions, r *http.Request, w http.ResponseWriter, + streams *HTTPAttachStreams, cancel <-chan bool, hijackDone chan<- bool, holdConnOpen <-chan bool, newSize *define.TerminalSize) (int, chan error, error) // ExecContainerDetached executes a command in a running container, but // does not attach to it. Returns the PID of the exec session and an // error (if starting the exec session failed) |