Source File
syscall.go
Belonging Package
syscall
// Copyright 2009 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.// Package syscall contains an interface to the low-level operating system// primitives. The details vary depending on the underlying system, and// by default, godoc will display the syscall documentation for the current// system. If you want godoc to display syscall documentation for another// system, set $GOOS and $GOARCH to the desired system. For example, if// you want to view documentation for freebsd/arm on linux/amd64, set $GOOS// to freebsd and $GOARCH to arm.// The primary use of syscall is inside other packages that provide a more// portable interface to the system, such as "os", "time" and "net". Use// those packages rather than this one if you can.// For details of the functions and data types in this package consult// the manuals for the appropriate operating system.// These calls return err == nil to indicate success; otherwise// err is an operating system error describing the failure.// On most systems, that error has type syscall.Errno.//// Deprecated: this package is locked down. Callers should use the// corresponding package in the golang.org/x/sys repository instead.// That is also where updates required by new systems or versions// should be applied. See https://golang.org/s/go1.4-syscall for more// information.//package syscall//go:generate go run ./mksyscall_windows.go -systemdll -output zsyscall_windows.go syscall_windows.go security_windows.go// StringByteSlice converts a string to a NUL-terminated []byte,// If s contains a NUL byte this function panics instead of// returning an error.//// Deprecated: Use ByteSliceFromString instead.func ( string) []byte {, := ByteSliceFromString()if != nil {panic("syscall: string with NUL passed to StringByteSlice")}return}// ByteSliceFromString returns a NUL-terminated slice of bytes// containing the text of s. If s contains a NUL byte at any// location, it returns (nil, EINVAL).func ( string) ([]byte, error) {for := 0; < len(); ++ {if [] == 0 {return nil, EINVAL}}:= make([]byte, len()+1)copy(, )return , nil}// StringBytePtr returns a pointer to a NUL-terminated array of bytes.// If s contains a NUL byte this function panics instead of returning// an error.//// Deprecated: Use BytePtrFromString instead.func ( string) *byte { return &StringByteSlice()[0] }// BytePtrFromString returns a pointer to a NUL-terminated array of// bytes containing the text of s. If s contains a NUL byte at any// location, it returns (nil, EINVAL).func ( string) (*byte, error) {, := ByteSliceFromString()if != nil {return nil,}return &[0], nil}// Single-word zero for use when we need a valid pointer to 0 bytes.// See mksyscall.pl.var _zero uintptr// Unix returns the time stored in ts as seconds plus nanoseconds.func ( *Timespec) () ( int64, int64) {return int64(.Sec), int64(.Nsec)}// Unix returns the time stored in tv as seconds plus nanoseconds.func ( *Timeval) () ( int64, int64) {return int64(.Sec), int64(.Usec) * 1000}// Nano returns the time stored in ts as nanoseconds.func ( *Timespec) () int64 {return int64(.Sec)*1e9 + int64(.Nsec)}// Nano returns the time stored in tv as nanoseconds.func ( *Timeval) () int64 {return int64(.Sec)*1e9 + int64(.Usec)*1000}// Getpagesize and Exit are provided by the runtime.func () intfunc ( int)