# license that can be found in the LICENSE file.
# DO NOT EDIT. Automatically generated by gobuild.
-# gobuild -m dir_${GOARCH}_${GOOS}.go env.go error.go file.go proc_${GOOS}.go stat_${GOARCH}_${GOOS}.go time.go types.go exec.go >Makefile
+# gobuild -m dir_${GOARCH}_${GOOS}.go env.go error.go file.go proc_${GOOS}.go stat_${GOARCH}_${GOOS}.go time.go types.go exec.go user.go >Makefile
D=
env.$O\
stat_$(GOARCH)_$(GOOS).$O\
time.$O\
+ user.$O\
O3=\
file.$O\
rm -f $(O1)
a2: $(O2)
- $(AR) grc _obj$D/os.a env.$O stat_$(GOARCH)_$(GOOS).$O time.$O
+ $(AR) grc _obj$D/os.a env.$O stat_$(GOARCH)_$(GOOS).$O time.$O user.$O
rm -f $(O2)
a3: $(O3)
--- /dev/null
+// 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.
+
+// User ids etc.
+
+package os
+
+import (
+ "syscall";
+ "os";
+)
+
+// Getuid returns the numeric user id of the caller.
+func Getuid() (uid int, err Error) {
+ u, _, e := syscall.Syscall(syscall.SYS_GETUID, 0, 0, 0);
+ if e != 0 {
+ return -1, ErrnoToError(e)
+ }
+ return int(u), nil
+}
+
+// Geteuid returns the numeric effective user id of the caller.
+func Geteuid() (uid int, err Error) {
+ u, _, e := syscall.Syscall(syscall.SYS_GETEUID, 0, 0, 0);
+ if e != 0 {
+ return -1, ErrnoToError(e)
+ }
+ return int(u), nil
+}
+
+// Getgid returns the numeric group id of the caller.
+func Getgid() (uid int, err Error) {
+ g, _, e := syscall.Syscall(syscall.SYS_GETGID, 0, 0, 0);
+ if e != 0 {
+ return -1, ErrnoToError(e)
+ }
+ return int(g), nil
+}
+
+// Getegid returns the numeric effective group id of the caller.
+func Getegid() (uid int, err Error) {
+ g, _, e := syscall.Syscall(syscall.SYS_GETEGID, 0, 0, 0);
+ if e != 0 {
+ return -1, ErrnoToError(e)
+ }
+ return int(g), nil
+}
+