rootlessport: use x/sys/unix instead of syscall
Dup2 is not defined on arm64 in the syscall package. Closes: https://github.com/containers/libpod/issues/5587 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
		
							parent
							
								
									3dbf2cb5af
								
							
						
					
					
						commit
						720f0bc562
					
				|  | @ -20,7 +20,6 @@ import ( | ||||||
| 	"os" | 	"os" | ||||||
| 	"os/exec" | 	"os/exec" | ||||||
| 	"os/signal" | 	"os/signal" | ||||||
| 	"syscall" |  | ||||||
| 
 | 
 | ||||||
| 	"github.com/containernetworking/plugins/pkg/ns" | 	"github.com/containernetworking/plugins/pkg/ns" | ||||||
| 	"github.com/containers/storage/pkg/reexec" | 	"github.com/containers/storage/pkg/reexec" | ||||||
|  | @ -30,6 +29,7 @@ import ( | ||||||
| 	rkbuiltin "github.com/rootless-containers/rootlesskit/pkg/port/builtin" | 	rkbuiltin "github.com/rootless-containers/rootlesskit/pkg/port/builtin" | ||||||
| 	rkportutil "github.com/rootless-containers/rootlesskit/pkg/port/portutil" | 	rkportutil "github.com/rootless-containers/rootlesskit/pkg/port/portutil" | ||||||
| 	"github.com/sirupsen/logrus" | 	"github.com/sirupsen/logrus" | ||||||
|  | 	"golang.org/x/sys/unix" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
|  | @ -103,10 +103,10 @@ func parent() error { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	sigC := make(chan os.Signal, 1) | 	sigC := make(chan os.Signal, 1) | ||||||
| 	signal.Notify(sigC, syscall.SIGPIPE) | 	signal.Notify(sigC, unix.SIGPIPE) | ||||||
| 	defer func() { | 	defer func() { | ||||||
| 		// dummy signal to terminate the goroutine
 | 		// dummy signal to terminate the goroutine
 | ||||||
| 		sigC <- syscall.SIGKILL | 		sigC <- unix.SIGKILL | ||||||
| 	}() | 	}() | ||||||
| 	go func() { | 	go func() { | ||||||
| 		defer func() { | 		defer func() { | ||||||
|  | @ -115,10 +115,10 @@ func parent() error { | ||||||
| 		}() | 		}() | ||||||
| 
 | 
 | ||||||
| 		s := <-sigC | 		s := <-sigC | ||||||
| 		if s == syscall.SIGPIPE { | 		if s == unix.SIGPIPE { | ||||||
| 			if f, err := os.OpenFile("/dev/null", os.O_WRONLY, 0755); err == nil { | 			if f, err := os.OpenFile("/dev/null", os.O_WRONLY, 0755); err == nil { | ||||||
| 				syscall.Dup2(int(f.Fd()), 1) // nolint:errcheck
 | 				unix.Dup2(int(f.Fd()), 1) // nolint:errcheck
 | ||||||
| 				syscall.Dup2(int(f.Fd()), 2) // nolint:errcheck
 | 				unix.Dup2(int(f.Fd()), 2) // nolint:errcheck
 | ||||||
| 				f.Close() | 				f.Close() | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  | @ -191,7 +191,7 @@ func parent() error { | ||||||
| 	}() | 	}() | ||||||
| 
 | 
 | ||||||
| 	defer func() { | 	defer func() { | ||||||
| 		if err := syscall.Kill(cmd.Process.Pid, syscall.SIGTERM); err != nil { | 		if err := unix.Kill(cmd.Process.Pid, unix.SIGTERM); err != nil { | ||||||
| 			logrus.WithError(err).Warn("kill child process") | 			logrus.WithError(err).Warn("kill child process") | ||||||
| 		} | 		} | ||||||
| 	}() | 	}() | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue