You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Add check to validate client IDs in ENet.
Server now checks that the ID received from the client is not already used by someone else and is a valid ID (>=2)
This commit is contained in:
@@ -231,6 +231,13 @@ void NetworkedMultiplayerENet::poll() {
|
||||
break;
|
||||
}
|
||||
|
||||
// A client joined with an invalid ID (neagtive values, 0, and 1 are reserved).
|
||||
// Probably trying to exploit us.
|
||||
if (server && ((int)event.data < 2 || peer_map.has((int)event.data))) {
|
||||
enet_peer_reset(event.peer);
|
||||
ERR_CONTINUE(true);
|
||||
}
|
||||
|
||||
int *new_id = memnew(int);
|
||||
*new_id = event.data;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user