log_fn(LOG_WARN,"Advertised intro point '%s' is not known. Closing.", exitname);
return -1;
}
+ /* XXX if we failed, then refetch the descriptor */
log_fn(LOG_INFO,"Chose %s as intro point for %s.", exitname, conn->rend_query);
}
}
address[address_len] = 0; /* null terminate it */
+ /* XXX isn't this non-aligned uint32 going to cause problems? */
switch (tor_lookup_hostname(address, (uint32_t*)answer+1)) {
case 1:
log_fn(LOG_INFO,"Could not resolve dest addr %s (transient).",address);
case -1:
log_fn(LOG_INFO,"Could not resolve dest addr %s (permanent).",address);
answer[0] = DNS_RESOLVE_FAILED_PERMANENT;
+ break;
case 0:
log_fn(LOG_INFO,"Resolved address '%s'.",address);
answer[0] = DNS_RESOLVE_SUCCEEDED;
+ break;
}
if(write_all(fd, answer, 5, 1) != 5) {
log_fn(LOG_ERR,"writing answer failed. Child exiting.");