This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
@@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
namespace System.Net.NetworkInformation
{
// Token: 0x0200019C RID: 412
internal class MulticastIPAddressInformationImplCollection : MulticastIPAddressInformationCollection
{
// Token: 0x06000DD0 RID: 3536 RVA: 0x00026C3C File Offset: 0x00024E3C
private MulticastIPAddressInformationImplCollection(bool isReadOnly)
{
this.is_readonly = isReadOnly;
}
// Token: 0x17000480 RID: 1152
// (get) Token: 0x06000DD2 RID: 3538 RVA: 0x00026C5C File Offset: 0x00024E5C
public override bool IsReadOnly
{
get
{
return this.is_readonly;
}
}
// Token: 0x06000DD3 RID: 3539 RVA: 0x00026C64 File Offset: 0x00024E64
public static MulticastIPAddressInformationCollection Win32FromMulticast(IntPtr ptr)
{
MulticastIPAddressInformationImplCollection multicastIPAddressInformationImplCollection = new MulticastIPAddressInformationImplCollection(false);
IntPtr intPtr = ptr;
while (intPtr != IntPtr.Zero)
{
Win32_IP_ADAPTER_MULTICAST_ADDRESS win32_IP_ADAPTER_MULTICAST_ADDRESS = (Win32_IP_ADAPTER_MULTICAST_ADDRESS)Marshal.PtrToStructure(intPtr, typeof(Win32_IP_ADAPTER_MULTICAST_ADDRESS));
multicastIPAddressInformationImplCollection.Add(new MulticastIPAddressInformationImpl(win32_IP_ADAPTER_MULTICAST_ADDRESS.Address.GetIPAddress(), win32_IP_ADAPTER_MULTICAST_ADDRESS.LengthFlags.IsDnsEligible, win32_IP_ADAPTER_MULTICAST_ADDRESS.LengthFlags.IsTransient));
intPtr = win32_IP_ADAPTER_MULTICAST_ADDRESS.Next;
}
multicastIPAddressInformationImplCollection.is_readonly = true;
return multicastIPAddressInformationImplCollection;
}
// Token: 0x06000DD4 RID: 3540 RVA: 0x00026CE4 File Offset: 0x00024EE4
public static MulticastIPAddressInformationImplCollection LinuxFromList(List<IPAddress> addresses)
{
MulticastIPAddressInformationImplCollection multicastIPAddressInformationImplCollection = new MulticastIPAddressInformationImplCollection(false);
foreach (IPAddress ipaddress in addresses)
{
multicastIPAddressInformationImplCollection.Add(new MulticastIPAddressInformationImpl(ipaddress, true, false));
}
multicastIPAddressInformationImplCollection.is_readonly = true;
return multicastIPAddressInformationImplCollection;
}
// Token: 0x04000C81 RID: 3201
public static readonly MulticastIPAddressInformationImplCollection Empty = new MulticastIPAddressInformationImplCollection(true);
// Token: 0x04000C82 RID: 3202
private bool is_readonly;
}
}