diff defaults/hg-wrapper.c @ 8:7b9d471fc1d3

create C wrapper and move bashrc to profile.
author Robert McIntyre <rlm@mit.edu>
date Tue, 08 Jan 2013 18:13:48 +0000
parents defaults/suid-wrapper.c@ab4011ea1463
children
line wrap: on
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/defaults/hg-wrapper.c	Tue Jan 08 18:13:48 2013 +0000
     1.3 @@ -0,0 +1,12 @@
     1.4 +#include <unistd.h>
     1.5 +#include <errno.h>
     1.6 +
     1.7 +main( int argc, char ** argv, char ** envp )
     1.8 +{
     1.9 +              if( setgid(getegid()) ) perror( "setgid" );
    1.10 +              if( setuid(geteuid()) ) perror( "setuid" );
    1.11 +              envp = 0; /* blocks IFS attack on non-bash shells */
    1.12 +              system( "/usr/bin/hg", argv, envp );
    1.13 +              perror( argv[0] );
    1.14 +              return errno;
    1.15 +}