mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge pull request #40945 from thaJeztah/fix_selinux_enotsup
SELinux: fix ENOTSUP errors not being detected when relabeling
This commit is contained in:
commit
a93e9eb0e9
2 changed files with 2 additions and 3 deletions
|
@ -20,7 +20,6 @@ import (
|
||||||
"github.com/opencontainers/selinux/go-selinux/label"
|
"github.com/opencontainers/selinux/go-selinux/label"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"golang.org/x/sys/unix"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -147,7 +146,7 @@ func (container *Container) CopyImagePathContent(v volume.Volume, destination st
|
||||||
logrus.Warnf("error while unmounting volume %s: %v", v.Name(), err)
|
logrus.Warnf("error while unmounting volume %s: %v", v.Name(), err)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
if err := label.Relabel(path, container.MountLabel, true); err != nil && err != unix.ENOTSUP {
|
if err := label.Relabel(path, container.MountLabel, true); err != nil && !errors.Is(err, syscall.ENOTSUP) {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return copyExistingContents(rootfs, path)
|
return copyExistingContents(rootfs, path)
|
||||||
|
|
|
@ -113,7 +113,7 @@ func (m *MountPoint) Setup(mountLabel string, rootIDs idtools.Identity, checkFun
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
err = label.Relabel(sourcePath, mountLabel, label.IsShared(m.Mode))
|
err = label.Relabel(sourcePath, mountLabel, label.IsShared(m.Mode))
|
||||||
if err == syscall.ENOTSUP {
|
if errors.Is(err, syscall.ENOTSUP) {
|
||||||
err = nil
|
err = nil
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in a new issue