mirror of
https://github.com/containers/podman.git
synced 2026-03-20 15:42:20 -04:00
Manage the case where the main process of the container creates and joins a new user namespace. In this case we want to join only the first child in the new hierarchy, which is the user namespace that was used to create the container. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com> Closes: #1331 Approved by: rhatdan
40 lines
971 B
Go
40 lines
971 B
Go
// +build !linux
|
|
|
|
package rootless
|
|
|
|
import (
|
|
"os"
|
|
|
|
"github.com/pkg/errors"
|
|
)
|
|
|
|
// IsRootless returns false on all non-linux platforms
|
|
func IsRootless() bool {
|
|
return false
|
|
}
|
|
|
|
// BecomeRootInUserNS is a stub function that always returns false and an
|
|
// error on unsupported OS's
|
|
func BecomeRootInUserNS() (bool, int, error) {
|
|
return false, -1, errors.New("this function is not supported on this os")
|
|
}
|
|
|
|
// GetRootlessUID returns the UID of the user in the parent userNS
|
|
func GetRootlessUID() int {
|
|
return -1
|
|
}
|
|
|
|
// SetSkipStorageSetup tells the runtime to not setup containers/storage
|
|
func SetSkipStorageSetup(bool) {
|
|
}
|
|
|
|
// SkipStorageSetup tells if we should skip the containers/storage setup
|
|
func SkipStorageSetup() bool {
|
|
return false
|
|
}
|
|
|
|
// GetUserNSForPid returns an open FD for the first direct child user namespace that created the process
|
|
func GetUserNSForPid(pid uint) (*os.File, error) {
|
|
return nil, errors.New("this function is not supported on this os")
|
|
}
|