static private GetIPEndPoint ( |
||
sockaddr | ||
map | bool | |
return |
internal void recv_start_callback(IntPtr handle, IntPtr nread, IntPtr sockaddr, ushort flags) { int n = (int)nread; if (n == 0) { return; } if (Message != null) { var ep = UV.GetIPEndPoint(sockaddr); if (dualstack && ep.AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6) { var data = ep.Address.GetAddressBytes(); if (IsMapping(data)) { ep = new IPEndPoint(GetMapping(data), ep.Port); } } var msg = new UdpReceiveMessage( ep, ByteBufferAllocator.Retrieve(n), (flags & (short)uv_udp_flags.UV_UDP_PARTIAL) > 0 ); Message(msg); } }
unsafe internal static IPEndPoint GetSockname(Handle handle, uv_getsockname getsockname) { sockaddr_in6 addr; IntPtr ptr = new IntPtr(&addr); int length = sizeof(sockaddr_in6); int r = getsockname(handle.NativeHandle, ptr, ref length); Ensure.Success(r); return(UV.GetIPEndPoint(ptr, true)); }
internal void recv_start_callback(IntPtr handle, IntPtr nread, IntPtr sockaddr, ushort flags) { int n = (int)nread; if (n == 0) { return; } OnMessage(UV.GetIPEndPoint(sockaddr), Loop.buffer.Get(n)); }
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)).Address; Netmask = UV.GetIPEndPoint(new IntPtr(&iface->netmask)).Address; }
void recv_start_callback(IntPtr handle, IntPtr nread, IntPtr sockaddr, ushort flags) { int n = (int)nread; if (n == 0) { return; } if (Message != null) { var ep = UV.GetIPEndPoint(sockaddr, true); var msg = new UdpReceiveMessage( ep, ByteBufferAllocator.Retrieve(n), (flags & (short)uv_udp_flags.UV_UDP_PARTIAL) > 0 ); Message(msg); } }
internal NetworkInterface(uv_interface_address_t *iface) { Name = Marshal.PtrToStringAnsi(iface->name); Internal = iface->is_internal != 0; Address = UV.GetIPEndPoint((IntPtr)(((long)new IntPtr(iface)) + (long)(sizeof(IntPtr) + sizeof(int)))).Address; }