mirror of
https://github.com/minetest/minetest.git
synced 2024-11-23 08:03:45 +01:00
Check for duplicate login in TOSERVER_INIT handler (#11017)
i.e. checks for duplicate logins before sending all media data to the client.
This commit is contained in:
parent
59a1b53d67
commit
492110a640
@ -174,6 +174,16 @@ void Server::handleCommand_Init(NetworkPacket* pkt)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RemotePlayer *player = m_env->getPlayer(playername);
|
||||||
|
|
||||||
|
// If player is already connected, cancel
|
||||||
|
if (player && player->getPeerId() != PEER_ID_INEXISTENT) {
|
||||||
|
actionstream << "Server: Player with name \"" << playername <<
|
||||||
|
"\" tried to connect, but player with same name is already connected" << std::endl;
|
||||||
|
DenyAccess(peer_id, SERVER_ACCESSDENIED_ALREADY_CONNECTED);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
m_clients.setPlayerName(peer_id, playername);
|
m_clients.setPlayerName(peer_id, playername);
|
||||||
//TODO (later) case insensitivity
|
//TODO (later) case insensitivity
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user