/* Set UID to user */ setuid( new_uid ); _user = custom_command( command_whoami ); printf("User after setuid(%d): %s\n", new_uid,_user); /* Now run the actual ".cgi" file */ strcpy( _HOME, "HOME=/home/e-smith/files/users/" ); strcat( _HOME, username ); strcpy( _LOGNAME, "LOGNAME=" ); strcat( _LOGNAME, username ); int ret; char *cmd[] = { script_name, username, (char *)0 }; char *env[] = { _HOME, _LOGNAME, "SHELL=/bin/bash", "SSH_TTY=/dev/pts/1", (char *)0 }; ret = execve (script_name, cmd, env); return(0); }