aboutsummaryrefslogtreecommitdiff
path: root/src/torcontrol.cpp
AgeCommit message (Collapse)Author
2016-01-18Merge pull request #7313Wladimir J. van der Laan
0331aa3 Fixing typos on security-check.py and torcontrol.cpp (calebogden)
2016-01-17Typo fixes in commentsChris Wheeler
2016-01-08Fixing typos on security-check.py and torcontrol.cppcalebogden
2016-01-05Add missing copyright headersMarcoFalke
2015-12-16torcontrol debug: Change to a blanket message that covers both casesMarcoFalke
2015-11-30torcontrol: only output disconnect if -debug=torDaniel Cousens
2015-11-26Connect to Tor hidden services by defaultPeter Todd
Adds 127.0.0.1:9050 for the .onion proxy if we can succesfully connect to the control port. Natural followup to creating hidden services automatically.
2015-11-12torcontrol improvements and fixesWladimir J. van der Laan
- Force AUTHCOOKIE size to be 32 bytes: This provides protection against an attack where a process pretends to be Tor and uses the cookie authentication method to nab arbitrary files such as the wallet - torcontrol logging - fix cookie auth - add HASHEDPASSWORD auth, fix fd leak when fwrite() fails - better error reporting when cookie file is not ok - better init/shutdown flow - stop advertizing service when disconnected from tor control port - COOKIE->SAFECOOKIE auth
2015-11-10Better error message if Tor version too oldPeter Todd
2015-11-10net: Automatically create hidden service, listen on TorWladimir J. van der Laan
Starting with Tor version 0.2.7.1 it is possible, through Tor's control socket API, to create and destroy 'ephemeral' hidden services programmatically. https://stem.torproject.org/api/control.html#stem.control.Controller.create_ephemeral_hidden_service This means that if Tor is running (and proper authorization is available), bitcoin automatically creates a hidden service to listen on, without user manual configuration. This will positively affect the number of available .onion nodes. - When the node is started, connect to Tor through control socket - Send `ADD_ONION` command - First time: - Make it create a hidden service key - Save the key in the data directory for later usage - Make it redirect port 8333 to the local port 8333 (or whatever port we're listening on). - Keep control socket connection open for as long node is running. The hidden service will (by default) automatically go away when the connection is closed.