mirror of
https://github.com/moby/moby.git
synced 2026-08-07 08:31:39 +00:00
overlay2: close read end of pipe on mount exec
Use StdinPipe to ensure pipe is properly closed after startup
Fixes #23686
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
(cherry picked from commit ad4b3e11fe)
This commit is contained in:
committed by
Tibor Vass
parent
0f1439a065
commit
07bd7b0128
@@ -32,12 +32,6 @@ type mountOptions struct {
|
||||
}
|
||||
|
||||
func mountFrom(dir, device, target, mType, label string) error {
|
||||
|
||||
r, w, err := os.Pipe()
|
||||
if err != nil {
|
||||
return fmt.Errorf("mountfrom pipe failure: %v", err)
|
||||
}
|
||||
|
||||
options := &mountOptions{
|
||||
Device: device,
|
||||
Target: target,
|
||||
@@ -47,7 +41,10 @@ func mountFrom(dir, device, target, mType, label string) error {
|
||||
}
|
||||
|
||||
cmd := reexec.Command("docker-mountfrom", dir)
|
||||
cmd.Stdin = r
|
||||
w, err := cmd.StdinPipe()
|
||||
if err != nil {
|
||||
return fmt.Errorf("mountfrom error on pipe creation: %v", err)
|
||||
}
|
||||
|
||||
output := bytes.NewBuffer(nil)
|
||||
cmd.Stdout = output
|
||||
|
||||
Reference in New Issue
Block a user