aboutsummaryrefslogtreecommitdiffstats
path: root/community/go-bootstrap/default-sc-getpw-r-size-max.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/go-bootstrap/default-sc-getpw-r-size-max.patch')
-rw-r--r--community/go-bootstrap/default-sc-getpw-r-size-max.patch15
1 files changed, 15 insertions, 0 deletions
diff --git a/community/go-bootstrap/default-sc-getpw-r-size-max.patch b/community/go-bootstrap/default-sc-getpw-r-size-max.patch
new file mode 100644
index 0000000000..f242b5a3cc
--- /dev/null
+++ b/community/go-bootstrap/default-sc-getpw-r-size-max.patch
@@ -0,0 +1,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)
+ }