Setgid example Compile a program like the following main() { int fd; /* get access to privileged resource */ fd = open( "/etc/shadow", O_RDONLY ); /* become invoking user again */ if ( setgid( getgid() ) < 0 ) { printf(stderr, "Can't get back to original gid - bailing out!\n"); exit(1); } /* do something with fd now */ }