From d5036ff2aee3702d2ec6098b5bf97bb4023bc345 Mon Sep 17 00:00:00 2001 From: ANR2ME Date: Thu, 13 Jan 2022 16:13:53 +0700 Subject: [PATCH] Fix buffer overflow issue on GameMode. --- Core/HLE/sceNetAdhoc.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Core/HLE/sceNetAdhoc.cpp b/Core/HLE/sceNetAdhoc.cpp index cb6125b663..12bbe54752 100644 --- a/Core/HLE/sceNetAdhoc.cpp +++ b/Core/HLE/sceNetAdhoc.cpp @@ -4313,6 +4313,9 @@ static int sceNetAdhocGameModeCreateMaster(u32 dataAddr, int size) { SceNetEtherAddr localMac; getLocalMac(&localMac); gameModeBuffSize = std::max(gameModeBuffSize, size); + u8* buf = (u8*)realloc(gameModeBuffer, gameModeBuffSize); + if (buf) + gameModeBuffer = buf; u8* data = (u8*)malloc(size); if (data) { @@ -4371,6 +4374,9 @@ static int sceNetAdhocGameModeCreateReplica(const char *mac, u32 dataAddr, int s int ret = 0; gameModeBuffSize = std::max(gameModeBuffSize, size); + u8* buf = (u8*)realloc(gameModeBuffer, gameModeBuffSize); + if (buf) + gameModeBuffer = buf; u8* data = (u8*)malloc(size); if (data) {