|
OpenTTD
|
Server part of the network protocol. More...
Go to the source code of this file.
Data Structures | |
| class | ServerNetworkGameSocketHandler |
| Class for handling the server side of the game connection. More... | |
Macros | |
| #define | FOR_ALL_CLIENT_SOCKETS_FROM(var, start) FOR_ALL_ITEMS_FROM(NetworkClientSocket, clientsocket_index, var, start) |
| Iterate over all the sockets from a given starting point. More... | |
| #define | FOR_ALL_CLIENT_SOCKETS(var) FOR_ALL_CLIENT_SOCKETS_FROM(var, 0) |
| Iterate over all the sockets. More... | |
Typedefs | |
| typedef ServerNetworkGameSocketHandler | NetworkClientSocket |
| Make the code look slightly nicer/simpler. More... | |
| typedef Pool< NetworkClientSocket, ClientIndex, 8, MAX_CLIENT_SLOTS, PT_NCLIENT > | NetworkClientSocketPool |
| Pool with all client sockets. More... | |
Functions | |
| void | NetworkServer_Tick (bool send_frame) |
| This is called every tick if this is a _network_server. More... | |
| void | NetworkServerSetCompanyPassword (CompanyID company_id, const char *password, bool already_hashed=true) |
| Set/Reset a company password on the server end. More... | |
| void | NetworkServerUpdateCompanyPassworded (CompanyID company_id, bool passworded) |
| Tell that a particular company is (not) passworded. More... | |
Variables | |
| NetworkClientSocketPool | _networkclientsocket_pool |
| The pool with clients. More... | |
Server part of the network protocol.
Definition in file network_server.h.
| #define FOR_ALL_CLIENT_SOCKETS | ( | var | ) | FOR_ALL_CLIENT_SOCKETS_FROM(var, 0) |
Iterate over all the sockets.
| var | The variable to iterate with. |
Definition at line 139 of file network_server.h.
Referenced by DistributeCommandPacket(), ServerNetworkGameSocketHandler::GetByClientID(), HasClients(), NetworkClose(), NetworkCountActiveClients(), NetworkDisconnect(), NetworkDistributeCommands(), NetworkHasJoiningClient(), NetworkServer_Tick(), NetworkServerKickOrBanIP(), NetworkServerSendConfigUpdate(), NetworkServerShowStatusToConsole(), NetworkServerUpdateCompanyPassworded(), NetworkUpdateClientInfo(), ServerNetworkGameSocketHandler::Send(), ServerNetworkGameSocketHandler::SendCompanyInfo(), ServerNetworkGameSocketHandler::SendWait(), and ServerNetworkGameSocketHandler::SendWelcome().
| #define FOR_ALL_CLIENT_SOCKETS_FROM | ( | var, | |
| start | |||
| ) | FOR_ALL_ITEMS_FROM(NetworkClientSocket, clientsocket_index, var, start) |
Iterate over all the sockets from a given starting point.
| var | The variable to iterate with. |
| start | The start of the iteration. |
Definition at line 133 of file network_server.h.
| typedef ServerNetworkGameSocketHandler NetworkClientSocket |
Make the code look slightly nicer/simpler.
Definition at line 21 of file network_server.h.
| typedef Pool<NetworkClientSocket, ClientIndex, 8, MAX_CLIENT_SLOTS, PT_NCLIENT> NetworkClientSocketPool |
Pool with all client sockets.
Definition at line 25 of file network_server.h.
| void NetworkServer_Tick | ( | bool | send_frame | ) |
This is called every tick if this is a _network_server.
| send_frame | Whether to send the frame to the clients. |
Definition at line 1805 of file network_server.cpp.
References _frame_counter, _last_sync_frame, _settings_client, NetworkSettings::bytes_per_frame, NetworkSettings::bytes_per_frame_burst, FOR_ALL_CLIENT_SOCKETS, min(), ClientSettings::network, and NetworkSettings::sync_freq.
Referenced by ServerNetworkGameSocketHandler::GetName().
| void NetworkServerSetCompanyPassword | ( | CompanyID | company_id, |
| const char * | password, | ||
| bool | already_hashed | ||
| ) |
Set/Reset a company password on the server end.
| company_id | ID of the company the password should be changed for. |
| password | The new password. |
| already_hashed | Is the given password already hashed? |
Definition at line 1776 of file network_server.cpp.
References _network_company_states, _settings_client, _settings_game, GameSettings::game_creation, GenerateCompanyPasswordHash(), GameCreationSettings::generation_seed, Company::IsValidHumanID(), lastof, ClientSettings::network, NetworkSettings::network_id, NetworkServerUpdateCompanyPassworded(), strecpy(), and StrEmpty().
Referenced by ServerNetworkGameSocketHandler::GetName(), and NetworkChangeCompanyPassword().
| void NetworkServerUpdateCompanyPassworded | ( | CompanyID | company_id, |
| bool | passworded | ||
| ) |
Tell that a particular company is (not) passworded.
| company_id | The company that got/removed the password. |
| passworded | Whether the password was received or removed. |
Definition at line 2010 of file network_server.cpp.
References _network_company_passworded, FOR_ALL_CLIENT_SOCKETS, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::GetIfValid(), NetworkAdminCompanyUpdate(), NetworkCompanyIsPassworded(), SB(), SetWindowClassesDirty(), and WC_COMPANY.
Referenced by ServerNetworkGameSocketHandler::GetName(), and NetworkServerSetCompanyPassword().
| NetworkClientSocketPool _networkclientsocket_pool |
The pool with clients.
1.8.13