15 lines
335 B
V
15 lines
335 B
V
module netio
|
|
|
|
import os
|
|
|
|
fn C.getnameinfo(voidptr, i32, &char, i32, &char, i32, i32) i32
|
|
|
|
pub fn name(sa SocketAddr) !(string, string) {
|
|
mut addr := []u8{len: 16}
|
|
mut srv := []u8{len: 2}
|
|
if C.getnameinfo(sa.ptr(), sa.size(), addr.data, 16, srv.data, 2, C.NI_NUMERICHOST) == -1 {
|
|
return os.last_error()
|
|
}
|
|
return addr.str(), ''
|
|
}
|