1 // Copyright 2009 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
14 // Args hold the command-line arguments, starting with the program name.
18 if runtime
.GOOS
== "windows" {
19 // Initialized in exec_windows.go.
25 func runtime_args() []string // in package runtime
27 // Getuid returns the numeric user id of the caller.
29 // On Windows, it returns -1.
30 func Getuid() int { return syscall
.Getuid() }
32 // Geteuid returns the numeric effective user id of the caller.
34 // On Windows, it returns -1.
35 func Geteuid() int { return syscall
.Geteuid() }
37 // Getgid returns the numeric group id of the caller.
39 // On Windows, it returns -1.
40 func Getgid() int { return syscall
.Getgid() }
42 // Getegid returns the numeric effective group id of the caller.
44 // On Windows, it returns -1.
45 func Getegid() int { return syscall
.Getegid() }
47 // Getgroups returns a list of the numeric ids of groups that the caller belongs to.
49 // On Windows, it returns syscall.EWINDOWS. See the os/user package
50 // for a possible alternative.
51 func Getgroups() ([]int, error
) {
52 gids
, e
:= syscall
.Getgroups()
53 return gids
, NewSyscallError("getgroups", e
)
56 // Exit causes the current program to exit with the given status code.
57 // Conventionally, code zero indicates success, non-zero an error.
58 // The program terminates immediately; deferred functions are not run.
61 // Give race detector a chance to fail the program.
62 // Racy programs do not have the right to finish successfully.
68 func runtime_beforeExit() // implemented in runtime