Getgroups max on Linux is bigger than I thought.

R=iant
DELTA=3  (2 added, 0 deleted, 1 changed)
OCL=28994
CL=29003
This commit is contained in:
Russ Cox 2009-05-18 14:56:25 -07:00
parent be869ba4d6
commit 69f55d1487

View File

@ -44,7 +44,9 @@ func Getgroups() ([]int, os.Error) {
return nil, ErrnoToError(err); return nil, ErrnoToError(err);
} }
if r1 < 0 || r1 > 1024 { // the current max is 16; 1024 is a future-proof sanity check // Sanity check group count.
// On Linux, max is 1<<16; on BSD, OS X, max is 16.
if r1 < 0 || r1 > 1<<20 {
return nil, EINVAL; return nil, EINVAL;
} }
a := make([]int, r1); a := make([]int, r1);