2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
[mono.git] / mcs / class / System / System.Net.Sockets / IPv6MulticastOption.cs
1 //
2 // System.Net.Sockets.MulticastOption.cs
3 //
4 // Author:
5 //   Andrew Sutton
6 //
7 // (C) Andrew Sutton
8 //
9
10 using System;
11 using System.Net;
12
13 namespace System.Net.Sockets
14 {
15 #if NET_1_1
16         // <remarks>
17         //   Encapsulates a multicast option
18         // </remarks>
19         public class IPv6MulticastOption
20         {
21                 // Don't change the names of these fields without also
22                 // changing socket-io.c in the runtime
23                 private IPAddress group;
24                 private long ifIndex;
25
26                 public IPv6MulticastOption (IPAddress group)
27                         : this (group, 0)
28                 {
29
30                 }
31
32                 public IPv6MulticastOption (IPAddress group, long ifIndex)
33                 {
34                         if (group == null)
35                                 throw new ArgumentNullException ("grp");
36
37                         this.group = group;
38                         this.ifIndex = ifIndex;
39                 }
40
41                 public IPAddress Group
42                 {
43                         get { return group; }
44                         set { group = value; }
45                 }
46
47                 public long InterfaceIndex
48                 {
49                         get { return ifIndex; }
50                         set { ifIndex = value; }
51                 }
52         }
53 #endif
54 }