mirror of
https://github.com/GOSTSec/poolserver
synced 2025-01-15 01:00:10 +00:00
Fix crash in client accept
This commit is contained in:
parent
41e73f3d94
commit
317e3af89b
@ -12,21 +12,26 @@ namespace Stratum
|
|||||||
{
|
{
|
||||||
bool Client::Start()
|
bool Client::Start()
|
||||||
{
|
{
|
||||||
// Get IP
|
try {
|
||||||
tcp::endpoint remote_ep = _socket.remote_endpoint();
|
// Get IP
|
||||||
address remote_ad = remote_ep.address();
|
tcp::endpoint remote_ep = _socket.remote_endpoint();
|
||||||
_ip = remote_ad.to_v4().to_ulong();
|
address remote_ad = remote_ep.address();
|
||||||
|
_ip = remote_ad.to_v4().to_ulong();
|
||||||
|
|
||||||
if (_server->IsBanned(_ip)) {
|
if (_server->IsBanned(_ip)) {
|
||||||
sLog.Warn(LOG_STRATUM, "Blocked banned client from: %s", remote_ad.to_v4().to_string().c_str());
|
sLog.Warn(LOG_STRATUM, "Blocked banned client from: %s", remote_ad.to_v4().to_string().c_str());
|
||||||
Disconnect();
|
Disconnect();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Start reading socket
|
// Start reading socket
|
||||||
StartRead();
|
StartRead();
|
||||||
|
} catch (std::exception& e) {
|
||||||
|
sLog.Error(LOG_SERVER, "Exception caught while accepting client: %s", e.what());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Client::SendJob(bool clean)
|
void Client::SendJob(bool clean)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user