From Suse glibc-2.8.90-12.3 glibc-getgroups-fortify.diff diff -Naur glibc-2.8-20080929.orig/posix/bits/unistd.h glibc-2.8-20080929/posix/bits/unistd.h --- glibc-2.8-20080929.orig/posix/bits/unistd.h 2007-09-26 20:44:55.000000000 +0000 +++ glibc-2.8-20080929/posix/bits/unistd.h 2008-10-17 20:25:45.000000000 +0000 @@ -270,7 +270,8 @@ if (!__builtin_constant_p (__size)) return __getgroups_chk (__size, __list, __bos (__list)); - if (__size * sizeof (__gid_t) > __bos (__list)) + if (__size > 0 + && __size * sizeof (__gid_t) > __bos (__list)) return __getgroups_chk_warn (__size, __list, __bos (__list)); } return __getgroups_alias (__size, __list);