I do setgid the way I'm aware of. But user is still in 0 group after that:
uid=20020(fcgi) gid=20020(fcgi) groups=20020(fcgi),0(wheel)
of course it is not included in 0 group in /etc/groups
my( $uid, $gid ) = qw/20020 20020/;
setgid( $gid ); $) = $gid; $( = $gid; die "Set group ($gid): $!"
if ( $( != $gid ) or ( $) != $gid );
setuid( $uid ); $> = $uid; $< = $uid; die "Set user ($uid): $!"
if ( $< != $uid ) or ( $> != $uid );
There are definitely things I'm missing here. Is it possible to avoid any other group from to appear on getgroups() ?
Peter Vereshagin firstname.lastname@example.org http://vereshagin.org