16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-19 16:59:17 +02:00

network improvements and fixes

This commit is contained in:
milek7
2019-02-06 00:03:48 +01:00
parent 5a0bb610db
commit 6962e25042
15 changed files with 152 additions and 62 deletions

View File

@@ -143,7 +143,8 @@ void network::server::handle_message(std::shared_ptr<connection> conn, const mes
if (msg.type == message::CLIENT_HELLO) {
auto cmd = dynamic_cast<const client_hello&>(msg);
if (cmd.version != 1) {
if (cmd.version != 1 // wrong version
|| !Global.ready_to_load) { // not ready yet
conn->disconnect();
return;
}
@@ -227,6 +228,10 @@ void network::client::handle_message(std::shared_ptr<connection> conn, const mes
Global.random_seed = cmd.seed;
Global.random_engine.seed(Global.random_seed);
Global.ready_to_load = true;
} else if (Global.random_seed != cmd.seed) {
ErrorLog("net: seed mismatch", logtype::net);
conn->disconnect();
return;
}
WriteLog("net: accept received", logtype::net);
@@ -241,3 +246,5 @@ void network::client::handle_message(std::shared_ptr<connection> conn, const mes
}
// --------------
std::unordered_map<std::string, network::backend_manager*> network::backend_list;