mirror of
https://github.com/containers/podman.git
synced 2025-06-21 17:38:12 +08:00
Merge pull request #2655 from giuseppe/tmp-user
rootless: use /tmp/libpod-rundir-$EUID for fallback
This commit is contained in:
@ -72,7 +72,7 @@ func GetRootlessUID() int {
|
|||||||
u, _ := strconv.Atoi(uidEnv)
|
u, _ := strconv.Atoi(uidEnv)
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
return os.Getuid()
|
return os.Geteuid()
|
||||||
}
|
}
|
||||||
|
|
||||||
func tryMappingTool(tool string, pid int, hostID int, mappings []idtools.IDMap) error {
|
func tryMappingTool(tool string, pid int, hostID int, mappings []idtools.IDMap) error {
|
||||||
|
@ -190,15 +190,15 @@ func GetRootlessRuntimeDir() (string, error) {
|
|||||||
tmpDir := filepath.Join("/run", "user", uid)
|
tmpDir := filepath.Join("/run", "user", uid)
|
||||||
os.MkdirAll(tmpDir, 0700)
|
os.MkdirAll(tmpDir, 0700)
|
||||||
st, err := os.Stat(tmpDir)
|
st, err := os.Stat(tmpDir)
|
||||||
if err == nil && int(st.Sys().(*syscall.Stat_t).Uid) == os.Getuid() && st.Mode().Perm() == 0700 {
|
if err == nil && int(st.Sys().(*syscall.Stat_t).Uid) == os.Geteuid() && st.Mode().Perm() == 0700 {
|
||||||
runtimeDir = tmpDir
|
runtimeDir = tmpDir
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if runtimeDir == "" {
|
if runtimeDir == "" {
|
||||||
tmpDir := filepath.Join(os.TempDir(), "user", uid)
|
tmpDir := filepath.Join(os.TempDir(), fmt.Sprintf("libpod-rundir-%s", uid))
|
||||||
os.MkdirAll(tmpDir, 0700)
|
os.MkdirAll(tmpDir, 0700)
|
||||||
st, err := os.Stat(tmpDir)
|
st, err := os.Stat(tmpDir)
|
||||||
if err == nil && int(st.Sys().(*syscall.Stat_t).Uid) == os.Getuid() && st.Mode().Perm() == 0700 {
|
if err == nil && int(st.Sys().(*syscall.Stat_t).Uid) == os.Geteuid() && st.Mode().Perm() == 0700 {
|
||||||
runtimeDir = tmpDir
|
runtimeDir = tmpDir
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user