fn from()

in src/bsd.rs [202:240]


    fn from(ip: IpAddr) -> Self {
        match ip {
            IpAddr::V4(ip) => SockaddrStorage {
                sin: sockaddr_in {
                    #[cfg(not(target_os = "solaris"))]
                    #[expect(
                        clippy::cast_possible_truncation,
                        reason = "`sockaddr_in` len is <= u8::MAX per `const_assert!` above."
                    )]
                    sin_len: size_of::<sockaddr_in>() as u8,
                    sin_family: AF_INET,
                    sin_addr: in_addr {
                        s_addr: u32::from_ne_bytes(ip.octets()),
                    },
                    sin_port: 0,
                    sin_zero: [0; 8],
                },
            },
            IpAddr::V6(ip) => SockaddrStorage {
                sin6: sockaddr_in6 {
                    #[cfg(not(target_os = "solaris"))]
                    #[expect(
                        clippy::cast_possible_truncation,
                        reason = "`sockaddr_in6` len is <= u8::MAX per `const_assert!` above."
                    )]
                    sin6_len: size_of::<sockaddr_in6>() as u8,
                    sin6_family: AF_INET6,
                    sin6_addr: in6_addr {
                        s6_addr: ip.octets(),
                    },
                    sin6_port: 0,
                    sin6_flowinfo: 0,
                    sin6_scope_id: 0,
                    #[cfg(target_os = "solaris")]
                    __sin6_src_id: 0,
                },
            },
        }
    }