From f5c39679c6d87e0960c628cba6fe16dd0373443c Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sat, 16 Dec 2023 20:37:57 +0000 Subject: [PATCH] std::net::bind using -1 for openbsd which in turn sets it to somaxconn. trusting platform's SOMAXCONN instead of hardcoding to 128 otherwise. --- library/std/src/os/unix/net/listener.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/library/std/src/os/unix/net/listener.rs b/library/std/src/os/unix/net/listener.rs index 5be8aebc70fd5..679a6f1a3c3ae 100644 --- a/library/std/src/os/unix/net/listener.rs +++ b/library/std/src/os/unix/net/listener.rs @@ -74,7 +74,11 @@ impl UnixListener { let inner = Socket::new_raw(libc::AF_UNIX, libc::SOCK_STREAM)?; let (addr, len) = sockaddr_un(path.as_ref())?; const backlog: libc::c_int = - if cfg!(any(target_os = "linux", target_os = "freebsd")) { -1 } else { 128 }; + if cfg!(any(target_os = "linux", target_os = "freebsd", target_os = "openbsd")) { + -1 + } else { + libc::SOMAXCONN + }; cvt(libc::bind(inner.as_inner().as_raw_fd(), &addr as *const _ as *const _, len as _))?; cvt(libc::listen(inner.as_inner().as_raw_fd(), backlog))?;