mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 10:49:06 +01:00
Patched tor and jtorctl for improved hidden service performance.
Two changes have been made to Tor: 1. Set can_complete_circuit to false when the network is disabled, and don't try to build introduction circuits while can_complete_circuit is false. This avoids a situation where Tor tries to build introduction circuits as soon as the network is re-enabled, all the circuits fail, and then Tor waits 5 minutes before trying to build more. 2. Added a FORGETHS command to the control protocol which clears any cached client state relating to a specified hidden service. This can be used to flush state that's likely to be stale before trying to connect to a hidden service with an unstable network connection. Support for the FORGETHS command was also added to jtorctl.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
diff -Bbur jtorctl/net/freehaven/tor/control/TorControlConnection.java jtorctl-briar/net/freehaven/tor/control/TorControlConnection.java
|
||||
--- jtorctl/net/freehaven/tor/control/TorControlConnection.java 2014-10-03 12:21:51.883098440 +0100
|
||||
+++ jtorctl-briar/net/freehaven/tor/control/TorControlConnection.java 2014-10-03 12:17:07.429687913 +0100
|
||||
@@ -728,5 +728,12 @@
|
||||
+++ jtorctl-briar/net/freehaven/tor/control/TorControlConnection.java 2014-10-06 16:28:53.516851714 +0100
|
||||
@@ -728,5 +728,19 @@
|
||||
sendAndWaitForResponse("CLOSECIRCUIT "+circID+
|
||||
(ifUnused?" IFUNUSED":"")+"\r\n", null);
|
||||
}
|
||||
@@ -11,6 +11,13 @@ diff -Bbur jtorctl/net/freehaven/tor/control/TorControlConnection.java jtorctl-b
|
||||
+ */
|
||||
+ public void takeOwnership() throws IOException {
|
||||
+ sendAndWaitForResponse("TAKEOWNERSHIP\r\n", null);
|
||||
+ }
|
||||
+
|
||||
+ /** Tells Tor to forget any cached client state relating to the hidden
|
||||
+ * service with the given hostname (excluding the .onion extension).
|
||||
+ */
|
||||
+ public void forgetHiddenService(String hostname) throws IOException {
|
||||
+ sendAndWaitForResponse("FORGETHS " + hostname + "\r\n", null);
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user