libnet: recvfrom() fix (#2427)

Prevents emulator crash when invalid socket is provided to the function
This commit is contained in:
Ani 2017-02-25 23:27:31 +00:00 committed by GitHub
parent d0afef47f8
commit 4d9b56c7f1

View file

@ -432,6 +432,12 @@ namespace sys_net
memcpy(&_addr, addr.get_ptr(), sizeof(::sockaddr));
_addr.sa_family = addr->sa_family;
if (s <= 0) {
libnet.error("recvfrom(): invalid socket %d", s);
return SYS_NET_EBADF;
}
s32 ret = ::recvfrom(sock->s, buf.get_ptr(), len, flags, &_addr, &_paddrlen);
*paddrlen = _paddrlen;