mirror of
https://github.com/containers/podman.git
synced 2025-11-30 18:18:18 +08:00
update buildah to latest and use new network stack
Make sure buildah uses the new network stack. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
This commit is contained in:
44
vendor/github.com/containers/buildah/chroot/run.go
generated
vendored
44
vendor/github.com/containers/buildah/chroot/run.go
generated
vendored
@@ -238,7 +238,7 @@ func runUsingChrootMain() {
|
||||
// Set the kernel's lock to "unlocked".
|
||||
locked := 0
|
||||
if result, _, err := unix.Syscall(unix.SYS_IOCTL, uintptr(ptyMasterFd), unix.TIOCSPTLCK, uintptr(unsafe.Pointer(&locked))); int(result) == -1 {
|
||||
logrus.Errorf("error locking PTY descriptor: %v", err)
|
||||
logrus.Errorf("error unlocking PTY descriptor: %v", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
// Get a handle for the other end.
|
||||
@@ -1191,21 +1191,33 @@ func setupChrootBindMounts(spec *specs.Spec, bundlePath string) (undoBinds func(
|
||||
}
|
||||
requestFlags := bindFlags
|
||||
expectedFlags := uintptr(0)
|
||||
if util.StringInSlice("nodev", m.Options) {
|
||||
requestFlags |= unix.MS_NODEV
|
||||
expectedFlags |= unix.ST_NODEV
|
||||
}
|
||||
if util.StringInSlice("noexec", m.Options) {
|
||||
requestFlags |= unix.MS_NOEXEC
|
||||
expectedFlags |= unix.ST_NOEXEC
|
||||
}
|
||||
if util.StringInSlice("nosuid", m.Options) {
|
||||
requestFlags |= unix.MS_NOSUID
|
||||
expectedFlags |= unix.ST_NOSUID
|
||||
}
|
||||
if util.StringInSlice("ro", m.Options) {
|
||||
requestFlags |= unix.MS_RDONLY
|
||||
expectedFlags |= unix.ST_RDONLY
|
||||
for _, option := range m.Options {
|
||||
switch option {
|
||||
case "nodev":
|
||||
requestFlags |= unix.MS_NODEV
|
||||
expectedFlags |= unix.ST_NODEV
|
||||
case "dev":
|
||||
requestFlags &= ^uintptr(unix.MS_NODEV)
|
||||
expectedFlags &= ^uintptr(unix.ST_NODEV)
|
||||
case "noexec":
|
||||
requestFlags |= unix.MS_NOEXEC
|
||||
expectedFlags |= unix.ST_NOEXEC
|
||||
case "exec":
|
||||
requestFlags &= ^uintptr(unix.MS_NOEXEC)
|
||||
expectedFlags &= ^uintptr(unix.ST_NOEXEC)
|
||||
case "nosuid":
|
||||
requestFlags |= unix.MS_NOSUID
|
||||
expectedFlags |= unix.ST_NOSUID
|
||||
case "suid":
|
||||
requestFlags &= ^uintptr(unix.MS_NOSUID)
|
||||
expectedFlags &= ^uintptr(unix.ST_NOSUID)
|
||||
case "ro":
|
||||
requestFlags |= unix.MS_RDONLY
|
||||
expectedFlags |= unix.ST_RDONLY
|
||||
case "rw":
|
||||
requestFlags &= ^uintptr(unix.MS_RDONLY)
|
||||
expectedFlags &= ^uintptr(unix.ST_RDONLY)
|
||||
}
|
||||
}
|
||||
switch m.Type {
|
||||
case "bind":
|
||||
|
||||
27
vendor/github.com/containers/buildah/chroot/seccomp.go
generated
vendored
27
vendor/github.com/containers/buildah/chroot/seccomp.go
generated
vendored
@@ -3,6 +3,9 @@
|
||||
package chroot
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
|
||||
"github.com/containers/common/pkg/seccomp"
|
||||
specs "github.com/opencontainers/runtime-spec/specs-go"
|
||||
"github.com/pkg/errors"
|
||||
libseccomp "github.com/seccomp/libseccomp-golang"
|
||||
@@ -171,3 +174,27 @@ func setSeccomp(spec *specs.Spec) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func setupSeccomp(spec *specs.Spec, seccompProfilePath string) error {
|
||||
switch seccompProfilePath {
|
||||
case "unconfined":
|
||||
spec.Linux.Seccomp = nil
|
||||
case "":
|
||||
seccompConfig, err := seccomp.GetDefaultProfile(spec)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "loading default seccomp profile failed")
|
||||
}
|
||||
spec.Linux.Seccomp = seccompConfig
|
||||
default:
|
||||
seccompProfile, err := ioutil.ReadFile(seccompProfilePath)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "opening seccomp profile (%s) failed", seccompProfilePath)
|
||||
}
|
||||
seccompConfig, err := seccomp.LoadProfile(string(seccompProfile), spec)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "loading seccomp profile (%s) failed", seccompProfilePath)
|
||||
}
|
||||
spec.Linux.Seccomp = seccompConfig
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
8
vendor/github.com/containers/buildah/chroot/seccomp_unsupported.go
generated
vendored
8
vendor/github.com/containers/buildah/chroot/seccomp_unsupported.go
generated
vendored
@@ -13,3 +13,11 @@ func setSeccomp(spec *specs.Spec) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func setupSeccomp(spec *specs.Spec, seccompProfilePath string) error {
|
||||
if spec.Linux != nil {
|
||||
// runtime-tools may have supplied us with a default filter
|
||||
spec.Linux.Seccomp = nil
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user