internal NetworkInterface(uv_interface_address_t *iface) { Name = Marshal.PtrToStringAnsi(iface->name); Internal = iface->is_internal != 0; Address = UV.GetIPEndPoint((IntPtr)(((IntPtr)iface).ToInt64() + sizeof(IntPtr) + sizeof(int))).Address; }
internal NetworkInterface(uv_interface_address_t *iface) { Name = Marshal.PtrToStringAnsi(iface->name); Internal = iface->is_internal != 0; byte[] phys_addr = new byte[6]; for (int i = 0; i < phys_addr.Length; i++) { phys_addr[i] = iface->phys_addr[i]; } PhysicalAddress = new PhysicalAddress(phys_addr); Address = UV.GetIPEndPoint(new IntPtr(&iface->sockaddr), false).Address; Netmask = UV.GetIPEndPoint(new IntPtr(&iface->netmask), false).Address; }