Browse Source

properly handle writebuffer and dont write OOB

lizzie/refactor-networking-12
lizzie 2 months ago
parent
commit
0b751c01de
  1. 8
      src/core/hle/service/sockets/bsd.cpp

8
src/core/hle/service/sockets/bsd.cpp

@ -704,8 +704,8 @@ Network::Errno BSD::GetPeerNameImpl(s32 fd, std::vector<u8>& write_buffer) {
if (bsd_errno != Network::Errno::SUCCESS) {
return bsd_errno;
}
ASSERT(write_buffer.size() >= sizeof(addr_in));
write_buffer.resize(sizeof(addr_in));
ASSERT(write_buffer.size() >= addr_in.len);
write_buffer.resize(addr_in.len);
PutValue(write_buffer, addr_in);
return bsd_errno;
}
@ -724,8 +724,8 @@ Network::Errno BSD::GetSockNameImpl(s32 fd, std::vector<u8>& write_buffer) {
if (bsd_errno != Network::Errno::SUCCESS) {
return bsd_errno;
}
ASSERT(write_buffer.size() >= sizeof(addr_in));
write_buffer.resize(sizeof(addr_in));
ASSERT(write_buffer.size() >= addr_in.len);
write_buffer.resize(addr_in.len);
PutValue(write_buffer, addr_in);
return bsd_errno;
}

Loading…
Cancel
Save