From 8e26f2c0d1c34fa4b4b65a90e341e9a6330c3ef4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Fri, 27 May 2016 23:00:31 +0200 Subject: [PATCH] Only check for PASSWORDLESS permission if successfully verified --- src/network/network.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/network/network.cpp b/src/network/network.cpp index 584dfaa4fb..5dad15ed1d 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -2029,9 +2029,12 @@ void Network::Server_Handle_AUTH(NetworkConnection& connection, NetworkPacket& p } } - const NetworkGroup * group = GetGroupByID(GetGroupIDByHash(connection.key.PublicKeyHash())); - size_t actionIndex = gNetworkActions.FindCommandByPermissionName("PERMISSION_PASSWORDLESS_LOGIN"); - bool passwordless = group->CanPerformAction(actionIndex); + bool passwordless = false; + if (connection.authstatus == NETWORK_AUTH_VERIFIED) { + const NetworkGroup * group = GetGroupByID(GetGroupIDByHash(connection.key.PublicKeyHash())); + size_t actionIndex = gNetworkActions.FindCommandByPermissionName("PERMISSION_PASSWORDLESS_LOGIN"); + passwordless = group->CanPerformAction(actionIndex); + } if (!gameversion || strcmp(gameversion, NETWORK_STREAM_ID) != 0) { connection.authstatus = NETWORK_AUTH_BADVERSION; } else