Update to Core 0.13.2
This commit is contained in:
@@ -394,9 +394,9 @@ private:
|
||||
static void reconnect_cb(evutil_socket_t fd, short what, void *arg);
|
||||
};
|
||||
|
||||
TorController::TorController(struct event_base* base, const std::string& target):
|
||||
base(base),
|
||||
target(target), conn(base), reconnect(true), reconnect_ev(0),
|
||||
TorController::TorController(struct event_base* _base, const std::string& _target):
|
||||
base(_base),
|
||||
target(_target), conn(base), reconnect(true), reconnect_ev(0),
|
||||
reconnect_timeout(RECONNECT_TIMEOUT_START)
|
||||
{
|
||||
reconnect_ev = event_new(base, -1, 0, reconnect_cb, this);
|
||||
@@ -575,7 +575,15 @@ void TorController::protocolinfo_cb(TorControlConnection& conn, const TorControl
|
||||
* password: "password"
|
||||
*/
|
||||
std::string torpassword = GetArg("-torpassword", "");
|
||||
if (methods.count("NULL")) {
|
||||
if (!torpassword.empty()) {
|
||||
if (methods.count("HASHEDPASSWORD")) {
|
||||
LogPrint("tor", "tor: Using HASHEDPASSWORD authentication\n");
|
||||
boost::replace_all(torpassword, "\"", "\\\"");
|
||||
conn.Command("AUTHENTICATE \"" + torpassword + "\"", boost::bind(&TorController::auth_cb, this, _1, _2));
|
||||
} else {
|
||||
LogPrintf("tor: Password provided with -torpassword, but HASHEDPASSWORD authentication is not available\n");
|
||||
}
|
||||
} else if (methods.count("NULL")) {
|
||||
LogPrint("tor", "tor: Using NULL authentication\n");
|
||||
conn.Command("AUTHENTICATE", boost::bind(&TorController::auth_cb, this, _1, _2));
|
||||
} else if (methods.count("SAFECOOKIE")) {
|
||||
@@ -596,13 +604,7 @@ void TorController::protocolinfo_cb(TorControlConnection& conn, const TorControl
|
||||
}
|
||||
}
|
||||
} else if (methods.count("HASHEDPASSWORD")) {
|
||||
if (!torpassword.empty()) {
|
||||
LogPrint("tor", "tor: Using HASHEDPASSWORD authentication\n");
|
||||
boost::replace_all(torpassword, "\"", "\\\"");
|
||||
conn.Command("AUTHENTICATE \"" + torpassword + "\"", boost::bind(&TorController::auth_cb, this, _1, _2));
|
||||
} else {
|
||||
LogPrintf("tor: Password authentication required, but no password provided with -torpassword\n");
|
||||
}
|
||||
LogPrintf("tor: The only supported authentication mechanism left is password, but no password provided with -torpassword\n");
|
||||
} else {
|
||||
LogPrintf("tor: No supported authentication method\n");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user