MCPcopy Index your code
hub / github.com/RustPython/RustPython / inet_ntop

Function inet_ntop

crates/stdlib/src/socket.rs:2982–2999  ·  view source on GitHub ↗
(af_inet: i32, packed_ip: ArgBytesLike, vm: &VirtualMachine)

Source from the content-addressed store, hash-verified

2980
2981 #[pyfunction]
2982 fn inet_ntop(af_inet: i32, packed_ip: ArgBytesLike, vm: &VirtualMachine) -> PyResult<String> {
2983 let packed_ip = packed_ip.borrow_buf();
2984 match af_inet {
2985 c::AF_INET => {
2986 let packed_ip = <&[u8; 4]>::try_from(&*packed_ip).map_err(|_| {
2987 vm.new_value_error("invalid length of packed IP address string")
2988 })?;
2989 Ok(Ipv4Addr::from(*packed_ip).to_string())
2990 }
2991 c::AF_INET6 => {
2992 let packed_ip = <&[u8; 16]>::try_from(&*packed_ip).map_err(|_| {
2993 vm.new_value_error("invalid length of packed IP address string")
2994 })?;
2995 Ok(get_ipv6_addr_str(Ipv6Addr::from(*packed_ip)))
2996 }
2997 _ => Err(vm.new_value_error(format!("unknown address family {af_inet}"))),
2998 }
2999 }
3000
3001 #[pyfunction]
3002 fn getprotobyname(name: PyStrRef, vm: &VirtualMachine) -> PyResult {

Callers 2

testStringToIPv4Method · 0.90
testStringToIPv6Method · 0.90

Calls 4

get_ipv6_addr_strFunction · 0.85
to_stringMethod · 0.80
ErrClass · 0.50
borrow_bufMethod · 0.45

Tested by 2

testStringToIPv4Method · 0.72
testStringToIPv6Method · 0.72