int rv;  rv = setuid(0); if (debug) log_d("exec_cgi: setuid(0) = %d", rv); if (rv != -1) {
if (setuid(0) != -1) {
static int exec_cgi(struct request *r){	int rv;	rv = setuid(0);	if (debug)		log_d("exec_cgi: setuid(0) = %d", rv);	if (rv != -1) {		if (r->c->script_user) {			if (become_user(r->c->script_user) == -1)				return cgi_error(r, 403);		} else if (r->c->run_scripts_as_owner) {			if (set_uids(r->finfo.st_uid, r->finfo.st_gid) == -1)				return cgi_error(r, 403);		} else {			log_d("cannot run scripts withouth changing identity");			return cgi_error(r, 403);		}	}	if (init_cgi_env(r) == -1)		return cgi_error(r, 500);	log_d("executing %s", cgi_argv[0]);	if (execve(cgi_argv[0], (char **) cgi_argv, cgi_envp) == -1) {		log_d("could not execute %s", cgi_argv[0]);		lerror("execve");		return cgi_error(r, 500);	}	return 0;}