cached consensus inteferes with DisableNetwork=1
When testing with a TBB 3.6b1 build on Mac OS 10.8.5, I noticed that sometimes tor tries to open a network connection even though it was started with DisableNetwork=1 (and bootstrapping proceeds but fails with a NOROUTE error).
I can also reproduce this problem with TBB 3.5.2.1 (although the error message that is displayed by Tor Launcher is less detailed).
Here is a log snippet from TBB 3.6b1 (tor 0.2.4.21):
... [notice] Bootstrapped 5%: Connecting to directory server.
... [warn] connection_connect(): Bug: Tried to open a socket with DisableNetwork set.
... [warn] Problem bootstrapping. Stuck at 5%: Connecting to directory server. (Network is unreachable; NOROUTE; count 1; recommendation warn)
... [notice] We now have enough directory information to build circuits.
... [notice] Bootstrapped 80%: Connecting to the Tor network.
... [notice] New control connection opened.
... [warn] Problem bootstrapping. Stuck at 80%: Connecting to the Tor network. (Network is unreachable; NOROUTE; count 2; recommendation warn)
... [notice] DisableNetwork is set. Tor will not make or accept non-control network connections. Shutting down all existing connections.
This occurs when there is a cached-microdesc-consensus file (so not the first time I start the Tor Browser).
Here are some steps to reproduce:
-
Grab a build from here: https://people.torproject.org/~mikeperry/builds/3.6-beta-1/
-
Start Tor Browser and click "Connect" when the wizard opens. Let it connect.
-
Exit the browser and delete the file Data/Browser/profile.default/prefs.js.
-
Start Tor Browser a second time. You will see an error "Connecting to the Tor network failed (no route to host)."