package system
import "github.com/docker/docker/pkg/system"
Index ¶
- Constants
- Variables
- func CheckSystemDriveAndRemoveDriveLetter(path string) (string, error)
- func Chtimes(name string, atime time.Time, mtime time.Time) error
- func CommandLineToArgv(commandLine string) ([]string, error)
- func CreateEvent(eventAttributes *syscall.SecurityAttributes, manualReset bool, initialState bool, name string) (handle syscall.Handle, err error)
- func GetExitCode(err error) (int, error)
- func HasWin32KSupport() bool
- func IsAbs(path string) bool
- func IsWindowsClient() bool
- func LUtimesNano(path string, ts []syscall.Timespec) error
- func Lgetxattr(path string, attr string) ([]byte, error)
- func Lsetxattr(path string, attr string, data []byte, flags int) error
- func Mkdev(major int64, minor int64) uint32
- func MkdirAll(path string, _ os.FileMode) error
- func MkdirAllWithACL(path string, perm os.FileMode) error
- func Mknod(path string, mode uint32, dev int) error
- func OpenEvent(desiredAccess uint32, inheritHandle bool, name string) (handle syscall.Handle, err error)
- func ProcessExitCode(err error) (exitCode int)
- func PulseEvent(handle syscall.Handle) (err error)
- func ResetEvent(handle syscall.Handle) (err error)
- func SetEvent(handle syscall.Handle) (err error)
- func Umask(newmask int) (oldmask int, err error)
- func Unmount(dest string) error
- type MemInfo
- type OSVersion
- type StatT
Constants ¶
const DefaultPathEnv = ""
DefaultPathEnv is deliberately empty on Windows as the default path will be set by the container. Docker has no context of what the default path should be.
Variables ¶
var ( // ErrNotSupportedPlatform means the platform is not supported. ErrNotSupportedPlatform = errors.New("platform and architecture is not supported") )
Functions ¶
func CheckSystemDriveAndRemoveDriveLetter ¶
CheckSystemDriveAndRemoveDriveLetter verifies and manipulates a Windows path. This is used, for example, when validating a user provided path in docker cp. If a drive letter is supplied, it must be the system drive. The drive letter is always removed. Also, it translates it to OS semantics (IOW / to \). We need the path in this syntax so that it can ultimately be contatenated with a Windows long-path which doesn't support drive-letters. Examples: C: --> Fail C:\ --> \ a --> a /a --> \a d:\ --> Fail
func Chtimes ¶
Chtimes changes the access time and modified time of a file at the given path
func CommandLineToArgv ¶
CommandLineToArgv wraps the Windows syscall to turn a commandline into an argument array.
func CreateEvent ¶
func CreateEvent(eventAttributes *syscall.SecurityAttributes, manualReset bool, initialState bool, name string) (handle syscall.Handle, err error)
CreateEvent implements win32 CreateEventW func in golang. It will create an event object.
func GetExitCode ¶
GetExitCode returns the ExitStatus of the specified error if its type is exec.ExitError, returns 0 and an error otherwise.
func HasWin32KSupport ¶
func HasWin32KSupport() bool
HasWin32KSupport determines whether containers that depend on win32k can run on this machine. Win32k is the driver used to implement windowing.
func IsAbs ¶
IsAbs is a platform-specific wrapper for filepath.IsAbs. On Windows, golang filepath.IsAbs does not consider a path \windows\system32 as absolute as it doesn't start with a drive-letter/colon combination. However, in docker we need to verify things such as WORKDIR /windows/system32 in a Dockerfile (which gets translated to \windows\system32 when being processed by the daemon. This SHOULD be treated as absolute from a docker processing perspective.
func IsWindowsClient ¶
func IsWindowsClient() bool
IsWindowsClient returns true if the SKU is client @engine maintainers - this function should not be removed or modified as it is used to enforce licensing restrictions on Windows.
func LUtimesNano ¶
LUtimesNano is only supported on linux and freebsd.
func Lgetxattr ¶
Lgetxattr is not supported on platforms other than linux.
func Lsetxattr ¶
Lsetxattr is not supported on platforms other than linux.
func Mkdev ¶
Mkdev is not implemented on Windows.
func MkdirAll ¶
MkdirAll implementation that is volume path aware for Windows.
func MkdirAllWithACL ¶
MkdirAllWithACL is a wrapper for MkdirAll that creates a directory ACL'd for Builtin Administrators and Local System.
func Mknod ¶
Mknod is not implemented on Windows.
func OpenEvent ¶
func OpenEvent(desiredAccess uint32, inheritHandle bool, name string) (handle syscall.Handle, err error)
OpenEvent implements win32 OpenEventW func in golang. It opens an event object.
func ProcessExitCode ¶
ProcessExitCode process the specified error and returns the exit status code if the error was of type exec.ExitError, returns nothing otherwise.
func PulseEvent ¶
PulseEvent implements win32 PulseEvent func in golang.
func ResetEvent ¶
ResetEvent implements win32 ResetEvent func in golang.
func SetEvent ¶
SetEvent implements win32 SetEvent func in golang.
func Umask ¶
Umask is not supported on the windows platform.
func Unmount ¶
Unmount is a platform-specific helper function to call the unmount syscall. Not supported on Windows
Types ¶
type MemInfo ¶
type MemInfo struct { // Total usable RAM (i.e. physical RAM minus a few reserved bits and the // kernel binary code). MemTotal int64 // Amount of free memory. MemFree int64 // Total amount of swap space available. SwapTotal int64 // Amount of swap space that is currently unused. SwapFree int64 }
MemInfo contains memory statistics of the host system.
func ReadMemInfo ¶
ReadMemInfo retrieves memory statistics of the host system and returns a
MemInfo type.
type OSVersion ¶
OSVersion is a wrapper for Windows version information https://msdn.microsoft.com/en-us/library/windows/desktop/ms724439(v=vs.85).aspx
func GetOSVersion ¶
func GetOSVersion() OSVersion
GetOSVersion gets the operating system version on Windows. Note that docker.exe must be manifested to get the correct version information.
type StatT ¶
type StatT struct {
// contains filtered or unexported fields
}
StatT type contains status of a file. It contains metadata like name, permission, size, etc about a file.
func Lstat ¶
Lstat calls os.Lstat to get a fileinfo interface back. This is then copied into our own locally defined structure. Note the Linux version uses fromStatT to do the copy back, but that not strictly necessary when already in an OS specific module.
func (StatT) IsDir ¶
IsDir returns whether file is actually a directory.
func (StatT) ModTime ¶
ModTime returns file's last modification time.
func (StatT) Mode ¶
Mode returns file's permission mode.
func (StatT) Name ¶
Name returns file's name.
func (StatT) Size ¶
Size returns file's size.
Source Files ¶
chtimes.go chtimes_windows.go errors.go events_windows.go exitcode.go filesys_windows.go lstat_windows.go meminfo.go meminfo_windows.go mknod_windows.go path_windows.go stat_windows.go syscall_windows.go umask_windows.go utimes_unsupported.go xattrs_unsupported.go
- Version
- v1.13.0-rc1
- Published
- Nov 11, 2016
- Platform
- windows/amd64
- Imports
- 12 packages
- Last checked
- 57 seconds ago –
Tools for package owners.