From a5108a1fa25216427b9c0087199991011cd30150 Mon Sep 17 00:00:00 2001 From: rubidium Date: Wed, 19 Jan 2011 16:37:06 +0000 Subject: [PATCH] (svn r21853) -Codechange: HashCurrentCompanyPassword is only used by servers, so move it to network_server.* (dihedral) --- src/network/network.cpp | 19 ------------------- src/network/network.h | 3 --- src/network/network_internal.h | 1 + src/network/network_server.cpp | 20 ++++++++++++++++++++ src/network/network_server.h | 1 + 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/network/network.cpp b/src/network/network.cpp index e6fff9420d..d29ac023cf 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -202,25 +202,6 @@ const char *GenerateCompanyPasswordHash(const char *password, const char *passwo return hashed_password; } -/** - * Hash the current company password; used when the server 'company' sets his/her password. - */ -void HashCurrentCompanyPassword(const char *password) -{ - uint32 password_game_seed; - char password_server_id[NETWORK_SERVER_ID_LENGTH]; - - password_game_seed = _settings_game.game_creation.generation_seed; - strecpy(password_server_id, _settings_client.network.network_id, lastof(password_server_id)); - - const char *new_pw = GenerateCompanyPasswordHash(password, password_server_id, password_game_seed); - strecpy(_network_company_states[_local_company].password, new_pw, lastof(_network_company_states[_local_company].password)); - - if (_network_server) { - NetworkServerUpdateCompanyPassworded(_local_company, !StrEmpty(_network_company_states[_local_company].password)); - } -} - /** * Check if the company we want to join requires a password. * @param company_id id of the company we want to check the 'passworded' flag for. diff --git a/src/network/network.h b/src/network/network.h index 0986051114..3dd63d03cb 100644 --- a/src/network/network.h +++ b/src/network/network.h @@ -19,9 +19,6 @@ void NetworkStartUp(); void NetworkShutDown(); void NetworkDrawChatMessage(); -const char *GenerateCompanyPasswordHash(const char *password, const char *password_server_id, uint32 password_game_seed); -void HashCurrentCompanyPassword(const char *password); - extern bool _networking; ///< are we in networking mode? extern bool _network_server; ///< network-server is active extern bool _network_available; ///< is network mode available? diff --git a/src/network/network_internal.h b/src/network/network_internal.h index 40391a7a88..8add09f1dd 100644 --- a/src/network/network_internal.h +++ b/src/network/network_internal.h @@ -168,6 +168,7 @@ uint NetworkCalculateLag(const NetworkClientSocket *cs); NetworkClientSocket *NetworkFindClientStateFromClientID(ClientID client_id); StringID GetNetworkErrorMsg(NetworkErrorCode err); bool NetworkFindName(char new_name[NETWORK_CLIENT_NAME_LENGTH]); +const char *GenerateCompanyPasswordHash(const char *password, const char *password_server_id, uint32 password_game_seed); #endif /* ENABLE_NETWORK */ #endif /* NETWORK_INTERNAL_H */ diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index c9fe3c1810..83352f7024 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -1629,6 +1629,26 @@ bool NetworkServerChangeClientName(ClientID client_id, const char *new_name) return true; } +/** + * Hash the current company password; used when the server 'company' sets his/her password. + * @param password The password to hash. + */ +void HashCurrentCompanyPassword(const char *password) +{ + uint32 password_game_seed; + char password_server_id[NETWORK_SERVER_ID_LENGTH]; + + password_game_seed = _settings_game.game_creation.generation_seed; + strecpy(password_server_id, _settings_client.network.network_id, lastof(password_server_id)); + + const char *new_pw = GenerateCompanyPasswordHash(password, password_server_id, password_game_seed); + strecpy(_network_company_states[_local_company].password, new_pw, lastof(_network_company_states[_local_company].password)); + + if (_network_server) { + NetworkServerUpdateCompanyPassworded(_local_company, !StrEmpty(_network_company_states[_local_company].password)); + } +} + /* Handle the local command-queue */ static void NetworkHandleCommandQueue(NetworkClientSocket *cs) { diff --git a/src/network/network_server.h b/src/network/network_server.h index e44a048698..cd087478b9 100644 --- a/src/network/network_server.h +++ b/src/network/network_server.h @@ -118,6 +118,7 @@ public: }; void NetworkServer_Tick(bool send_frame); +void HashCurrentCompanyPassword(const char *password); #define FOR_ALL_CLIENT_SOCKETS_FROM(var, start) FOR_ALL_ITEMS_FROM(NetworkClientSocket, clientsocket_index, var, start) #define FOR_ALL_CLIENT_SOCKETS(var) FOR_ALL_CLIENT_SOCKETS_FROM(var, 0)