Create a JS-based clock-check page to diagnose HS problems
The most common cause of ‘**I CAN"T REACH ANY HIDDEN SERVICES!!!!!!!!!!!!!!! **’ complaints seems to be that the user's clock is set incorrectly (see also #3460 (moved)).
These problems fall into three general categories:
- The time is off by over half an hour; the date and time zone are correct. This will stop being a problem soon, when #3460 (moved) is fixed.
- The time and date appear correct; the time zone is incorrect. This will also become generally harmless to HS connectivity soon.
- The time and time zone are correct; the date is incorrect. This can never be fixed in Tor with the current (v2) HS protocol.
Users often have a hard time figuring out that their clock is, in fact, wrong, even after we tell them that it is.
All of these problems could be diagnosed and fixed by a simple JavaScript-based clock test page. Unfortunately, the only way JavaScript can obtain a server's idea of the current time is to have the server send the current time as part of a response's content (JS cannot access the Date:
header), so this will require some server-side code too.