3 using System.Runtime.InteropServices;
5 namespace System.Net.NetworkInformation {
6 namespace MacOsStructs {
7 internal struct ifaddrs
9 public IntPtr ifa_next;
10 public string ifa_name;
11 public uint ifa_flags;
12 public IntPtr ifa_addr;
13 public IntPtr ifa_netmask;
14 public IntPtr ifa_dstaddr;
15 public IntPtr ifa_data;
18 internal struct sockaddr
21 public byte sa_family;
24 internal struct sockaddr_in
27 public byte sin_family;
28 public ushort sin_port;
32 internal struct in6_addr
34 [MarshalAs (UnmanagedType.ByValArray, SizeConst=16)]
35 public byte[] u6_addr8;
38 internal struct sockaddr_in6
41 public byte sin6_family;
42 public ushort sin6_port;
43 public uint sin6_flowinfo;
44 public in6_addr sin6_addr;
45 public uint sin6_scope_id;
48 internal struct sockaddr_dl
51 public byte sdl_family;
52 public ushort sdl_index;
58 [MarshalAs (UnmanagedType.ByValArray, SizeConst=12)]
59 public byte[] sdl_data;
64 internal enum MacOsArpHardware {