mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-09-04 03:21:42 +00:00
properly handle writebuffer and dont write OOB
This commit is contained in:
@@ -676,8 +676,8 @@ Network::Errno BSD::GetPeerNameImpl(s32 fd, std::vector<u8>& write_buffer) {
|
|||||||
if (bsd_errno != Network::Errno::SUCCESS) {
|
if (bsd_errno != Network::Errno::SUCCESS) {
|
||||||
return bsd_errno;
|
return bsd_errno;
|
||||||
}
|
}
|
||||||
ASSERT(write_buffer.size() >= sizeof(addr_in));
|
ASSERT(write_buffer.size() >= addr_in.len);
|
||||||
write_buffer.resize(sizeof(addr_in));
|
write_buffer.resize(addr_in.len);
|
||||||
PutValue(write_buffer, addr_in);
|
PutValue(write_buffer, addr_in);
|
||||||
return bsd_errno;
|
return bsd_errno;
|
||||||
}
|
}
|
||||||
@@ -696,8 +696,8 @@ Network::Errno BSD::GetSockNameImpl(s32 fd, std::vector<u8>& write_buffer) {
|
|||||||
if (bsd_errno != Network::Errno::SUCCESS) {
|
if (bsd_errno != Network::Errno::SUCCESS) {
|
||||||
return bsd_errno;
|
return bsd_errno;
|
||||||
}
|
}
|
||||||
ASSERT(write_buffer.size() >= sizeof(addr_in));
|
ASSERT(write_buffer.size() >= addr_in.len);
|
||||||
write_buffer.resize(sizeof(addr_in));
|
write_buffer.resize(addr_in.len);
|
||||||
PutValue(write_buffer, addr_in);
|
PutValue(write_buffer, addr_in);
|
||||||
return bsd_errno;
|
return bsd_errno;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user