Changeset View
Changeset View
Standalone View
Standalone View
ps/trunk/source/network/NetServer.cpp
Show First 20 Lines • Show All 965 Lines • ▼ Show 20 Lines | LOGERROR("Net server: lobby auth: %s tried joining as %s", | ||||
usernameWithoutRating.ToUTF8()); | usernameWithoutRating.ToUTF8()); | ||||
session->Disconnect(NDR_LOBBY_AUTH_FAILED); | session->Disconnect(NDR_LOBBY_AUTH_FAILED); | ||||
return true; | return true; | ||||
} | } | ||||
// Either deduplicate or prohibit join if name is in use | // Either deduplicate or prohibit join if name is in use | ||||
bool duplicatePlayernames = false; | bool duplicatePlayernames = false; | ||||
CFG_GET_VAL("network.duplicateplayernames", duplicatePlayernames); | CFG_GET_VAL("network.duplicateplayernames", duplicatePlayernames); | ||||
if (duplicatePlayernames) | // If lobby authentication is enabled, the clients playername has already been registered. | ||||
// There also can't be any duplicated names. | |||||
if (!server.m_LobbyAuth && duplicatePlayernames) | |||||
username = server.DeduplicatePlayerName(username); | username = server.DeduplicatePlayerName(username); | ||||
else | else | ||||
{ | { | ||||
std::vector<CNetServerSession*>::iterator it = std::find_if( | std::vector<CNetServerSession*>::iterator it = std::find_if( | ||||
server.m_Sessions.begin(), server.m_Sessions.end(), | server.m_Sessions.begin(), server.m_Sessions.end(), | ||||
[&username] (const CNetServerSession* session) | [&username] (const CNetServerSession* session) | ||||
{ return session->GetUserName() == username; }); | { return session->GetUserName() == username; }); | ||||
▲ Show 20 Lines • Show All 642 Lines • Show Last 20 Lines |
Wildfire Games · Phabricator