using System; namespace System.Net.Sockets { /// Contains values used to join and drop multicast groups. // Token: 0x020001DD RID: 477 public class MulticastOption { /// Initializes a new version of the class for the specified IP multicast group. /// The of the multicast group. /// /// is null. // Token: 0x06000F65 RID: 3941 RVA: 0x0002A400 File Offset: 0x00028600 public MulticastOption(IPAddress group) : this(group, IPAddress.Any) { } /// Initializes a new instance of the class with the specified IP multicast group address and interface index. /// The of the multicast group. /// The index of the interface that is used to send and receive multicast packets. // Token: 0x06000F66 RID: 3942 RVA: 0x0002A410 File Offset: 0x00028610 public MulticastOption(IPAddress group, int interfaceIndex) { if (group == null) { throw new ArgumentNullException("group"); } if (interfaceIndex < 0 || interfaceIndex > 16777215) { throw new ArgumentOutOfRangeException("interfaceIndex"); } this.group = group; this.iface_index = interfaceIndex; } /// Initializes a new instance of the class with the specified IP multicast group address and local IP address associated with a network interface. /// The group . /// The local . /// /// is null.-or- is null. // Token: 0x06000F67 RID: 3943 RVA: 0x0002A460 File Offset: 0x00028660 public MulticastOption(IPAddress group, IPAddress mcint) { if (group == null) { throw new ArgumentNullException("group"); } if (mcint == null) { throw new ArgumentNullException("mcint"); } this.group = group; this.local = mcint; } /// Gets or sets the IP address of a multicast group. /// An that contains the Internet address of a multicast group. // Token: 0x17000544 RID: 1348 // (get) Token: 0x06000F68 RID: 3944 RVA: 0x0002A4A4 File Offset: 0x000286A4 // (set) Token: 0x06000F69 RID: 3945 RVA: 0x0002A4AC File Offset: 0x000286AC public IPAddress Group { get { return this.group; } set { this.group = value; } } /// Gets or sets the local address associated with a multicast group. /// An that contains the local address associated with a multicast group. // Token: 0x17000545 RID: 1349 // (get) Token: 0x06000F6A RID: 3946 RVA: 0x0002A4B8 File Offset: 0x000286B8 // (set) Token: 0x06000F6B RID: 3947 RVA: 0x0002A4C0 File Offset: 0x000286C0 public IPAddress LocalAddress { get { return this.local; } set { this.local = value; this.iface_index = 0; } } /// Gets or sets the index of the interface that is used to send and receive multicast packets. /// An integer that represents the index of a array element. // Token: 0x17000546 RID: 1350 // (get) Token: 0x06000F6C RID: 3948 RVA: 0x0002A4D0 File Offset: 0x000286D0 // (set) Token: 0x06000F6D RID: 3949 RVA: 0x0002A4D8 File Offset: 0x000286D8 public int InterfaceIndex { get { return this.iface_index; } set { if (value < 0 || value > 16777215) { throw new ArgumentOutOfRangeException("value"); } this.iface_index = value; this.local = null; } } // Token: 0x04000DFA RID: 3578 private IPAddress group; // Token: 0x04000DFB RID: 3579 private IPAddress local; // Token: 0x04000DFC RID: 3580 private int iface_index; } }