vendor: update google/cadvisor and opencontainers/runc
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
16
vendor/github.com/mrunalp/fileutils/fileutils.go
generated
vendored
16
vendor/github.com/mrunalp/fileutils/fileutils.go
generated
vendored
@@ -22,9 +22,10 @@ func CopyFile(source string, dest string) error {
|
||||
|
||||
uid := int(st.Uid)
|
||||
gid := int(st.Gid)
|
||||
modeType := si.Mode()&os.ModeType
|
||||
|
||||
// Handle symlinks
|
||||
if si.Mode()&os.ModeSymlink != 0 {
|
||||
if modeType == os.ModeSymlink {
|
||||
target, err := os.Readlink(source)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -35,15 +36,14 @@ func CopyFile(source string, dest string) error {
|
||||
}
|
||||
|
||||
// Handle device files
|
||||
if st.Mode&syscall.S_IFMT == syscall.S_IFBLK || st.Mode&syscall.S_IFMT == syscall.S_IFCHR {
|
||||
if modeType == os.ModeDevice {
|
||||
devMajor := int64(major(uint64(st.Rdev)))
|
||||
devMinor := int64(minor(uint64(st.Rdev)))
|
||||
mode := uint32(si.Mode() & 07777)
|
||||
if st.Mode&syscall.S_IFMT == syscall.S_IFBLK {
|
||||
mode |= syscall.S_IFBLK
|
||||
}
|
||||
if st.Mode&syscall.S_IFMT == syscall.S_IFCHR {
|
||||
mode := uint32(si.Mode() & os.ModePerm)
|
||||
if si.Mode()&os.ModeCharDevice != 0 {
|
||||
mode |= syscall.S_IFCHR
|
||||
} else {
|
||||
mode |= syscall.S_IFBLK
|
||||
}
|
||||
if err := syscall.Mknod(dest, mode, int(mkdev(devMajor, devMinor))); err != nil {
|
||||
return err
|
||||
@@ -76,7 +76,7 @@ func CopyFile(source string, dest string) error {
|
||||
}
|
||||
|
||||
// Chmod the file
|
||||
if !(si.Mode()&os.ModeSymlink == os.ModeSymlink) {
|
||||
if !(modeType == os.ModeSymlink) {
|
||||
if err := os.Chmod(dest, si.Mode()); err != nil {
|
||||
return err
|
||||
}
|
||||
|
9
vendor/github.com/mrunalp/fileutils/idtools.go
generated
vendored
9
vendor/github.com/mrunalp/fileutils/idtools.go
generated
vendored
@@ -3,6 +3,7 @@ package fileutils
|
||||
import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
"syscall"
|
||||
)
|
||||
|
||||
// MkdirAllNewAs creates a directory (include any along the path) and then modifies
|
||||
@@ -14,9 +15,13 @@ func MkdirAllNewAs(path string, mode os.FileMode, ownerUID, ownerGID int) error
|
||||
// so that we can chown all of them properly at the end. If chownExisting is false, we won't
|
||||
// chown the full directory path if it exists
|
||||
var paths []string
|
||||
if _, err := os.Stat(path); err != nil && os.IsNotExist(err) {
|
||||
st, err := os.Stat(path)
|
||||
if err != nil && os.IsNotExist(err) {
|
||||
paths = []string{path}
|
||||
} else if err == nil {
|
||||
if !st.IsDir() {
|
||||
return &os.PathError{Op: "mkdir", Path: path, Err: syscall.ENOTDIR}
|
||||
}
|
||||
// nothing to do; directory path fully exists already
|
||||
return nil
|
||||
}
|
||||
@@ -34,7 +39,7 @@ func MkdirAllNewAs(path string, mode os.FileMode, ownerUID, ownerGID int) error
|
||||
}
|
||||
}
|
||||
|
||||
if err := os.MkdirAll(path, mode); err != nil && !os.IsExist(err) {
|
||||
if err := os.MkdirAll(path, mode); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user