mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-25 15:29:03 +00:00
Revert "Polyfill ENOTSOCK in getsockname() and getpeername()"
This reverts commit 925219bdf3
.
This commit is contained in:
parent
925219bdf3
commit
4fb6cbc1fe
1 changed files with 14 additions and 14 deletions
|
@ -39,21 +39,21 @@ static int __getsockpeername(int fd, struct sockaddr *out_addr,
|
|||
uint32_t size = sizeof(ss);
|
||||
|
||||
if (IsWindows()) {
|
||||
if (!__isfdopen(fd)) {
|
||||
rc = ebadf();
|
||||
} else if (!__isfdkind(fd, kFdSocket)) {
|
||||
rc = enotsock();
|
||||
} else if ((rc = impl_win32(g_fds.p[fd].handle, &ss, &size))) {
|
||||
if (impl_win32 == __sys_getsockname_nt &&
|
||||
WSAGetLastError() == WSAEINVAL) {
|
||||
// The socket has not been bound to an address with bind, or
|
||||
// ADDR_ANY is specified in bind but connection has not yet
|
||||
// occurred. -MSDN
|
||||
ss.ss_family = ((struct SockFd *)g_fds.p[fd].extra)->family;
|
||||
rc = 0;
|
||||
} else {
|
||||
rc = __winsockerr();
|
||||
if (__isfdkind(fd, kFdSocket)) {
|
||||
if ((rc = impl_win32(g_fds.p[fd].handle, &ss, &size))) {
|
||||
if (impl_win32 == __sys_getsockname_nt &&
|
||||
WSAGetLastError() == WSAEINVAL) {
|
||||
// The socket has not been bound to an address with bind, or
|
||||
// ADDR_ANY is specified in bind but connection has not yet
|
||||
// occurred. -MSDN
|
||||
ss.ss_family = ((struct SockFd *)g_fds.p[fd].extra)->family;
|
||||
rc = 0;
|
||||
} else {
|
||||
rc = __winsockerr();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
rc = ebadf();
|
||||
}
|
||||
} else {
|
||||
rc = impl_sysv(fd, &ss, &size);
|
||||
|
|
Loading…
Add table
Reference in a new issue