connection_dir_client_request_failed() not handling HS purposes
When a directory connection didn't finish or maybe timed out,
connection_dir_request_failed() is called so we can take appropriate actions depending on the directory purpose.
We do NOT handle any HS purposes which can lead, client side, to having a SOCKS request stuck in
RENDDESC_WAIT state if for instance we couldn't query more HSDir after that.
Another problem with this is for the upload descriptor. We usually launch 6 upload to 6 HSDir but if one never finished, this function is called and the HS service subsystem is never notified thus it thinks it was able to upload to all HSDir where in reality one or more are missing. We probably want a callback so we can tell the service to retry on that HSDir or give up on it?