-
Notifications
You must be signed in to change notification settings - Fork 501
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Tor] Towards Whonix & Tails #12979
[Tor] Towards Whonix & Tails #12979
Conversation
2ecc6c3
to
95b8198
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested, LGTM.
If UseTor
is false and UseOnlyRunningTor
is used and set to true, should the wallet use an already running Tor?
This is a good point. I believe I can make sure that Thinking about it a bit more, I think we could modify code to support:
WDYT? |
It seems good to me. In such case if |
95b8198
to
e9f8302
Compare
@@ -524,6 +531,11 @@ internal virtual async Task<HttpResponseMessage> SendCoreAsync(TorTcpConnection | |||
/// </remarks> | |||
public void ReportStreamStatus(string streamUsername, StreamStatusFlag streamStatus, string circuitID) | |||
{ | |||
if (!TorControlAvailable) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yahiheb FYI, this was wrong it was if (TorControlAvailable)
so we could report exceptions when we shouldn't. That's probably what you reported over Slack.
I created an alternative PR #12991 for this where you can use:
The names are not that great as I would like to preserve backward compatibility ... |
Replaced with #12991 |
Contributes to #12848
This PR adds
--UseOnlyRunningTor
command line option and its purpose is to use only a pre-running Tor instance to which we can connect. The purpose is then:--UseOnlyRunningTor
does not rely on Tor control port2.How to test
On
master
branch, start WW, disable "terminate Tor on exit" in settings, start WW again and turn it off -> you should have a Tor process running on port 37150On the PR's branch, connect to TorSocksPort=37150 and set a made up port for TorControlPort to make sure it CANNOT be used.
dotnet build && dotnet run --framework net8.0 -- --TorSocksPort=37150 --TorControlPort=63999 --UseOnlyRunningTor=true
You should be able to do a coinjoin or just use your wallet normally without a hiccup.
Footnotes
That was a goal for a long time. ↩
It seems it works but the cost is that we do not use
TorMonitor
. ↩