|
|
@ -60,8 +60,8 @@ std::string I2PControlSession::Response::getErrorMsg() const |
|
|
|
return "Invalid password."; |
|
|
|
return "Invalid password."; |
|
|
|
case ErrorCode::NoToken: |
|
|
|
case ErrorCode::NoToken: |
|
|
|
return "No authentication token given."; |
|
|
|
return "No authentication token given."; |
|
|
|
case ErrorCode::NonexistantToken: |
|
|
|
case ErrorCode::NonexistentToken: |
|
|
|
return "Nonexistant authentication token given."; |
|
|
|
return "Nonexistent authentication token given."; |
|
|
|
case ErrorCode::ExpiredToken: |
|
|
|
case ErrorCode::ExpiredToken: |
|
|
|
return "Exipred authentication token given."; |
|
|
|
return "Exipred authentication token given."; |
|
|
|
case ErrorCode::UnspecifiedVersion: |
|
|
|
case ErrorCode::UnspecifiedVersion: |
|
|
@ -182,7 +182,7 @@ bool I2PControlSession::authenticate(const PropertyTree& pt, Response& response) |
|
|
|
std::lock_guard<std::mutex> lock(tokensMutex); |
|
|
|
std::lock_guard<std::mutex> lock(tokensMutex); |
|
|
|
auto it = tokens.find(token); |
|
|
|
auto it = tokens.find(token); |
|
|
|
if(it == tokens.end()) { |
|
|
|
if(it == tokens.end()) { |
|
|
|
response.setError(ErrorCode::NonexistantToken); |
|
|
|
response.setError(ErrorCode::NonexistentToken); |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
} else if(util::GetSecondsSinceEpoch() - it->second > I2P_CONTROL_TOKEN_LIFETIME) { |
|
|
|
} else if(util::GetSecondsSinceEpoch() - it->second > I2P_CONTROL_TOKEN_LIFETIME) { |
|
|
|
response.setError(ErrorCode::ExpiredToken); |
|
|
|
response.setError(ErrorCode::ExpiredToken); |
|
|
|