if (s && (c->clients == 0 || evaluate_access(ip, c->clients) == APPLY))
if (n != -1 && (c->clients == 0 || evaluate_access(ip, c->clients) == APPLY))
struct control *faketoreal(char *x, char *y, struct request *r, int update){	unsigned long ip;	struct control *c;	int n;	if (r->vs == 0) {		log_d("virtualhost not initialized!");		return 0;	}	ip = r->cn->peer.sin_addr.s_addr;	n = -1;	c = r->vs->controls;	while (c) {		if (c->locations && c->alias) {			n = c->exact_match ? exactmatch(x, c->alias) : dirmatch(x, c->alias);			if (s && (c->clients == 0 || evaluate_access(ip, c->clients) == APPLY))				break;		}		c = c->next;	}	if (c) {		if (update)			c->locations = c->locations->next;		strcpy(y, c->locations->name);		if (c->locations->name[0] == '/' || !c->path_args_ok)			strcat(y, x + n);	}	return c;}