os/user: use _posix_* libc functions
libc getpwnam_r function has a different signature, we must use
_posix_getpwnam_r instead (by default, the pwd.h system include
file defines getpwnam_r as a static function calling
_posix_getpwnam_r, so a C program calling getpwnam_r will indeed
reference the _posix_getpwnam_r symbol).
Idem for getpwuid_r, getgrnam_r and getgrgid_r.
Issue golang/go#19200
Change-Id: Ib33b3215949a280e2f67bd0f5ba5b4e8a3a559b8
Reviewed-on: https://go-review.googlesource.com/41334
Reviewed-by: Ian Lance Taylor <iant@golang.org>
diff --git a/libgo/go/os/user/decls_aix.go b/libgo/go/os/user/decls_aix.go
index dc10dfd..64455b5 100644
--- a/libgo/go/os/user/decls_aix.go
+++ b/libgo/go/os/user/decls_aix.go
@@ -8,16 +8,16 @@
// Declarations for the libc functions on AIX.
-//extern getpwnam_r
+//extern _posix_getpwnam_r
func libc_getpwnam_r(name *byte, pwd *syscall.Passwd, buf *byte, buflen syscall.Size_t, result **syscall.Passwd) int
-//extern getpwuid_r
+//extern _posix_getpwuid_r
func libc_getpwuid_r(uid syscall.Uid_t, pwd *syscall.Passwd, buf *byte, buflen syscall.Size_t, result **syscall.Passwd) int
-//extern getgrnam_r
+//extern _posix_getgrnam_r
func libc_getgrnam_r(name *byte, grp *syscall.Group, buf *byte, buflen syscall.Size_t, result **syscall.Group) int
-//extern getgrgid_r
+//extern _posix_getgrgid_r
func libc_getgrgid_r(gid syscall.Gid_t, grp *syscall.Group, buf *byte, buflen syscall.Size_t, result **syscall.Group) int
//extern getgrset