Make client report a newer version number to the server than 2011-07-31 does and make the server enforce it

This commit is contained in:
Perttu Ahola 2011-09-22 20:47:47 +03:00
parent 7244f09111
commit bdf54908aa
4 changed files with 13 additions and 2 deletions

View File

@ -9,7 +9,7 @@ project(minetest)
set(VERSION_MAJOR 0)
set(VERSION_MINOR 2)
set(VERSION_PATCH 20110922)
set(VERSION_PATCH 20110922_1)
set(VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
# Configuration options

View File

@ -3,6 +3,9 @@ Minetest-c55 changelog
This should contain all the major changes.
For minor stuff, refer to the commit log of the repository.
0.2.20110922_1:
- Make client report a newer version number to the server than 2011-07-31 does and make server disallow old clients
0.2.20110922:
- Map is saved in an SQLite database file (by Queatz)
- Ladders (MarkTraceur)

View File

@ -431,7 +431,7 @@ void Client::step(float dtime)
snprintf((char*)&data[23], PASSWORD_SIZE, "%s", m_password.c_str());
// This should be incremented in each version
writeU16(&data[51], 1);
writeU16(&data[51], 2);
// Send as unreliable
Send(0, data, false);

View File

@ -2010,6 +2010,14 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id)
L"Your client is too old. Please upgrade.");
return;
}
/* Uhh... this should actually be a warning but let's do it like this */
if(net_proto_version < 2)
{
SendAccessDenied(m_con, peer_id,
L"Your client is too old. Please upgrade.");
return;
}
/*
Set up player