blob: f242b5a3cc97a10104fb2ef44422f4666b73e094 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
--- a/src/os/user/lookup_unix.go
+++ b/src/os/user/lookup_unix.go
@@ -57,6 +57,12 @@
bufSize = 1024
} else {
bufSize = C.sysconf(C._SC_GETPW_R_SIZE_MAX)
+ // The musl alternative standard library on Linux
+ // return -1 as specified by POSIX if there are no
+ // hard limit on _SC_GETPW_R_SIZE_MAX.
+ if bufSize == -1 {
+ bufSize = 1024
+ }
if bufSize <= 0 || bufSize > 1<<20 {
return nil, fmt.Errorf("user: unreasonable _SC_GETPW_R_SIZE_MAX of %d", bufSize)
}
|