diff options
| author | Laurențiu Nicola <lnicola@users.noreply.github.com> | 2025-09-29 04:29:28 +0000 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-29 04:29:28 +0000 | 
| commit | 930451e17d47cc27b6c96cb358dfae2ed3a97c67 (patch) | |
| tree | 722e3fdf88fdae0903cd1ff43cfc801db18345d3 /library/std/src/sys/net/connection/socket | |
| parent | c0e45c896823664c49d631e961208d640dc43c58 (diff) | |
| parent | 24f6f94c5ad90be5d1ced24d83b8485712bcc27a (diff) | |
| download | rust-930451e17d47cc27b6c96cb358dfae2ed3a97c67.tar.gz rust-930451e17d47cc27b6c96cb358dfae2ed3a97c67.zip | |
Merge pull request #20761 from rust-lang/rustc-pull
Rustc pull update
Diffstat (limited to 'library/std/src/sys/net/connection/socket')
| -rw-r--r-- | library/std/src/sys/net/connection/socket/unix.rs | 9 | 
1 files changed, 5 insertions, 4 deletions
| diff --git a/library/std/src/sys/net/connection/socket/unix.rs b/library/std/src/sys/net/connection/socket/unix.rs index 8216f8d2fd5..a191576d93b 100644 --- a/library/std/src/sys/net/connection/socket/unix.rs +++ b/library/std/src/sys/net/connection/socket/unix.rs @@ -485,14 +485,15 @@ impl Socket { // bionic libc makes no use of this flag #[cfg(target_os = "linux")] - pub fn set_deferaccept(&self, accept: u32) -> io::Result<()> { - setsockopt(self, libc::IPPROTO_TCP, libc::TCP_DEFER_ACCEPT, accept as c_int) + pub fn set_deferaccept(&self, accept: Duration) -> io::Result<()> { + let val = cmp::min(accept.as_secs(), c_int::MAX as u64) as c_int; + setsockopt(self, libc::IPPROTO_TCP, libc::TCP_DEFER_ACCEPT, val) } #[cfg(target_os = "linux")] - pub fn deferaccept(&self) -> io::Result<u32> { + pub fn deferaccept(&self) -> io::Result<Duration> { let raw: c_int = getsockopt(self, libc::IPPROTO_TCP, libc::TCP_DEFER_ACCEPT)?; - Ok(raw as u32) + Ok(Duration::from_secs(raw as _)) } #[cfg(any(target_os = "freebsd", target_os = "netbsd"))] | 
