Sortix
Sortix Download Manual Development News Blog More

os-test

os-test is a set of test suites for POSIX operating systems designed to make it easy to compare differences between operating systems and to find operating system bugs. It consists of test suites that focus on different operating system areas.

This page visualizes the results for the free software POSIX operating systems that are relevant today.

Source Code

The os-test source code is available on gitlab. You also can view the source code for each test by clicking the test title in the leftmost entry of each row. os-test is licensed under the ISC license, see the LICENSE file in the source code for details.

Setup

I run os-test on my host Linux system and the rest of the systems run in VirtualBox virtual machines of every other system. The testing harness connects to each virtual machine over ssh and runs tests there. The systems are:

  • DragonFly (Twitter thread on installation)
  • FreeBSD (Twitter thread on installation)
  • Haiku (Twitter thread on installation)
  • Hurd (Twitter thread on installation)
  • Linux (My development environment)
  • macOS (Contributed data - how do I get such a virtual machine?)
  • Minix (Twitter thread on installation)
  • NetBSD (Twitter thread on installation)
  • OpenBSD
  • OpenIndiana (Twitter thread on installation) and OmniOS Community Edition (Twitter thread on installation) (the results are identical, so their columns are combined to save space)
  • Sortix (Virtual Machine of my own OS)

Legend

Unanimous Result kind 1 Result kind 2 Result kind 3 Result kind 4 Result kind 5
Good Good unanimous Good result kind 1 Good result kind 2 Good result kind 3 Good result kind 4 Good result kind 5
Unknown Unknown unanimous Unknown result kind 1 Unknown result kind 2 Unknown result kind 3 Unknown result kind 4 Unknown result kind 5
Bad Bad unanimous Bad result kind 1 Bad result kind 2 Bad result kind 3 Bad result kind 4 Bad result kind 5

Good. A cell is good if its output belongs to the set of expected valid outputs for that test, as determined by the applicable standards, specifications, expected behavior, or the interpretation of the os-test authors. If all the good results in a row have the same output, all the good result cells are colored in the unanimous color. Otherwise, each different kind of good outcome is colored in an unique color.

Unknown. A cell is unknown if the output is known, but it has not yet been determined if the output is a good result. If all the unknown results in a row have the same output, all the unknown result cells are colored in the unanimous color. Otherwise, each different kind of unknown outcome is colored in an unique color.

Bad. A cell is bad if its output is neither good nor unknown. If all the bad results in a row have the same output, all the bad result cells are colored in the unanimous color. Otherwise, each different kind of bad outcome is colored in an unique color.

§. The § link on the left of each row links to that row.

Suites

os-test currently contains these suites:

  • io - This suite tests input/output system calls.
  • malloc - This suite tests memory allocation.
  • udp - This suite tests the UDP stack.

io

This suite tests input/output system calls.

dragonfly
DragonFly 5.0-RELEASE x86_64
freebsd
FreeBSD 11.1-RELEASE amd64
haiku
Haiku 1 x86_64
hurd
GNU 0.9 i686-AT386
linux
Linux 4.4.0-161-generic x86_64
macos
Darwin 17.4.0 x86_64
minix
Minix 3.4.0 i386
netbsd
NetBSD 7.1 amd64
openbsd
OpenBSD 6.4 amd64
openindiana-omnios
SunOS 5.11 i86pc
sortix
Sortix 1.1dev x86_64
§ open-mkstemp-rdonly dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ open-mkstemp-rdonly-directory dragonfly: good
open: ENOTDIR
freebsd: good
open: ENOTDIR
haiku: good
open: ENOTDIR
hurd: good
open: ENOTDIR
linux: good
open: ENOTDIR
macos: no data minix: bad
exit: 0
netbsd: good
open: ENOTDIR
openbsd: good
open: ENOTDIR
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: ENOTDIR
§ open-mkstemp-rdonly-trunc dragonfly: good
open: EACCES
freebsd: good
file was truncated
haiku: good
open: EPERM
hurd: good
open: EINVAL
linux: good
file was truncated
macos: good
file was truncated
minix: good
file was truncated
netbsd: good
file was truncated
openbsd: good
open: EINVAL
openindiana-omnios: good
file was truncated
sortix: good
open: EINVAL
§ open-mkstemp-rdonly-trunc-directory dragonfly: good
open: EACCES
freebsd: good
open: ENOTDIR
haiku: good
open: ENOTDIR
hurd: good
open: ENOTDIR
linux: good
open: ENOTDIR
macos: no data minix: bad
file was truncated
netbsd: good
open: ENOTDIR
openbsd: good
open: EINVAL
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: EINVAL
§ open-mkstemp-wronly-directory dragonfly: good
open: ENOTDIR
freebsd: good
open: ENOTDIR
haiku: good
open: ENOTDIR
hurd: good
open: ENOTDIR
linux: good
open: ENOTDIR
macos: no data minix: bad
exit: 0
netbsd: good
open: ENOTDIR
openbsd: good
open: ENOTDIR
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: ENOTDIR
§ open-mkstemp-wronly-trunc-directory dragonfly: good
open: ENOTDIR
freebsd: good
open: ENOTDIR
haiku: good
open: ENOTDIR
hurd: good
open: ENOTDIR
linux: good
open: ENOTDIR
macos: no data minix: bad
file was truncated
netbsd: good
open: ENOTDIR
openbsd: good
open: ENOTDIR
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: EINVAL
§ open-tmpdir-rdonly dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ open-tmpdir-rdonly-append dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ open-tmpdir-rdonly-creat dragonfly: bad
exit: 0
freebsd: bad
exit: 0
haiku: bad
exit: 0
hurd: bad
exit: 0
linux: good
open: EISDIR
macos: bad
exit: 0
minix: bad
exit: 0
netbsd: bad
exit: 0
openbsd: bad
exit: 0
openindiana-omnios: bad
exit: 0
sortix: good
open: EISDIR
§ open-tmpdir-rdonly-directory dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: no data minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
exit: 0
§ open-tmpdir-rdonly-trunc dragonfly: good
open: EACCES
freebsd: good
open: EISDIR
haiku: good
open: EPERM
hurd: good
open: EINVAL
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
exit: 0
netbsd: good
open: EISDIR
openbsd: good
open: EINVAL
openindiana-omnios: good
open: EISDIR
sortix: good
open: EINVAL
§ open-tmpdir-rdwr dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-rdwr-append dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: no data minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-rdwr-creat dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-rdwr-directory dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: no data minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: EISDIR
§ open-tmpdir-rdwr-trunc dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-wronly dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-wronly-append dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-wronly-creat dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR
§ open-tmpdir-wronly-directory dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: no data minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: bad
O_DIRECTORY is not defined
sortix: good
open: EISDIR
§ open-tmpdir-wronly-trunc dragonfly: good
open: EISDIR
freebsd: good
open: EISDIR
haiku: good
open: EISDIR
hurd: good
open: EISDIR
linux: good
open: EISDIR
macos: good
open: EISDIR
minix: good
open: EISDIR
netbsd: good
open: EISDIR
openbsd: good
open: EISDIR
openindiana-omnios: good
open: EISDIR
sortix: good
open: EISDIR

malloc

This suite tests memory allocation.

dragonfly
DragonFly 5.0-RELEASE x86_64
freebsd
FreeBSD 11.1-RELEASE amd64
haiku
Haiku 1 x86_64
hurd
GNU 0.9 i686-AT386
linux
Linux 4.4.0-161-generic x86_64
macos
Darwin 17.4.0 x86_64
minix
Minix 3.4.0 i386
netbsd
NetBSD 7.1 amd64
openbsd
OpenBSD 6.4 amd64
openindiana-omnios
SunOS 5.11 i86pc
sortix
Sortix 1.1dev x86_64
§ malloc-0 dragonfly: good
non-NULL
freebsd: good
non-NULL
haiku: good
non-NULL
hurd: good
non-NULL
linux: good
non-NULL
macos: no data minix: good
non-NULL
netbsd: good
non-NULL
openbsd: good
non-NULL
openindiana-omnios: good
non-NULL
sortix: good
non-NULL
§ realloc-0 dragonfly: good
non-NULL
freebsd: good
NULL
haiku: good
NULL
hurd: good
NULL
linux: good
NULL
macos: no data minix: good
non-NULL
netbsd: good
non-NULL
openbsd: good
non-NULL
openindiana-omnios: good
NULL
sortix: good
non-NULL
§ realloc-null-0 dragonfly: good
non-NULL
freebsd: good
non-NULL
haiku: good
non-NULL
hurd: good
non-NULL
linux: good
non-NULL
macos: no data minix: good
non-NULL
netbsd: good
non-NULL
openbsd: good
non-NULL
openindiana-omnios: good
non-NULL
sortix: good
non-NULL

udp

This suite tests the UDP stack.

