(v4: &SocketAddrV4)
| 6 | use crate::net::{SocketAddrV4, SocketAddrV6}; |
| 7 | |
| 8 | pub(crate) fn encode_sockaddr_v4(v4: &SocketAddrV4) -> c::sockaddr_in { |
| 9 | c::sockaddr_in { |
| 10 | #[cfg(any( |
| 11 | bsd, |
| 12 | target_os = "aix", |
| 13 | target_os = "espidf", |
| 14 | target_os = "haiku", |
| 15 | target_os = "hurd", |
| 16 | target_os = "nto", |
| 17 | target_os = "vita", |
| 18 | ))] |
| 19 | sin_len: core::mem::size_of::<c::sockaddr_in>() as _, |
| 20 | sin_family: c::AF_INET as _, |
| 21 | sin_port: u16::to_be(v4.port()), |
| 22 | sin_addr: in_addr_new(u32::from_ne_bytes(v4.ip().octets())), |
| 23 | #[cfg(not(any(target_os = "haiku", target_os = "vita")))] |
| 24 | sin_zero: [0; 8_usize], |
| 25 | #[cfg(target_os = "haiku")] |
| 26 | sin_zero: [0; 24_usize], |
| 27 | #[cfg(target_os = "vita")] |
| 28 | sin_zero: [0; 6_usize], |
| 29 | #[cfg(target_os = "vita")] |
| 30 | sin_vport: 0, |
| 31 | } |
| 32 | } |
| 33 | |
| 34 | pub(crate) fn encode_sockaddr_v6(v6: &SocketAddrV6) -> c::sockaddr_in6 { |
| 35 | #[cfg(any( |
no test coverage detected