mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2026-10-11 22:49:50 +00:00
Merge pull request #14911 from acts-1631/netplay-save-banner-validation
NetPlay: reject oversized Wii save banners
This commit is contained in:
@@ -1209,12 +1209,18 @@ void NetPlayClient::OnSyncSaveDataWii(sf::Packet& packet)
|
||||
WiiSave::Header header;
|
||||
packet >> header.tid;
|
||||
packet >> header.banner_size;
|
||||
if (!packet || header.banner_size > sizeof(header.banner))
|
||||
{
|
||||
WARN_LOG_FMT(NETPLAY, "Received invalid Wii save banner size.");
|
||||
SyncSaveDataResponse(false);
|
||||
return;
|
||||
}
|
||||
packet >> header.permissions;
|
||||
packet >> header.unk1;
|
||||
for (u8& byte : header.md5)
|
||||
packet >> byte;
|
||||
packet >> header.unk2;
|
||||
for (size_t i = 0; i < std::min<size_t>(header.banner_size, sizeof(header.banner)); i++)
|
||||
for (size_t i = 0; i < header.banner_size; i++)
|
||||
packet >> header.banner[i];
|
||||
|
||||
// BkHeader
|
||||
|
||||
Reference in New Issue
Block a user