Open questions:

  • What should happen if you bind to the broadcast address 255.255.255.255? It is an explicitly forbidden source address. Should it fail with EADDRNOTAVAIL, or some other error, or succeed (and in which case, what does it mean?). (bind-broadcast-0-getpeername, bind-broadcast-0-getsockname)
  • What should happen if you connect to the broadcast address 255.255.255.255? Must SO_BROADCAST be set first? (connect-broadcast-getpeername-so-broadcast, connect-broadcast-getpeername, connect-broadcast-getsockname-so-broadcast, connect-broadcast-getsockname)
  • What should happen if you bind to the first address in the lan subnet? (bind-lan-subnet-first)
  • What should happen if you connect to the any address 0.0.0.0? Is it the same as connecting to the loopback address? (connect-any-getpeername and connect-any-getsockname)
  • What should happen if you connect to port 0? Does connecting to port 0 unconnect the socket on DragonFly and Linux? (connect-any-0-getpeername, connect-any-0-getsockname, connect-loopback-0-getpeername, connect-loopback-0-getsockname)
  • What should happen if you send to the any address 0.0.0.0? (sendto-any-so-error)
  • What should happen if you send to port 0? (sendto-loopback-0-so-error)
  • Should it be possible to shutdown a socket without having connected it?
  • Should reading on a socket shutdown for read return 0 or should it fail with EWOULDBLOCK?
  • Should writing to socket shutdown for write send SIGPIPE in addition to failing with ESPIPE?
  • After shutdown for read, should data already received be avalilable for read? Some systems deliver already received asyncronous errors after shutdown, yet don't deliver already received data after shutdown.
  • After shutdown for read, should data be received? Should POLLIN be set if data is received yet recv of it would return 0.
  • Should POLLOUT be set after shutdown for write? Should POLLHUP be set?
  • Should POLLIN be set after shutdown for write if there's already received data?
  • If an asynchronous socket error is pending, which of POLLIN, POLLOUT, POLLERR should be set?
  • Should asynchronous socket errors be delivered on connect?
  • What should happen if you connect to an address on the loopback interface and then reconnect to the public internet? What happens to the locally bound address? Is the socket rebound? Or does the connect fail because there's no longer a valid route from the loopback interface to the public internet.
  • If a socket is connected, can you supply a destination address to sendto? What if the destination address is the current remote address?
  • What is the local socket name after connect to loopback and then unconnect?
  • How does unconnecting work? Can you pass a sa_family_t set to AF_UNSPEC to connect, or do you need to wrap it in a struct sockaddr, or a struct sockaddr_in?
  • What happens if you bind after unconnect?
  • Does unconnect on a freshly made socket bind the socket? (unconnect-getsockname)
  • Can you unconnect a socket that hasn't been connected yet? (unconnect-getsockname)
  • If a socket is shutdown for read, should recv return any data received after the shutdown.
  • If you receive on freshly made socket, what address should getsockname return?
  • Can you bind to the any address in the loopback network? (bind-loopback-other)
  • Can you bind to the broadcast address in the loopback network? (bind-loopback-broadcast)
  • Does SO_REUSEADDR need to set on both sockets or just the second? (bind-conflict-any-loopback-so-reuseaddr, bind-conflict-any-loopback-so-reuseaddr-both)
  • Does SO_REUSEADDR allow the same address and port to be bound twice? (bind-conflict-loopback-loopback-so-reuseaddr, bind-conflict-loopback-loopback-so-reuseaddr-both)

Running this suite has the following side effects:

  • Datagrams containing just the byte 'x' are sent to 8.8.8.8:53 (Google DNS) because I needed a legitimate address that would not send back any ICMP connection refused address. Please configure this address in udp/udp.h using BLACKHOLE_HOST and BLACKHOLE_PORT to a site of your choice.
  • Datagrams containing just the byte 'x' are sent to port 65534 and port 65535 on the loopback address 127.0.0.1.
  • This suite requires port 65535 on the loopback address 127.0.0.1 to be unused.
  • UDP sockets will be bound to the loopback interface and on the interface leading to the public internet.
