using System; using System.Collections.Generic; using System.Runtime.InteropServices; namespace System.Net.NetworkInformation { // Token: 0x020001C4 RID: 452 internal class UnicastIPAddressInformationImplCollection : UnicastIPAddressInformationCollection { // Token: 0x06000ED9 RID: 3801 RVA: 0x000295BC File Offset: 0x000277BC private UnicastIPAddressInformationImplCollection(bool isReadOnly) { this.is_readonly = isReadOnly; } // Token: 0x1700050A RID: 1290 // (get) Token: 0x06000EDB RID: 3803 RVA: 0x000295DC File Offset: 0x000277DC public override bool IsReadOnly { get { return this.is_readonly; } } // Token: 0x06000EDC RID: 3804 RVA: 0x000295E4 File Offset: 0x000277E4 public static UnicastIPAddressInformationCollection Win32FromUnicast(int ifIndex, IntPtr ptr) { UnicastIPAddressInformationImplCollection unicastIPAddressInformationImplCollection = new UnicastIPAddressInformationImplCollection(false); IntPtr intPtr = ptr; while (intPtr != IntPtr.Zero) { Win32_IP_ADAPTER_UNICAST_ADDRESS win32_IP_ADAPTER_UNICAST_ADDRESS = (Win32_IP_ADAPTER_UNICAST_ADDRESS)Marshal.PtrToStructure(intPtr, typeof(Win32_IP_ADAPTER_UNICAST_ADDRESS)); unicastIPAddressInformationImplCollection.Add(new Win32UnicastIPAddressInformation(ifIndex, win32_IP_ADAPTER_UNICAST_ADDRESS)); intPtr = win32_IP_ADAPTER_UNICAST_ADDRESS.Next; } unicastIPAddressInformationImplCollection.is_readonly = true; return unicastIPAddressInformationImplCollection; } // Token: 0x06000EDD RID: 3805 RVA: 0x00029644 File Offset: 0x00027844 public static UnicastIPAddressInformationCollection LinuxFromList(List addresses) { UnicastIPAddressInformationImplCollection unicastIPAddressInformationImplCollection = new UnicastIPAddressInformationImplCollection(false); foreach (IPAddress ipaddress in addresses) { unicastIPAddressInformationImplCollection.Add(new LinuxUnicastIPAddressInformation(ipaddress)); } unicastIPAddressInformationImplCollection.is_readonly = true; return unicastIPAddressInformationImplCollection; } // Token: 0x04000D25 RID: 3365 public static readonly UnicastIPAddressInformationImplCollection Empty = new UnicastIPAddressInformationImplCollection(true); // Token: 0x04000D26 RID: 3366 private bool is_readonly; } }