fix to the former

master
Perttu Ahola 2011-07-30 20:10:16 +03:00
parent f8fca8ca5e
commit f2051c9822
2 changed files with 13 additions and 5 deletions

View File

@ -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]); 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)"); L"Your client is too old (network protocol)");
return;*/ return;
SendChatMessage(peer_id, L"# Server: NOTE: YOUR CLIENT IS OLD AND DOES NOT WORK PROPERLY WITH THIS SERVER"); }*/
}
/* /*
Set up player Set up player
@ -2182,6 +2182,11 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id)
BroadcastChatMessage(message); 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; return;
} }

View File

@ -235,6 +235,8 @@ public:
u16 peer_id; u16 peer_id;
// The serialization version to use with the client // The serialization version to use with the client
u8 serialization_version; u8 serialization_version;
//
u16 net_proto_version;
// Version is stored in here after INIT before INIT2 // Version is stored in here after INIT before INIT2
u8 pending_serialization_version; u8 pending_serialization_version;
@ -244,6 +246,7 @@ public:
{ {
peer_id = 0; peer_id = 0;
serialization_version = SER_FMT_VER_INVALID; serialization_version = SER_FMT_VER_INVALID;
net_proto_version = 0;
pending_serialization_version = SER_FMT_VER_INVALID; pending_serialization_version = SER_FMT_VER_INVALID;
m_nearest_unsent_d = 0; m_nearest_unsent_d = 0;
m_nearest_unsent_reset_timer = 0.0; m_nearest_unsent_reset_timer = 0.0;