dragonfly
DragonFly 5.0-RELEASE x86_64
freebsd
FreeBSD 11.1-RELEASE amd64
haiku
Haiku 1 x86_64
hurd
GNU 0.9 i686-AT386
linux
Linux 4.4.0-161-generic x86_64
macos
Darwin 17.4.0 x86_64
minix
Minix 3.4.0 i386
netbsd
NetBSD 7.1 amd64
openbsd
OpenBSD 6.4 amd64
openindiana-omnios
SunOS 5.11 i86pc
sortix
Sortix 1.1dev x86_64
§ accept dragonfly: bad
accept: EINVAL
freebsd: bad
accept: EINVAL
haiku: bad
accept: EINVAL
hurd: good
accept: ENOTSUP
linux: good
accept: ENOTSUP
macos: good
accept: ENOTSUP
minix: good
accept: ENOTSUP
netbsd: good
accept: ENOTSUP
openbsd: bad
accept: EINVAL
openindiana-omnios: good
accept: ENOTSUP
sortix: good
accept: ENOTSUP
§ accept-nonblock dragonfly: bad
accept: EINVAL
freebsd: bad
accept: EINVAL
haiku: bad
accept: EINVAL
hurd: good
accept: ENOTSUP
linux: good
accept: ENOTSUP
macos: good
accept: ENOTSUP
minix: good
accept: ENOTSUP
netbsd: good
accept: ENOTSUP
openbsd: bad
accept: EINVAL
openindiana-omnios: good
accept: ENOTSUP
sortix: good
accept: ENOTSUP
§ bind-any-0 dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-any-0-getpeername dragonfly: good
getsockname: ENOTCONN
freebsd: good
getsockname: ENOTCONN
haiku: good
getsockname: ENOTCONN
hurd: good
getsockname: ENOTCONN
linux: good
getsockname: ENOTCONN
macos: good
getsockname: ENOTCONN
minix: good
getsockname: ENOTCONN
netbsd: good
getsockname: ENOTCONN
openbsd: good
getsockname: ENOTCONN
openindiana-omnios: good
getsockname: ENOTCONN
sortix: good
getsockname: ENOTCONN
§ bind-any-0-getsockname dragonfly: good
0.0.0.0:non-zero
freebsd: good
0.0.0.0:non-zero
haiku: good
0.0.0.0:non-zero
hurd: good
0.0.0.0:non-zero
linux: good
0.0.0.0:non-zero
macos: good
0.0.0.0:non-zero
minix: good
0.0.0.0:non-zero
netbsd: good
0.0.0.0:non-zero
openbsd: good
0.0.0.0:non-zero
openindiana-omnios: good
0.0.0.0:non-zero
sortix: good
0.0.0.0:non-zero
§ bind-any-0-unbind dragonfly: good
bind AF_UNSPEC: EINVAL
freebsd: good
bind AF_UNSPEC: EINVAL
haiku: good
bind AF_UNSPEC: EAFNOSUPPORT
hurd: good
bind AF_UNSPEC: EINVAL
linux: good
bind AF_UNSPEC: EINVAL
macos: good
bind AF_UNSPEC: EINVAL
minix: good
bind AF_UNSPEC: EINVAL
netbsd: good
bind AF_UNSPEC: EINVAL
openbsd: good
bind AF_UNSPEC: EINVAL
openindiana-omnios: good
bind AF_UNSPEC: EINVAL
sortix: good
bind AF_UNSPEC: EINVAL
§ bind-broadcast-0-getpeername dragonfly: unknown
bind: EADDRNOTAVAIL
freebsd: unknown
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: unknown
getpeername: ENOTCONN
linux: unknown
getpeername: ENOTCONN
macos: unknown
bind: EADDRNOTAVAIL
minix: unknown
bind: EADDRNOTAVAIL
netbsd: unknown
bind: EADDRNOTAVAIL
openbsd: unknown
getpeername: ENOTCONN
openindiana-omnios: unknown
getpeername: ENOTCONN
sortix: unknown
getpeername: ENOTCONN
§ bind-broadcast-0-getsockname dragonfly: unknown
bind: EADDRNOTAVAIL
freebsd: unknown
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: unknown
255.255.255.255:non-zero
linux: unknown
255.255.255.255:non-zero
macos: unknown
bind: EADDRNOTAVAIL
minix: unknown
bind: EADDRNOTAVAIL
netbsd: unknown
bind: EADDRNOTAVAIL
openbsd: unknown
255.255.255.255:non-zero
openindiana-omnios: unknown
255.255.255.255:non-zero
sortix: unknown
255.255.255.255:non-zero
§ bind-conflict-any-any dragonfly: good
second bind: EADDRINUSE
freebsd: good
second bind: EADDRINUSE
haiku: good
second bind: EADDRINUSE
hurd: good
second bind: EADDRINUSE
linux: good
second bind: EADDRINUSE
macos: good
second bind: EADDRINUSE
minix: good
second bind: EADDRINUSE
netbsd: good
second bind: EADDRINUSE
openbsd: good
second bind: EADDRINUSE
openindiana-omnios: good
second bind: EADDRINUSE
sortix: good
second bind: EADDRINUSE
§ bind-conflict-any-any-so-reuseaddr dragonfly: unknown
second bind: EADDRINUSE
freebsd: unknown
second bind: EADDRINUSE
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
second bind: EADDRINUSE
minix: unknown
second bind: EADDRINUSE
netbsd: unknown
second bind: EADDRINUSE
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-any-any-so-reuseaddr-both dragonfly: unknown
second bind: EADDRINUSE
freebsd: unknown
second bind: EADDRINUSE
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRINUSE
minix: unknown
exit: 0
netbsd: unknown
second bind: EADDRINUSE
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-any-broadcast dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
second bind: EADDRINUSE
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-any-broadcast-so-reuseaddr dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-any-broadcast-so-reuseaddr-both dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: bad
second bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-any-loopback dragonfly: good
second bind: EADDRINUSE
freebsd: good
second bind: EADDRINUSE
haiku: good
second bind: EADDRINUSE
hurd: good
second bind: EADDRINUSE
linux: good
second bind: EADDRINUSE
macos: good
second bind: EADDRINUSE
minix: bad
exit: 0
netbsd: good
second bind: EADDRINUSE
openbsd: good
second bind: EADDRINUSE
openindiana-omnios: good
second bind: EADDRINUSE
sortix: good
second bind: EADDRINUSE
§ bind-conflict-any-loopback-so-reuseaddr dragonfly: unknown
exit: 0
freebsd: unknown
exit: 0
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
exit: 0
minix: unknown
exit: 0
netbsd: unknown
exit: 0
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-any-loopback-so-reuseaddr-both dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-conflict-broadcast-any dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
second bind: EADDRINUSE
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-broadcast-any-so-reuseaddr dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-broadcast-any-so-reuseaddr-both dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-broadcast-broadcast dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
second bind: EADDRINUSE
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-broadcast-broadcast-so-reuseaddr dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-broadcast-broadcast-so-reuseaddr-both dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-broadcast-loopback dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-broadcast-loopback-so-reuseaddr dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-broadcast-loopback-so-reuseaddr-both dragonfly: unknown
first bind: EADDRNOTAVAIL
freebsd: unknown
first bind: EADDRNOTAVAIL
haiku: bad
first bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
first bind: EADDRNOTAVAIL
minix: unknown
first bind: EADDRNOTAVAIL
netbsd: unknown
first bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-loopback-any dragonfly: good
second bind: EADDRINUSE
freebsd: good
second bind: EADDRINUSE
haiku: good
second bind: EADDRINUSE
hurd: good
second bind: EADDRINUSE
linux: good
second bind: EADDRINUSE
macos: good
second bind: EADDRINUSE
minix: bad
exit: 0
netbsd: good
second bind: EADDRINUSE
openbsd: good
second bind: EADDRINUSE
openindiana-omnios: good
second bind: EADDRINUSE
sortix: good
second bind: EADDRINUSE
§ bind-conflict-loopback-any-so-reuseaddr dragonfly: unknown
exit: 0
freebsd: unknown
exit: 0
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
exit: 0
minix: unknown
exit: 0
netbsd: unknown
exit: 0
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-loopback-any-so-reuseaddr-both dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-conflict-loopback-broadcast dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: bad
second bind: EADDRINUSE
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-loopback-broadcast-so-reuseaddr dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: bad
second bind: EADDRINUSE
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-loopback-broadcast-so-reuseaddr-both dragonfly: unknown
second bind: EADDRNOTAVAIL
freebsd: unknown
second bind: EADDRNOTAVAIL
haiku: bad
second bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRNOTAVAIL
minix: unknown
second bind: EADDRNOTAVAIL
netbsd: unknown
second bind: EADDRNOTAVAIL
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ bind-conflict-loopback-loopback dragonfly: good
second bind: EADDRINUSE
freebsd: good
second bind: EADDRINUSE
haiku: good
second bind: EADDRINUSE
hurd: good
second bind: EADDRINUSE
linux: good
second bind: EADDRINUSE
macos: good
second bind: EADDRINUSE
minix: good
second bind: EADDRINUSE
netbsd: good
second bind: EADDRINUSE
openbsd: good
second bind: EADDRINUSE
openindiana-omnios: good
second bind: EADDRINUSE
sortix: good
second bind: EADDRINUSE
§ bind-conflict-loopback-loopback-so-reuseaddr dragonfly: unknown
second bind: EADDRINUSE
freebsd: unknown
second bind: EADDRINUSE
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
second bind: EADDRINUSE
linux: unknown
second bind: EADDRINUSE
macos: unknown
second bind: EADDRINUSE
minix: unknown
second bind: EADDRINUSE
netbsd: unknown
second bind: EADDRINUSE
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-conflict-loopback-loopback-so-reuseaddr-both dragonfly: unknown
second bind: EADDRINUSE
freebsd: unknown
second bind: EADDRINUSE
haiku: unknown
second bind: EADDRINUSE
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second bind: EADDRINUSE
minix: unknown
exit: 0
netbsd: unknown
second bind: EADDRINUSE
openbsd: unknown
second bind: EADDRINUSE
openindiana-omnios: unknown
exit: 0
sortix: unknown
second bind: EADDRINUSE
§ bind-connect-self dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-connect-self-send dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-connect-self-send-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ bind-connect-self-send-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ bind-connect-self-send-shutdown-r-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN | POLLOUT
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLOUT
§ bind-connect-self-send-shutdown-r-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: unknown
x
linux: unknown
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ bind-connect-self-send-shutdown-r-recv-recv dragonfly: unknown
first recv: EOF
freebsd: unknown
first recv: EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
first recv: x
second recv: EINVAL
linux: unknown
first recv: x
second recv: EWOULDBLOCK
macos: unknown
first recv: EOF
minix: unknown
first recv: EOF
netbsd: unknown
first recv: EOF
openbsd: unknown
first recv: EOF
openindiana-omnios: unknown
first recv: EOF
sortix: unknown
first recv: EOF
§ bind-connect-self-send-shutdown-rw-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLHUP
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: bad
0 | POLLIN | POLLOUT | POLLHUP
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ bind-connect-self-send-shutdown-rw-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: unknown
x
linux: unknown
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ bind-connect-self-send-shutdown-rw-recv-recv dragonfly: unknown
first recv: EOF
freebsd: unknown
first recv: EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
first recv: x
second recv: EINVAL
linux: unknown
first recv: x
second recv: EWOULDBLOCK
macos: unknown
first recv: EOF
minix: unknown
first recv: EOF
netbsd: unknown
first recv: EOF
openbsd: unknown
first recv: EOF
openindiana-omnios: unknown
first recv: EOF
sortix: unknown
first recv: EOF
§ bind-connect-self-shutdown-r-send-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN | POLLOUT
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLOUT
§ bind-connect-self-shutdown-r-send-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
x
linux: bad
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ bind-lan-subnet-broadcast dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: bad
bind: EADDRNOTAVAIL
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-lan-subnet-first dragonfly: unknown
bind: EADDRNOTAVAIL
freebsd: unknown
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
bind: EADDRNOTAVAIL
minix: unknown
bind: EADDRNOTAVAIL
netbsd: unknown
bind: EADDRNOTAVAIL
openbsd: unknown
bind: EADDRNOTAVAIL
openindiana-omnios: unknown
exit: 0
sortix: unknown
bind: EADDRNOTAVAIL
§ bind-lan-subnet-wrong dragonfly: good
bind: EADDRNOTAVAIL
freebsd: good
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: good
bind: EADDRNOTAVAIL
linux: good
bind: EADDRNOTAVAIL
macos: good
bind: EADDRNOTAVAIL
minix: good
bind: EADDRNOTAVAIL
netbsd: good
bind: EADDRNOTAVAIL
openbsd: good
bind: EADDRNOTAVAIL
openindiana-omnios: good
bind: EADDRNOTAVAIL
sortix: good
bind: EADDRNOTAVAIL
§ bind-loopback-0-getpeername dragonfly: good
getsockname: ENOTCONN
freebsd: good
getsockname: ENOTCONN
haiku: good
getsockname: ENOTCONN
hurd: good
getsockname: ENOTCONN
linux: good
getsockname: ENOTCONN
macos: good
getsockname: ENOTCONN
minix: good
getsockname: ENOTCONN
netbsd: good
getsockname: ENOTCONN
openbsd: good
getsockname: ENOTCONN
openindiana-omnios: good
getsockname: ENOTCONN
sortix: good
getsockname: ENOTCONN
§ bind-loopback-0-getsockname dragonfly: good
127.0.0.1:non-zero
freebsd: good
127.0.0.1:non-zero
haiku: good
127.0.0.1:non-zero
hurd: good
127.0.0.1:non-zero
linux: good
127.0.0.1:non-zero
macos: good
127.0.0.1:non-zero
minix: good
127.0.0.1:non-zero
netbsd: good
127.0.0.1:non-zero
openbsd: good
127.0.0.1:non-zero
openindiana-omnios: good
127.0.0.1:non-zero
sortix: good
127.0.0.1:non-zero
§ bind-loopback-broadcast dragonfly: unknown
bind: EADDRNOTAVAIL
freebsd: unknown
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
bind: EADDRNOTAVAIL
minix: unknown
bind: EADDRNOTAVAIL
netbsd: unknown
bind: EADDRNOTAVAIL
openbsd: unknown
bind: EADDRNOTAVAIL
openindiana-omnios: unknown
bind: EADDRNOTAVAIL
sortix: unknown
exit: 0
§ bind-loopback-other dragonfly: unknown
bind: EADDRNOTAVAIL
freebsd: unknown
bind: EADDRNOTAVAIL
haiku: bad
bind: General system error
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
bind: EADDRNOTAVAIL
minix: unknown
bind: EADDRNOTAVAIL
netbsd: unknown
bind: EADDRNOTAVAIL
openbsd: unknown
bind: EADDRNOTAVAIL
openindiana-omnios: unknown
bind: EADDRNOTAVAIL
sortix: unknown
bind: EADDRNOTAVAIL
§ bind-rebind dragonfly: good
second bind: EINVAL
freebsd: good
second bind: EINVAL
haiku: bad
exit: 0
hurd: good
second bind: EINVAL
linux: good
second bind: EINVAL
macos: good
second bind: EINVAL
minix: good
second bind: EINVAL
netbsd: good
second bind: EINVAL
openbsd: good
second bind: EINVAL
openindiana-omnios: good
second bind: EINVAL
sortix: good
second bind: EINVAL
§ bind-sendto-self dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ bind-sendto-self-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ bind-socket-sendto-first-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ bind-socket-sendto-first-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ bind-socket-sendto-first-shutdown-r-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLOUT
§ bind-socket-sendto-first-shutdown-r-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ bind-socket-sendto-first-shutdown-rw-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLHUP
§ bind-socket-sendto-first-shutdown-rw-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ bind-socket-sendto-first-shutdown-w-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLHUP
§ bind-socket-sendto-first-shutdown-w-recv dragonfly: unknown
x
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
x
netbsd: unknown
x
openbsd: unknown
x
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
x
§ bind-socket-shutdown-r-sendto-first-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLOUT
§ bind-socket-shutdown-r-sendto-first-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ bind-socket-shutdown-rw-sendto-first-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLHUP
§ bind-socket-shutdown-rw-sendto-first-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ bind-socket-shutdown-w-sendto-first-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
0 | POLLIN | POLLHUP
§ bind-socket-shutdown-w-sendto-first-recv dragonfly: unknown
x
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
x
netbsd: unknown
x
openbsd: unknown
x
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
x
§ connect-any-0-getpeername dragonfly: unknown
getpeername: ENOTCONN
freebsd: unknown
connect: EADDRNOTAVAIL
haiku: unknown
127.0.0.1:0
hurd: unknown
127.0.0.1:0
linux: unknown
getpeername: ENOTCONN
macos: unknown
connect: EADDRNOTAVAIL
minix: unknown
connect: EHOSTUNREACH
netbsd: unknown
connect: EADDRNOTAVAIL
openbsd: unknown
connect: EADDRNOTAVAIL
openindiana-omnios: unknown
connect: EADDRNOTAVAIL
sortix: unknown
connect: EADDRNOTAVAIL
§ connect-any-0-getsockname dragonfly: unknown
0.0.0.0:non-zero
freebsd: unknown
connect: EADDRNOTAVAIL
haiku: unknown
127.0.0.1:non-zero
hurd: unknown
127.0.0.1:non-zero
linux: unknown
127.0.0.1:non-zero
macos: unknown
connect: EADDRNOTAVAIL
minix: unknown
connect: EHOSTUNREACH
netbsd: unknown
connect: EADDRNOTAVAIL
openbsd: unknown
connect: EADDRNOTAVAIL
openindiana-omnios: unknown
connect: EADDRNOTAVAIL
sortix: unknown
connect: EADDRNOTAVAIL
§ connect-any-getpeername dragonfly: unknown
127.0.0.1:65535
freebsd: unknown
127.0.0.1:65535
haiku: unknown
127.0.0.1:65535
hurd: unknown
127.0.0.1:65535
linux: unknown
127.0.0.1:65535
macos: unknown
127.0.0.1:65535
minix: unknown
connect: EHOSTUNREACH
netbsd: unknown
127.0.0.1:65535
openbsd: unknown
0.0.0.0:65535
openindiana-omnios: unknown
127.0.0.1:65535
sortix: unknown
connect: ENETUNREACH
§ connect-any-getsockname dragonfly: unknown
127.0.0.1:non-zero
freebsd: unknown
127.0.0.1:non-zero
haiku: unknown
127.0.0.1:non-zero
hurd: unknown
127.0.0.1:non-zero
linux: unknown
127.0.0.1:non-zero
macos: unknown
127.0.0.1:non-zero
minix: unknown
connect: EHOSTUNREACH
netbsd: unknown
127.0.0.1:non-zero
openbsd: unknown
192.168.1.x:non-zero
openindiana-omnios: unknown
127.0.0.1:non-zero
sortix: unknown
connect: ENETUNREACH
§ connect-broadcast-getpeername dragonfly: good
255.255.255.255:1
freebsd: good
255.255.255.255:1
haiku: good
255.255.255.255:1
hurd: good
connect: EACCES
linux: good
connect: EACCES
macos: good
255.255.255.255:1
minix: good
255.255.255.255:1
netbsd: bad
192.168.87.255:1
openbsd: good
255.255.255.255:1
openindiana-omnios: good
255.255.255.255:1
sortix: good
255.255.255.255:1
§ connect-broadcast-getpeername-so-broadcast dragonfly: good
255.255.255.255:1
freebsd: good
255.255.255.255:1
haiku: good
255.255.255.255:1
hurd: good
255.255.255.255:1
linux: good
255.255.255.255:1
macos: good
255.255.255.255:1
minix: good
255.255.255.255:1
netbsd: bad
192.168.87.255:1
openbsd: good
255.255.255.255:1
openindiana-omnios: good
255.255.255.255:1
sortix: good
255.255.255.255:1
§ connect-broadcast-getsockname dragonfly: good
192.168.1.x:non-zero
freebsd: good
192.168.1.x:non-zero
haiku: good
192.168.1.x:non-zero
hurd: good
connect: EACCES
linux: good
connect: EACCES
macos: good
192.168.1.x:non-zero
minix: good
192.168.1.x:non-zero
netbsd: good
192.168.1.x:non-zero
openbsd: good
192.168.1.x:non-zero
openindiana-omnios: good
192.168.1.x:non-zero
sortix: good
192.168.1.x:non-zero
§ connect-broadcast-getsockname-so-broadcast dragonfly: good
192.168.1.x:non-zero
freebsd: good
192.168.1.x:non-zero
haiku: good
192.168.1.x:non-zero
hurd: good
192.168.1.x:non-zero
linux: good
192.168.1.x:non-zero
macos: good
192.168.1.x:non-zero
minix: good
192.168.1.x:non-zero
netbsd: good
192.168.1.x:non-zero
openbsd: good
192.168.1.x:non-zero
openindiana-omnios: good
192.168.1.x:non-zero
sortix: good
192.168.1.x:non-zero
§ connect-getpeername dragonfly: good
127.0.0.1:65535
freebsd: good
127.0.0.1:65535
haiku: good
127.0.0.1:65535
hurd: good
127.0.0.1:65535
linux: good
127.0.0.1:65535
macos: good
127.0.0.1:65535
minix: good
127.0.0.1:65535
netbsd: good
127.0.0.1:65535
openbsd: good
127.0.0.1:65535
openindiana-omnios: good
127.0.0.1:65535
sortix: good
127.0.0.1:65535
§ connect-loopback-0-getpeername dragonfly: unknown
getpeername: ENOTCONN
freebsd: unknown
connect: EADDRNOTAVAIL
haiku: unknown
127.0.0.1:0
hurd: unknown
127.0.0.1:0
linux: unknown
getpeername: ENOTCONN
macos: unknown
connect: EADDRNOTAVAIL
minix: unknown
connect: EADDRNOTAVAIL
netbsd: unknown
connect: EADDRNOTAVAIL
openbsd: unknown
connect: EADDRNOTAVAIL
openindiana-omnios: unknown
connect: EADDRNOTAVAIL
sortix: unknown
connect: EADDRNOTAVAIL
§ connect-loopback-0-getsockname dragonfly: unknown
0.0.0.0:non-zero
freebsd: unknown
connect: EADDRNOTAVAIL
haiku: unknown
127.0.0.1:non-zero
hurd: unknown
127.0.0.1:non-zero
linux: unknown
127.0.0.1:non-zero
macos: unknown
connect: EADDRNOTAVAIL
minix: unknown
connect: EADDRNOTAVAIL
netbsd: unknown
connect: EADDRNOTAVAIL
openbsd: unknown
connect: EADDRNOTAVAIL
openindiana-omnios: unknown
connect: EADDRNOTAVAIL
sortix: unknown
connect: EADDRNOTAVAIL
§ connect-loopback-get-so-bindtodevice dragonfly: good
getsockopt: SO_BINDTODEVICE: ENOSYS
freebsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
haiku: good
getsockopt: SO_BINDTODEVICE: ENOPROTOOPT
hurd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
linux: good
macos: good
getsockopt: SO_BINDTODEVICE: ENOSYS
minix: good
getsockopt: SO_BINDTODEVICE: ENOSYS
netbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openindiana-omnios: good
getsockopt: SO_BINDTODEVICE: ENOSYS
sortix: good
§ connect-loopback-getpeername dragonfly: good
127.0.0.1:65535
freebsd: good
127.0.0.1:65535
haiku: good
127.0.0.1:65535
hurd: good
127.0.0.1:65535
linux: good
127.0.0.1:65535
macos: good
127.0.0.1:65535
minix: good
127.0.0.1:65535
netbsd: good
127.0.0.1:65535
openbsd: good
127.0.0.1:65535
openindiana-omnios: good
127.0.0.1:65535
sortix: good
127.0.0.1:65535
§ connect-loopback-getsockname dragonfly: good
127.0.0.1:non-zero
freebsd: good
127.0.0.1:non-zero
haiku: good
127.0.0.1:non-zero
hurd: good
127.0.0.1:non-zero
linux: good
127.0.0.1:non-zero
macos: good
127.0.0.1:non-zero
minix: good
127.0.0.1:non-zero
netbsd: good
127.0.0.1:non-zero
openbsd: good
127.0.0.1:non-zero
openindiana-omnios: good
127.0.0.1:non-zero
sortix: good
127.0.0.1:non-zero
§ connect-loopback-reconnect-loopback-getsockname dragonfly: good
127.0.0.1:same port
freebsd: good
127.0.0.1:same port
haiku: good
127.0.0.1:same port
hurd: good
127.0.0.1:same port
linux: good
127.0.0.1:same port
macos: good
127.0.0.1:same port
minix: good
127.0.0.1:same port
netbsd: good
127.0.0.1:same port
openbsd: good
127.0.0.1:same port
openindiana-omnios: good
127.0.0.1:same port
sortix: good
127.0.0.1:same port
§ connect-loopback-reconnect-wan-getsockname dragonfly: unknown
192.168.1.x:same port
freebsd: unknown
192.168.1.x:same port
haiku: unknown
192.168.1.x:same port
hurd: unknown
second connect: EINVAL
linux: unknown
second connect: EINVAL
macos: unknown
192.168.1.x:same port
minix: bad
127.0.0.1:same port
netbsd: unknown
192.168.1.x:same port
openbsd: unknown
192.168.1.x:same port
openindiana-omnios: unknown
192.168.1.x:same port
sortix: unknown
second connect: ENETUNREACH
§ connect-loopback-unconnect-rebind-any-getsockname dragonfly: unknown
bind: EINVAL
freebsd: bad
second connect: EAFNOSUPPORT
haiku: unknown
0.0.0.0:non-zero
hurd: unknown
bind: EINVAL
linux: unknown
0.0.0.0:non-zero
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
bind: EINVAL
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
bind: EINVAL
sortix: unknown
bind: EINVAL
§ connect-loopback-unconnect-rebind-loopback-getsockname dragonfly: unknown
bind: EINVAL
freebsd: bad
second connect: EAFNOSUPPORT
haiku: unknown
127.0.0.1:non-zero
hurd: unknown
bind: EINVAL
linux: unknown
127.0.0.1:non-zero
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
bind: EINVAL
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
bind: EINVAL
sortix: unknown
bind: EINVAL
§ connect-poll dragonfly: good
0 | POLLOUT
freebsd: good
0 | POLLOUT
haiku: good
0 | POLLOUT
hurd: good
0 | POLLOUT
linux: good
0 | POLLOUT
macos: good
0 | POLLOUT
minix: good
0 | POLLOUT
netbsd: good
0 | POLLOUT
openbsd: good
0 | POLLOUT
openindiana-omnios: good
0 | POLLOUT
sortix: good
0 | POLLOUT
§ connect-reconnect dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-reconnect-any-getpeername dragonfly: unknown
getpeername: ENOTCONN
freebsd: unknown
second connect: EADDRNOTAVAIL
haiku: bad
127.0.0.1:0
hurd: bad
127.0.0.1:0
linux: unknown
getpeername: ENOTCONN
macos: unknown
second connect: EADDRNOTAVAIL
minix: unknown
second connect: EHOSTUNREACH
netbsd: unknown
second connect: EADDRNOTAVAIL
openbsd: unknown
second connect: EADDRNOTAVAIL
openindiana-omnios: unknown
second connect: EADDRNOTAVAIL
sortix: unknown
second connect: EADDRNOTAVAIL
§ connect-reconnect-getpeername dragonfly: good
127.0.0.1:65534
freebsd: good
127.0.0.1:65534
haiku: good
127.0.0.1:65534
hurd: good
127.0.0.1:65534
linux: good
127.0.0.1:65534
macos: good
127.0.0.1:65534
minix: good
127.0.0.1:65534
netbsd: good
127.0.0.1:65534
openbsd: good
127.0.0.1:65534
openindiana-omnios: good
127.0.0.1:65534
sortix: good
127.0.0.1:65534
§ connect-reconnect-same dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-recv dragonfly: good
recv: EWOULDBLOCK
freebsd: good
recv: EWOULDBLOCK
haiku: good
recv: EWOULDBLOCK
hurd: good
recv: EWOULDBLOCK
linux: good
recv: EWOULDBLOCK
macos: good
recv: EWOULDBLOCK
minix: good
recv: EWOULDBLOCK
netbsd: good
recv: EWOULDBLOCK
openbsd: good
recv: EWOULDBLOCK
openindiana-omnios: good
recv: EWOULDBLOCK
sortix: good
recv: EWOULDBLOCK
§ connect-send-error-accept dragonfly: bad
accept: EINVAL
freebsd: bad
accept: EINVAL
haiku: bad
accept: EINVAL
hurd: good
accept: ENOTSUP
linux: good
accept: ENOTSUP
macos: good
accept: ENOTSUP
minix: good
accept: ENOTSUP
netbsd: good
accept: ENOTSUP
openbsd: bad
accept: EINVAL
openindiana-omnios: good
accept: ENOTSUP
sortix: good
accept: ENOTSUP
§ connect-send-error-getpeername dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-send-error-getsockname dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-send-error-listen dragonfly: bad
listen: EINVAL
freebsd: good
listen: ENOTSUP
haiku: good
listen: ENOTSUP
hurd: good
listen: ENOTSUP
linux: good
listen: ENOTSUP
macos: good
listen: ENOTSUP
minix: good
listen: ENOTSUP
netbsd: bad
listen: EINVAL
openbsd: good
listen: ENOTSUP
openindiana-omnios: good
listen: ENOTSUP
sortix: good
listen: ENOTSUP
§ connect-send-error-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: unknown
0 | POLLIN | POLLOUT | POLLERR
hurd: unknown
0 | POLLERR
linux: unknown
0 | POLLOUT | POLLERR
macos: unknown
0 | POLLIN | POLLOUT
minix: unknown
0 | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLOUT
§ connect-send-error-poll-poll dragonfly: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
freebsd: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
haiku: unknown
first poll: 0 | POLLIN | POLLOUT | POLLERR
second poll: 0 | POLLIN | POLLOUT | POLLERR
hurd: unknown
first poll: 0 | POLLERR
second poll: 0 | POLLERR
linux: unknown
first poll: 0 | POLLOUT | POLLERR
second poll: 0 | POLLOUT | POLLERR
macos: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
minix: unknown
first poll: 0 | POLLOUT
second poll: 0 | POLLOUT
netbsd: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
openbsd: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
openindiana-omnios: unknown
first poll: 0 | POLLIN | POLLOUT
second poll: 0 | POLLIN | POLLOUT
sortix: unknown
first poll: 0 | POLLOUT
second poll: 0 | POLLOUT
§ connect-send-error-poll-so-error-poll dragonfly: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
freebsd: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
haiku: unknown
first poll: 0 | POLLIN | POLLOUT | POLLERR
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
hurd: unknown
first poll: 0 | POLLERR
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
linux: unknown
first poll: 0 | POLLOUT | POLLERR
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
macos: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
minix: unknown
first poll: 0 | POLLOUT
SO_ERROR: no error
second poll: 0 | POLLOUT
netbsd: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
openbsd: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
openindiana-omnios: unknown
first poll: 0 | POLLIN | POLLOUT
SO_ERROR: ECONNREFUSED
second poll: 0 | POLLOUT
sortix: unknown
first poll: 0 | POLLOUT
SO_ERROR: no error
second poll: 0 | POLLOUT
§ connect-send-error-reconnect dragonfly: unknown
exit: 0
freebsd: unknown
exit: 0
haiku: unknown
exit: 0
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
second connect: ECONNREFUSED
minix: unknown
exit: 0
netbsd: unknown
second connect: ECONNREFUSED
openbsd: unknown
second connect: ECONNREFUSED
openindiana-omnios: unknown
second connect: ECONNREFUSED
sortix: unknown
exit: 0
§ connect-send-error-recv dragonfly: good
recv: ECONNREFUSED
freebsd: good
recv: ECONNREFUSED
haiku: good
recv: ECONNREFUSED
hurd: good
recv: ECONNREFUSED
linux: good
recv: ECONNREFUSED
macos: good
recv: ECONNREFUSED
minix: bad
recv: EWOULDBLOCK
netbsd: good
recv: ECONNREFUSED
openbsd: good
recv: ECONNREFUSED
openindiana-omnios: good
recv: ECONNREFUSED
sortix: bad
recv: EWOULDBLOCK
§ connect-send-error-send dragonfly: good
second send: ECONNREFUSED
freebsd: good
second send: ECONNREFUSED
haiku: bad
second send: no error
hurd: good
second send: ECONNREFUSED
linux: good
second send: ECONNREFUSED
macos: good
second send: ECONNREFUSED
minix: bad
second send: no error
netbsd: good
second send: ECONNREFUSED
openbsd: good
second send: ECONNREFUSED
openindiana-omnios: good
second send: ECONNREFUSED
sortix: bad
second send: no error
§ connect-send-error-send-send dragonfly: good
second send: ECONNREFUSED
third send: no error
freebsd: good
second send: ECONNREFUSED
third send: no error
haiku: bad
second send: no error
third send: no error
hurd: good
second send: ECONNREFUSED
third send: no error
linux: good
second send: ECONNREFUSED
third send: no error
macos: good
second send: ECONNREFUSED
third send: no error
minix: bad
second send: no error
third send: no error
netbsd: good
second send: ECONNREFUSED
third send: no error
openbsd: good
second send: ECONNREFUSED
third send: no error
openindiana-omnios: good
second send: ECONNREFUSED
third send: no error
sortix: bad
second send: no error
third send: no error
§ connect-send-error-shutdown-r-recv dragonfly: unknown
recv: ECONNREFUSED
freebsd: unknown
recv: ECONNREFUSED
haiku: bad
shutdown: ENOTSUP
hurd: unknown
recv: ECONNREFUSED
linux: unknown
recv: ECONNREFUSED
macos: unknown
recv: ECONNREFUSED
minix: unknown
EOF
netbsd: unknown
recv: ECONNREFUSED
openbsd: unknown
recv: ECONNREFUSED
openindiana-omnios: unknown
recv: ECONNREFUSED
sortix: unknown
EOF
§ connect-send-error-shutdown-r-send dragonfly: good
second send: ECONNREFUSED
freebsd: good
second send: ECONNREFUSED
haiku: bad
shutdown: ENOTSUP
hurd: good
second send: ECONNREFUSED
linux: good
second send: ECONNREFUSED
macos: good
second send: ECONNREFUSED
minix: bad
exit: 0
netbsd: good
second send: ECONNREFUSED
openbsd: good
second send: ECONNREFUSED
openindiana-omnios: good
second send: ECONNREFUSED
sortix: bad
exit: 0
§ connect-send-error-shutdown-rw-recv dragonfly: unknown
recv: ECONNREFUSED
freebsd: unknown
recv: ECONNREFUSED
haiku: bad
shutdown: ENOTSUP
hurd: unknown
recv: ECONNREFUSED
linux: unknown
recv: ECONNREFUSED
macos: unknown
recv: ECONNREFUSED
minix: unknown
EOF
netbsd: unknown
recv: ECONNREFUSED
openbsd: unknown
recv: ECONNREFUSED
openindiana-omnios: unknown
recv: ECONNREFUSED
sortix: unknown
EOF
§ connect-send-error-shutdown-rw-send dragonfly: unknown
second send: EPIPE
SIGPIPE
freebsd: unknown
second send: EPIPE
SIGPIPE
haiku: bad
shutdown: ENOTSUP
hurd: unknown
second send: EPIPE
SIGPIPE
linux: unknown
second send: ECONNREFUSED
macos: unknown
second send: EPIPE
SIGPIPE
minix: unknown
second send: EPIPE
netbsd: unknown
second send: EPIPE
SIGPIPE
openbsd: unknown
second send: EPIPE
SIGPIPE
openindiana-omnios: unknown
second send: EPIPE
SIGPIPE
sortix: unknown
second send: EPIPE
SIGPIPE
§ connect-send-error-shutdown-rw-so-error dragonfly: good
SO_ERROR: ECONNREFUSED
freebsd: good
SO_ERROR: ECONNREFUSED
haiku: bad
shutdown: ENOTSUP
hurd: good
SO_ERROR: ECONNREFUSED
linux: good
SO_ERROR: ECONNREFUSED
macos: good
SO_ERROR: ECONNREFUSED
minix: bad
SO_ERROR: no error
netbsd: good
SO_ERROR: ECONNREFUSED
openbsd: good
SO_ERROR: ECONNREFUSED
openindiana-omnios: good
SO_ERROR: ECONNREFUSED
sortix: bad
SO_ERROR: no error
§ connect-send-error-shutdown-w-recv dragonfly: good
recv: ECONNREFUSED
freebsd: good
recv: ECONNREFUSED
haiku: bad
shutdown: ENOTSUP
hurd: good
recv: ECONNREFUSED
linux: good
recv: ECONNREFUSED
macos: good
recv: ECONNREFUSED
minix: bad
recv: EWOULDBLOCK
netbsd: good
recv: ECONNREFUSED
openbsd: good
recv: ECONNREFUSED
openindiana-omnios: good
recv: ECONNREFUSED
sortix: bad
recv: EWOULDBLOCK
§ connect-send-error-shutdown-w-send dragonfly: unknown
second send: EPIPE
SIGPIPE
freebsd: unknown
second send: EPIPE
SIGPIPE
haiku: bad
shutdown: ENOTSUP
hurd: unknown
second send: EPIPE
SIGPIPE
linux: unknown
second send: ECONNREFUSED
macos: unknown
second send: EPIPE
SIGPIPE
minix: unknown
second send: EPIPE
netbsd: unknown
second send: EPIPE
SIGPIPE
openbsd: unknown
second send: EPIPE
SIGPIPE
openindiana-omnios: unknown
second send: EPIPE
SIGPIPE
sortix: unknown
second send: EPIPE
SIGPIPE
§ connect-send-error-so-error-send-send dragonfly: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
freebsd: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
haiku: bad
SO_ERROR: ECONNREFUSED
second send: no error
third send: no error
hurd: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
linux: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
macos: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
minix: bad
SO_ERROR: no error
second send: no error
third send: no error
netbsd: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
openbsd: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
openindiana-omnios: good
SO_ERROR: ECONNREFUSED
second send: no error
third send: ECONNREFUSED
sortix: bad
SO_ERROR: no error
second send: no error
third send: no error
§ connect-sendto-null dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: bad
sendto: EINVAL
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-sendto-other dragonfly: good
exit: 0
freebsd: good
sendto: EISCONN
haiku: good
sendto: EISCONN
hurd: good
exit: 0
linux: good
exit: 0
macos: good
sendto: EISCONN
minix: good
exit: 0
netbsd: good
sendto: EISCONN
openbsd: good
sendto: EISCONN
openindiana-omnios: good
sendto: EISCONN
sortix: good
sendto: EISCONN
§ connect-sendto-same dragonfly: good
exit: 0
freebsd: good
sendto: EISCONN
haiku: good
sendto: EISCONN
hurd: good
exit: 0
linux: good
exit: 0
macos: good
sendto: EISCONN
minix: good
exit: 0
netbsd: good
sendto: EISCONN
openbsd: good
sendto: EISCONN
openindiana-omnios: good
sendto: EISCONN
sortix: good
sendto: EISCONN
§ connect-shutdown dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: bad
shutdown: ENOTSUP
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-shutdown-r-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
recv: EINVAL
linux: unknown
recv: EWOULDBLOCK
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-shutdown-r-send dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: bad
shutdown: ENOTSUP
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-shutdown-r-unconnect-recv dragonfly: unknown
EOF
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: bad
recv: EINVAL
linux: unknown
recv: EWOULDBLOCK
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
EOF
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-shutdown-r-unconnect-send dragonfly: good
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
second connect: EAFNOSUPPORT
minix: good
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-shutdown-reconnect dragonfly: good
exit: 0
freebsd: good
exit: 0
haiku: bad
shutdown: ENOTSUP
hurd: good
exit: 0
linux: good
exit: 0
macos: good
exit: 0
minix: good
exit: 0
netbsd: good
exit: 0
openbsd: good
exit: 0
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-shutdown-rw-reconnect-send dragonfly: unknown
send: EPIPE
SIGPIPE
freebsd: unknown
send: EPIPE
SIGPIPE
haiku: bad
shutdown: ENOTSUP
hurd: unknown
send: EPIPE
SIGPIPE
linux: unknown
send: EPIPE
macos: unknown
send: EPIPE
SIGPIPE
minix: unknown
send: EPIPE
netbsd: unknown
send: EPIPE
SIGPIPE
openbsd: unknown
send: EPIPE
SIGPIPE
openindiana-omnios: unknown
send: EPIPE
SIGPIPE
sortix: unknown
send: EPIPE
SIGPIPE
§ connect-shutdown-rw-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
recv: EINVAL
linux: unknown
recv: EWOULDBLOCK
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-shutdown-rw-send dragonfly: unknown
send: EPIPE
SIGPIPE
freebsd: unknown
send: EPIPE
SIGPIPE
haiku: bad
shutdown: ENOTSUP
hurd: unknown
send: EPIPE
SIGPIPE
linux: unknown
send: EPIPE
macos: unknown
send: EPIPE
SIGPIPE
minix: unknown
send: EPIPE
netbsd: unknown
send: EPIPE
SIGPIPE
openbsd: unknown
send: EPIPE
SIGPIPE
openindiana-omnios: unknown
send: EPIPE
SIGPIPE
sortix: unknown
send: EPIPE
SIGPIPE
§ connect-shutdown-rw-unconnect-recv dragonfly: unknown
EOF
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: bad
recv: EINVAL
linux: unknown
recv: EWOULDBLOCK
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
EOF
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-shutdown-rw-unconnect-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
sendto: EPIPE
SIGPIPE
linux: unknown
sendto: EPIPE
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
sendto: EPIPE
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
sendto: EPIPE
SIGPIPE
sortix: unknown
sendto: EPIPE
SIGPIPE
§ connect-shutdown-w-recv dragonfly: good
recv: EWOULDBLOCK
freebsd: good
recv: EWOULDBLOCK
haiku: bad
shutdown: ENOTSUP
hurd: good
recv: EWOULDBLOCK
linux: good
recv: EWOULDBLOCK
macos: good
recv: EWOULDBLOCK
minix: good
recv: EWOULDBLOCK
netbsd: good
recv: EWOULDBLOCK
openbsd: good
recv: EWOULDBLOCK
openindiana-omnios: good
recv: EWOULDBLOCK
sortix: good
recv: EWOULDBLOCK
§ connect-shutdown-w-send dragonfly: unknown
send: EPIPE
SIGPIPE
freebsd: unknown
send: EPIPE
SIGPIPE
haiku: bad
shutdown: ENOTSUP
hurd: unknown
send: EPIPE
SIGPIPE
linux: unknown
send: EPIPE
macos: unknown
send: EPIPE
SIGPIPE
minix: unknown
send: EPIPE
netbsd: unknown
send: EPIPE
SIGPIPE
openbsd: unknown
send: EPIPE
SIGPIPE
openindiana-omnios: unknown
send: EPIPE
SIGPIPE
sortix: unknown
send: EPIPE
SIGPIPE
§ connect-shutdown-w-unconnect-recv dragonfly: good
recv: EWOULDBLOCK
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: good
recv: EWOULDBLOCK
linux: good
recv: EWOULDBLOCK
macos: bad
second connect: EAFNOSUPPORT
minix: good
recv: EWOULDBLOCK
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: good
recv: EWOULDBLOCK
sortix: good
recv: EWOULDBLOCK
§ connect-shutdown-w-unconnect-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
sendto: EPIPE
SIGPIPE
linux: unknown
sendto: EPIPE
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
sendto: EPIPE
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
sendto: EPIPE
SIGPIPE
sortix: unknown
sendto: EPIPE
SIGPIPE
§ connect-unconnect dragonfly: good
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
second connect: EAFNOSUPPORT
minix: good
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-unconnect-getpeername dragonfly: good
getpeername: ENOTCONN
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
0.0.0.0:0
hurd: good
getpeername: ENOTCONN
linux: good
getpeername: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: good
getpeername: ENOTCONN
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: good
getpeername: ENOTCONN
sortix: good
getpeername: ENOTCONN
§ connect-unconnect-getsockname dragonfly: unknown
0.0.0.0:non-zero
freebsd: bad
second connect: EAFNOSUPPORT
haiku: unknown
127.0.0.1:non-zero
hurd: unknown
0.0.0.0:non-zero
linux: unknown
0.0.0.0:0
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
127.0.0.1:non-zero
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
0.0.0.0:non-zero
sortix: unknown
127.0.0.1:non-zero
§ connect-unconnect-sa-family dragonfly: bad
second connect: EDOM
freebsd: unknown
second connect: EINVAL
haiku: unknown
exit: 0
hurd: unknown
second connect: EINVAL
linux: unknown
exit: 0
macos: unknown
second connect: EINVAL
minix: unknown
second connect: EINVAL
netbsd: unknown
second connect: EINVAL
openbsd: unknown
second connect: EINVAL
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ connect-unconnect-shutdown-r-recv dragonfly: unknown
EOF
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
EOF
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-unconnect-shutdown-r-send dragonfly: unknown
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ connect-unconnect-shutdown-rw-recv dragonfly: unknown
EOF
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
EOF
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ connect-unconnect-shutdown-rw-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
sendto: EPIPE
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
sendto: EPIPE
SIGPIPE
sortix: unknown
sendto: EPIPE
SIGPIPE
§ connect-unconnect-shutdown-w-recv dragonfly: unknown
recv: EWOULDBLOCK
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
recv: EWOULDBLOCK
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
recv: EWOULDBLOCK
sortix: unknown
recv: EWOULDBLOCK
§ connect-unconnect-shutdown-w-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
sendto: EPIPE
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
sendto: EPIPE
SIGPIPE
sortix: unknown
sendto: EPIPE
SIGPIPE
§ connect-unconnect-sockaddr dragonfly: unknown
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: unknown
exit: 0
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
exit: 0
sortix: unknown
exit: 0
§ connect-unconnect-sockaddr-in dragonfly: good
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
second connect: EAFNOSUPPORT
minix: good
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-unconnect-sockaddr-storage dragonfly: good
exit: 0
freebsd: bad
second connect: EINVAL
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
second connect: EINVAL
minix: good
exit: 0
netbsd: bad
second connect: EINVAL
openbsd: bad
second connect: EINVAL
openindiana-omnios: good
exit: 0
sortix: good
exit: 0
§ connect-unconnect-unconnect dragonfly: good
exit: 0
freebsd: bad
second connect: EAFNOSUPPORT
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
second connect: EAFNOSUPPORT
minix: good
exit: 0
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: bad
third connect: EINVAL
sortix: good
exit: 0
§ connect-wan-get-so-bindtodevice dragonfly: good
getsockopt: SO_BINDTODEVICE: ENOSYS
freebsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
haiku: good
getsockopt: SO_BINDTODEVICE: ENOPROTOOPT
hurd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
linux: good
macos: good
getsockopt: SO_BINDTODEVICE: ENOSYS
minix: good
getsockopt: SO_BINDTODEVICE: ENOSYS
netbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openindiana-omnios: good
getsockopt: SO_BINDTODEVICE: ENOSYS
sortix: good
§ connect-wan-getsockname dragonfly: good
192.168.1.x:non-zero
freebsd: good
192.168.1.x:non-zero
haiku: good
192.168.1.x:non-zero
hurd: good
192.168.1.x:non-zero
linux: good
192.168.1.x:non-zero
macos: good
192.168.1.x:non-zero
minix: good
192.168.1.x:non-zero
netbsd: good
192.168.1.x:non-zero
openbsd: good
192.168.1.x:non-zero
openindiana-omnios: good
192.168.1.x:non-zero
sortix: good
192.168.1.x:non-zero
§ connect-wan-send-reconnect-loopback-send dragonfly: unknown
exit: 0
freebsd: unknown
second send: EADDRNOTAVAIL
haiku: unknown
exit: 0
hurd: unknown
exit: 0
linux: unknown
exit: 0
macos: unknown
exit: 0
minix: unknown
exit: 0
netbsd: unknown
exit: 0
openbsd: unknown
exit: 0
openindiana-omnios: unknown
exit: 0
sortix: unknown
second connect: ENETUNREACH
§ connect-wan-unconnect-rebind-any-getsockname dragonfly: unknown
bind: EINVAL
freebsd: bad
second connect: EAFNOSUPPORT
haiku: bad
bind: General system error
hurd: unknown
bind: EINVAL
linux: unknown
bind: EADDRNOTAVAIL
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
bind: EINVAL
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
bind: EADDRNOTAVAIL
sortix: unknown
bind: EINVAL
§ connect-wan-unconnect-rebind-same-getsockname dragonfly: unknown
bind: EINVAL
freebsd: bad
second connect: EAFNOSUPPORT
haiku: unknown
192.168.1.x:non-zero
hurd: unknown
bind: EINVAL
linux: unknown
192.168.1.x:non-zero
macos: bad
second connect: EAFNOSUPPORT
minix: unknown
bind: EINVAL
netbsd: bad
second connect: EAFNOSUPPORT
openbsd: bad
second connect: EAFNOSUPPORT
openindiana-omnios: unknown
bind: EINVAL
sortix: unknown
bind: EINVAL
§ cross-netif-lan-send-loopback-recv dragonfly: good
192.168.1.x:non-zero: x
freebsd: good
192.168.1.x:non-zero: x
haiku: good
192.168.1.x:non-zero: x
hurd: good
192.168.1.x:non-zero: x
linux: good
192.168.1.x:non-zero: x
macos: good
192.168.1.x:non-zero: x
minix: good
192.168.1.x:non-zero: x
netbsd: good
192.168.1.x:non-zero: x
openbsd: good
192.168.1.x:non-zero: x
openindiana-omnios: good
192.168.1.x:non-zero: x
sortix: bad
sendto: ENETUNREACH
§ cross-netif-loopback-send-lan-recv dragonfly: good
127.0.0.1:non-zero: x
freebsd: good
127.0.0.1:non-zero: x
haiku: good
127.0.0.1:non-zero: x
hurd: good
127.0.0.1:non-zero: x
linux: good
127.0.0.1:non-zero: x
macos: good
127.0.0.1:non-zero: x
minix: good
127.0.0.1:non-zero: x
netbsd: good
127.0.0.1:non-zero: x
openbsd: good
127.0.0.1:non-zero: x
openindiana-omnios: good
127.0.0.1:non-zero: x
sortix: bad
sendto: ENETUNREACH
§ get-so-bindtodevice dragonfly: good
getsockopt: SO_BINDTODEVICE: ENOSYS
freebsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
haiku: good
getsockopt: SO_BINDTODEVICE: ENOPROTOOPT
hurd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
linux: good
macos: good
getsockopt: SO_BINDTODEVICE: ENOSYS
minix: good
getsockopt: SO_BINDTODEVICE: ENOSYS
netbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openbsd: good
getsockopt: SO_BINDTODEVICE: ENOSYS
openindiana-omnios: good
getsockopt: SO_BINDTODEVICE: ENOSYS
sortix: good
§ getpeername dragonfly: good
getpeername: ENOTCONN
freebsd: good
getpeername: ENOTCONN
haiku: good
getpeername: ENOTCONN
hurd: good
getpeername: ENOTCONN
linux: good
getpeername: ENOTCONN
macos: good
getpeername: ENOTCONN
minix: good
getpeername: ENOTCONN
netbsd: good
getpeername: ENOTCONN
openbsd: good
getpeername: ENOTCONN
openindiana-omnios: good
getpeername: ENOTCONN
sortix: good
getpeername: ENOTCONN
§ getsockname dragonfly: good
0.0.0.0:0
freebsd: good
0.0.0.0:0
haiku: bad
getsockname: ENOTCONN
hurd: good
0.0.0.0:0
linux: good
0.0.0.0:0
macos: good
0.0.0.0:0
minix: good
0.0.0.0:0
netbsd: good
0.0.0.0:0
openbsd: good
0.0.0.0:0
openindiana-omnios: good
0.0.0.0:0
sortix: good
0.0.0.0:0
§ listen dragonfly: good
listen: ENOTSUP
freebsd: good
listen: ENOTSUP
haiku: good
listen: ENOTSUP
hurd: good
listen: ENOTSUP
linux: good
listen: ENOTSUP
macos: good
listen: ENOTSUP
minix: good
listen: ENOTSUP
netbsd: good
listen: ENOTSUP
openbsd: good
listen: ENOTSUP
openindiana-omnios: good
listen: ENOTSUP
sortix: good
listen: ENOTSUP
§ pair-poll dragonfly: good
0 | POLLOUT
freebsd: good
0 | POLLOUT
haiku: good
0 | POLLOUT
hurd: good
0 | POLLOUT
linux: good
0 | POLLOUT
macos: good
0 | POLLOUT
minix: good
0 | POLLOUT
netbsd: good
0 | POLLOUT
openbsd: good
0 | POLLOUT
openindiana-omnios: good
0 | POLLOUT
sortix: good
0 | POLLOUT
§ pair-send-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ pair-send-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ pair-send-shutdown-r-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN | POLLOUT
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLOUT
§ pair-send-shutdown-r-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: unknown
x
linux: unknown
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ pair-send-shutdown-rw-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLHUP
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: bad
0 | POLLIN | POLLOUT | POLLHUP
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ pair-send-shutdown-rw-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: unknown
x
linux: unknown
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ pair-send-shutdown-w-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ pair-send-shutdown-w-recv dragonfly: good
x
freebsd: good
x
haiku: bad
shutdown: ENOTSUP
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ pair-shutdown-r-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN | POLLOUT
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLOUT
§ pair-shutdown-r-send-poll dragonfly: unknown
0 | POLLIN | POLLOUT
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN | POLLOUT
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLOUT
§ pair-shutdown-r-send-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
x
linux: bad
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ pair-shutdown-rw-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLHUP
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: bad
0 | POLLIN | POLLOUT | POLLHUP
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ pair-shutdown-rw-send-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLHUP
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: bad
0 | POLLIN | POLLOUT | POLLHUP
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ pair-shutdown-rw-send-recv dragonfly: unknown
EOF
freebsd: unknown
EOF
haiku: bad
shutdown: ENOTSUP
hurd: bad
x
linux: bad
x
macos: unknown
EOF
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
EOF
sortix: unknown
EOF
§ pair-shutdown-w-poll dragonfly: unknown
0 | POLLHUP
freebsd: unknown
0 | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
poll returned 0
linux: unknown
0 | POLLOUT
macos: unknown
0 | POLLHUP
minix: unknown
0 | POLLOUT
netbsd: unknown
0 | POLLOUT
openbsd: unknown
0 | POLLOUT
openindiana-omnios: unknown
0 | POLLOUT
sortix: unknown
0 | POLLHUP
§ pair-shutdown-w-send-poll dragonfly: unknown
0 | POLLIN | POLLHUP
freebsd: unknown
0 | POLLIN | POLLOUT
haiku: bad
shutdown: ENOTSUP
hurd: unknown
0 | POLLIN
linux: unknown
0 | POLLIN | POLLOUT
macos: unknown
0 | POLLIN | POLLHUP
minix: unknown
0 | POLLIN | POLLOUT
netbsd: unknown
0 | POLLIN | POLLOUT
openbsd: unknown
0 | POLLIN | POLLOUT
openindiana-omnios: unknown
0 | POLLIN | POLLOUT
sortix: unknown
0 | POLLIN | POLLHUP
§ pair-shutdown-w-send-recv dragonfly: good
x
freebsd: good
x
haiku: bad
shutdown: ENOTSUP
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ poll dragonfly: unknown
0 | POLLOUT
freebsd: unknown
0 | POLLOUT
haiku: unknown
0 | POLLOUT
hurd: unknown
0 | POLLOUT
linux: unknown
0 | POLLOUT
macos: unknown
0 | POLLOUT
minix: unknown
0 | POLLOUT
netbsd: unknown
0 | POLLOUT
openbsd: unknown
0 | POLLOUT
openindiana-omnios: unknown
0 | POLLOUT
sortix: unknown
0 | POLLOUT
§ recvfrom-getsockname dragonfly: good
0.0.0.0:0
freebsd: good
0.0.0.0:0
haiku: bad
getsockname: ENOTCONN
hurd: unknown
0.0.0.0:non-zero
linux: good
0.0.0.0:0
macos: good
0.0.0.0:0
minix: good
0.0.0.0:0
netbsd: good
0.0.0.0:0
openbsd: good
0.0.0.0:0
openindiana-omnios: good
0.0.0.0:0
sortix: good
0.0.0.0:0
§ send dragonfly: good
send: EDESTADDRREQ
freebsd: good
send: EDESTADDRREQ
haiku: good
send: EDESTADDRREQ
hurd: bad
send: ENOTCONN
linux: good
send: EDESTADDRREQ
macos: good
send: EDESTADDRREQ
minix: good
send: EDESTADDRREQ
netbsd: good
send: EDESTADDRREQ
openbsd: good
send: EDESTADDRREQ
openindiana-omnios: good
send: EDESTADDRREQ
sortix: good
send: EDESTADDRREQ
§ sendto-any-so-error dragonfly: unknown
exit: 0
freebsd: unknown
exit: 0
haiku: unknown
sendto: EDESTADDRREQ
hurd: unknown
SO_ERROR: ECONNREFUSED
linux: unknown
exit: 0
macos: unknown
exit: 0
minix: bad
sendto: EHOSTUNREACH
netbsd: unknown
exit: 0
openbsd: unknown
sendto: ENETUNREACH
openindiana-omnios: unknown
exit: 0
sortix: unknown
sendto: ENETUNREACH
§ sendto-getsockname dragonfly: good
0.0.0.0:non-zero
freebsd: good
0.0.0.0:non-zero
haiku: good
0.0.0.0:non-zero
hurd: good
0.0.0.0:non-zero
linux: good
0.0.0.0:non-zero
macos: good
0.0.0.0:non-zero
minix: good
0.0.0.0:non-zero
netbsd: good
0.0.0.0:non-zero
openbsd: good
0.0.0.0:non-zero
openindiana-omnios: good
0.0.0.0:non-zero
sortix: good
0.0.0.0:non-zero
§ sendto-loopback-0-so-error dragonfly: unknown
exit: 0
freebsd: unknown
sendto: EADDRNOTAVAIL
haiku: unknown
exit: 0
hurd: bad
sendto: EINVAL
linux: bad
sendto: EINVAL
macos: unknown
sendto: EADDRNOTAVAIL
minix: unknown
sendto: EADDRNOTAVAIL
netbsd: unknown
sendto: EADDRNOTAVAIL
openbsd: unknown
sendto: EADDRNOTAVAIL
openindiana-omnios: unknown
exit: 0
sortix: unknown
sendto: EADDRNOTAVAIL
§ sendto-null dragonfly: good
sendto: EDESTADDRREQ
freebsd: good
sendto: EDESTADDRREQ
haiku: bad
sendto: EINVAL
hurd: bad
sendto: ENOTCONN
linux: good
sendto: EDESTADDRREQ
macos: good
sendto: EDESTADDRREQ
minix: good
sendto: EDESTADDRREQ
netbsd: good
sendto: EDESTADDRREQ
openbsd: good
sendto: EDESTADDRREQ
openindiana-omnios: good
sendto: EDESTADDRREQ
sortix: good
sendto: EDESTADDRREQ
§ shutdown dragonfly: unknown
exit: 0
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
exit: 0
netbsd: unknown
exit: 0
openbsd: unknown
exit: 0
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
exit: 0
§ shutdown-r-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ shutdown-r-send dragonfly: unknown
exit: 0
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
exit: 0
netbsd: unknown
exit: 0
openbsd: unknown
exit: 0
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
exit: 0
§ shutdown-rw-recv dragonfly: unknown
EOF
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
EOF
netbsd: unknown
EOF
openbsd: unknown
EOF
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
EOF
§ shutdown-rw-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
sendto: EPIPE
netbsd: unknown
sendto: EPIPE
SIGPIPE
openbsd: unknown
sendto: EPIPE
SIGPIPE
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
sendto: EPIPE
SIGPIPE
§ shutdown-w-recv dragonfly: unknown
recv: EWOULDBLOCK
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
recv: EWOULDBLOCK
netbsd: unknown
recv: EWOULDBLOCK
openbsd: unknown
recv: EWOULDBLOCK
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
recv: EWOULDBLOCK
§ shutdown-w-send dragonfly: unknown
sendto: EPIPE
SIGPIPE
freebsd: unknown
shutdown: ENOTCONN
haiku: bad
shutdown: ENOTSUP
hurd: unknown
shutdown: ENOTCONN
linux: unknown
shutdown: ENOTCONN
macos: unknown
shutdown: ENOTCONN
minix: unknown
sendto: EPIPE
netbsd: unknown
sendto: EPIPE
SIGPIPE
openbsd: unknown
sendto: EPIPE
SIGPIPE
openindiana-omnios: unknown
shutdown: ENOTCONN
sortix: unknown
sendto: EPIPE
SIGPIPE
§ so-error dragonfly: good
SO_ERROR: no error
freebsd: good
SO_ERROR: no error
haiku: good
SO_ERROR: no error
hurd: good
SO_ERROR: no error
linux: good
SO_ERROR: no error
macos: good
SO_ERROR: no error
minix: good
SO_ERROR: no error
netbsd: good
SO_ERROR: no error
openbsd: good
SO_ERROR: no error
openindiana-omnios: good
SO_ERROR: no error
sortix: good
SO_ERROR: no error
§ trio-connect-send-right-x-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ trio-connect-send-right-x-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ trio-connect-send-wrong-y-poll dragonfly: good
0 | POLLOUT
freebsd: good
0 | POLLOUT
haiku: good
0 | POLLOUT
hurd: good
0 | POLLOUT
linux: good
0 | POLLOUT
macos: good
0 | POLLOUT
minix: good
0 | POLLOUT
netbsd: good
0 | POLLOUT
openbsd: good
0 | POLLOUT
openindiana-omnios: good
0 | POLLOUT
sortix: good
0 | POLLOUT
§ trio-connect-send-wrong-y-recv dragonfly: good
recv: EWOULDBLOCK
freebsd: good
recv: EWOULDBLOCK
haiku: good
recv: EWOULDBLOCK
hurd: good
recv: EWOULDBLOCK
linux: good
recv: EWOULDBLOCK
macos: good
recv: EWOULDBLOCK
minix: good
recv: EWOULDBLOCK
netbsd: good
recv: EWOULDBLOCK
openbsd: good
recv: EWOULDBLOCK
openindiana-omnios: good
recv: EWOULDBLOCK
sortix: good
recv: EWOULDBLOCK
§ trio-connect-send-wrong-y-send-right-x-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ trio-connect-send-wrong-y-send-right-x-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ trio-send-right-x-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ trio-send-right-x-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ trio-send-right-x-send-wrong-y-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ trio-send-right-x-send-wrong-y-recv dragonfly: good
x
freebsd: good
x
haiku: good
x
hurd: good
x
linux: good
x
macos: good
x
minix: good
x
netbsd: good
x
openbsd: good
x
openindiana-omnios: good
x
sortix: good
x
§ trio-send-wrong-y-connect-poll dragonfly: bad
0 | POLLIN | POLLOUT
freebsd: bad
0 | POLLIN | POLLOUT
haiku: bad
0 | POLLIN | POLLOUT
hurd: bad
0 | POLLIN | POLLOUT
linux: bad
0 | POLLIN | POLLOUT
macos: bad
0 | POLLIN | POLLOUT
minix: bad
0 | POLLIN | POLLOUT
netbsd: bad
0 | POLLIN | POLLOUT
openbsd: bad
0 | POLLIN | POLLOUT
openindiana-omnios: bad
0 | POLLIN | POLLOUT
sortix: good
0 | POLLOUT
§ trio-send-wrong-y-connect-recv dragonfly: bad
y
freebsd: bad
y
haiku: bad
y
hurd: bad
y
linux: bad
y
macos: bad
y
minix: bad
y
netbsd: bad
y
openbsd: bad
y
openindiana-omnios: bad
y
sortix: good
recv: EWOULDBLOCK
§ trio-send-wrong-y-connect-send-right-x-poll dragonfly: good
0 | POLLIN | POLLOUT
freebsd: good
0 | POLLIN | POLLOUT
haiku: good
0 | POLLIN | POLLOUT
hurd: good
0 | POLLIN | POLLOUT
linux: good
0 | POLLIN | POLLOUT
macos: good
0 | POLLIN | POLLOUT
minix: good
0 | POLLIN | POLLOUT
netbsd: good
0 | POLLIN | POLLOUT
openbsd: good
0 | POLLIN | POLLOUT
openindiana-omnios: good
0 | POLLIN | POLLOUT
sortix: good
0 | POLLIN | POLLOUT
§ trio-send-wrong-y-connect-send-right-x-recv dragonfly: bad
y
freebsd: bad
y
haiku: bad
y
hurd: bad
y
linux: bad
y
macos: bad
y
minix: bad
y
netbsd: bad
y
openbsd: bad
y
openindiana-omnios: bad
y
sortix: good
x
§ unconnect dragonfly: good
exit: 0
freebsd: bad
unconnect: EAFNOSUPPORT
haiku: good
exit: 0
hurd: good
exit: 0
linux: good
exit: 0
macos: bad
unconnect: EAFNOSUPPORT
minix: good
exit: 0
netbsd: bad
unconnect: EAFNOSUPPORT
openbsd: bad
unconnect: EAFNOSUPPORT
openindiana-omnios: bad
unconnect: EINVAL
sortix: good
exit: 0
§ unconnect-getpeername dragonfly: good
getpeername: ENOTCONN
freebsd: bad
unconnect: EAFNOSUPPORT
haiku: bad
0.0.0.0:0
hurd: good
getpeername: ENOTCONN
linux: good
getpeername: ENOTCONN
macos: bad
unconnect: EAFNOSUPPORT
minix: good
getpeername: ENOTCONN
netbsd: bad
unconnect: EAFNOSUPPORT
openbsd: bad
unconnect: EAFNOSUPPORT
openindiana-omnios: bad
unconnect: EINVAL
sortix: good
getpeername: ENOTCONN
§ unconnect-getsockname dragonfly: unknown
0.0.0.0:non-zero
freebsd: bad
unconnect: EAFNOSUPPORT
haiku: unknown
0.0.0.0:non-zero
hurd: unknown
0.0.0.0:non-zero
linux: unknown
0.0.0.0:0
macos: bad
unconnect: EAFNOSUPPORT
minix: unknown
0.0.0.0:0
netbsd: bad
unconnect: EAFNOSUPPORT
openbsd: bad
unconnect: EAFNOSUPPORT
openindiana-omnios: bad
unconnect: EINVAL
sortix: unknown
0.0.0.0:0
Copyright 2011-2022 Jonas 'Sortie' Termansen and contributors.
Sortix is free software under the ISC license.
#sortix on irc.sortix.org
@sortix_org