...
Run Format

Source file src/os/proc.go

  // 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.
  
  // Process etc.
  
  package os
  
  import (
  	"runtime"
  	"syscall"
  )
  
  // Args hold the command-line arguments, starting with the program name.
  var Args []string
  
  func init() {
  	if runtime.GOOS == "windows" {
  		// Initialized in exec_windows.go.
  		return
  	}
  	Args = runtime_args()
  }
  
  func runtime_args() []string // in package runtime
  
  // Getuid returns the numeric user id of the caller.
  func Getuid() int { return syscall.Getuid() }
  
  // Geteuid returns the numeric effective user id of the caller.
  func Geteuid() int { return syscall.Geteuid() }
  
  // Getgid returns the numeric group id of the caller.
  func Getgid() int { return syscall.Getgid() }
  
  // Getegid returns the numeric effective group id of the caller.
  func Getegid() int { return syscall.Getegid() }
  
  // Getgroups returns a list of the numeric ids of groups that the caller belongs to.
  func Getgroups() ([]int, error) {
  	gids, e := syscall.Getgroups()
  	return gids, NewSyscallError("getgroups", e)
  }
  
  // Exit causes the current program to exit with the given status code.
  // Conventionally, code zero indicates success, non-zero an error.
  // The program terminates immediately; deferred functions are not run.
  func Exit(code int) {
  	if code == 0 {
  		// Give race detector a chance to fail the program.
  		// Racy programs do not have the right to finish successfully.
  		runtime_beforeExit()
  	}
  	syscall.Exit(code)
  }
  
  func runtime_beforeExit() // implemented in runtime
  

View as plain text