aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server.cpp15
-rw-r--r--src/server.h3
2 files changed, 13 insertions, 5 deletions
diff --git a/src/server.cpp b/src/server.cpp
index 368f0acbf..07f9875c4 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -1979,13 +1979,13 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id)
{
net_proto_version = readU16(&data[2+1+PLAYERNAME_SIZE+PASSWORD_SIZE]);
}
- if(net_proto_version == 0)
+ getClient(peer->id)->net_proto_version = net_proto_version;
+ /*if(net_proto_version == 0)
{
- /*SendAccessDenied(m_con, peer_id,
+ SendAccessDenied(m_con, peer_id,
L"Your client is too old (network protocol)");
- return;*/
- SendChatMessage(peer_id, L"# Server: NOTE: YOUR CLIENT IS OLD AND DOES NOT WORK PROPERLY WITH THIS SERVER");
- }
+ return;
+ }*/
/*
Set up player
@@ -2182,6 +2182,11 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id)
BroadcastChatMessage(message);
}
+ if(getClient(peer->id)->net_proto_version == 0)
+ {
+ SendChatMessage(peer_id, L"# Server: NOTE: YOUR CLIENT IS OLD AND DOES NOT WORK PROPERLY WITH THIS SERVER");
+ }
+
return;
}
diff --git a/src/server.h b/src/server.h
index c300d40e6..4a2d667a8 100644
--- a/src/server.h
+++ b/src/server.h
@@ -235,6 +235,8 @@ public:
u16 peer_id;
// The serialization version to use with the client
u8 serialization_version;
+ //
+ u16 net_proto_version;
// Version is stored in here after INIT before INIT2
u8 pending_serialization_version;
@@ -244,6 +246,7 @@ public:
{
peer_id = 0;
serialization_version = SER_FMT_VER_INVALID;
+ net_proto_version = 0;
pending_serialization_version = SER_FMT_VER_INVALID;
m_nearest_unsent_d = 0;
m_nearest_unsent_reset_timer = 0.0;