godot/modules/multiplayer
baptr 2eadbe7b78 Fix multiplayer replication crash in on_sync_receive.
A number of early continue cases applied the packet-provided `size`
without validation, allowing large uint32_t values to be treated as
negative offsets and leading to segfaults.

Now, we validate `size` against the buffer length immediately to avoid a
crash.

This could be triggered by receiving sync data for a synchronizer who's
root node had just been removed, since the code path that checked for
unusable sync state failed to advance the offset. Thus the next read
could interpret part of the payload as such an invalid `size`.

Now, we properly advance the read offset in that case (and raise a
better error).
2023-02-14 02:46:32 -08:00
..
doc_classes Merge pull request #70721 from Faless/mp/4.x_fix_relay_option 2023-01-09 23:09:53 +01:00
editor Improve some editor strings for localization 2023-02-09 19:32:02 +08:00
SCsub SCons: Unify tools/target build type configuration 2022-09-26 16:31:46 +02:00
config.py
multiplayer_debugger.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
multiplayer_debugger.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
multiplayer_spawner.cpp [MP] Fix MultiplayerSpawner not connecting to child_entered_tree. 2023-02-12 15:32:09 +01:00
multiplayer_spawner.h [MP] Fix nested spawning during "ready". 2023-01-17 04:22:07 +01:00
multiplayer_synchronizer.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
multiplayer_synchronizer.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
register_types.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
register_types.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_cache_interface.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_cache_interface.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_multiplayer.cpp Merge pull request #70721 from Faless/mp/4.x_fix_relay_option 2023-01-09 23:09:53 +01:00
scene_multiplayer.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_replication_config.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_replication_config.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_replication_interface.cpp Fix multiplayer replication crash in on_sync_receive. 2023-02-14 02:46:32 -08:00
scene_replication_interface.h [MP] Fix nested spawning during "ready". 2023-01-17 04:22:07 +01:00
scene_rpc_interface.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
scene_rpc_interface.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00