dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnetlib/System/Net SocketAddress.cs,1.9,1.10


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnetlib/System/Net SocketAddress.cs,1.9,1.10
Date: Tue, 27 May 2003 22:12:13 -0400

Update of /cvsroot/dotgnu-pnet/pnetlib/System/Net
In directory subversions:/tmp/cvs-serv20864/System/Net

Modified Files:
        SocketAddress.cs 
Log Message:


Modify the internalcall interface for sockets so that IPv4, IPv6,
and IrDA socket addresses will work.


Index: SocketAddress.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/System/Net/SocketAddress.cs,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** SocketAddress.cs    27 May 2003 07:54:25 -0000      1.9
--- SocketAddress.cs    28 May 2003 02:12:11 -0000      1.10
***************
*** 43,46 ****
--- 43,50 ----
                                array[1] = (byte)(family >> 8);
                        }
+       internal SocketAddress(byte[] array)
+                       {
+                               this.array = array;
+                       }
  
        // Determine if two objects are equal.
***************
*** 131,134 ****
--- 135,166 ----
                                {
                                        return array.Length;
+                               }
+                       }
+ 
+       // Get the underlying array within this socket address.
+       internal byte[] Array
+                       {
+                               get
+                               {
+                                       return array;
+                               }
+                       }
+ 
+       // Extract the IP address portion of this socket address.
+       internal IPAddress IPAddress
+                       {
+                               get
+                               {
+                                       IPEndPoint ep;
+                                       if(Family == AddressFamily.InterNetwork)
+                                       {
+                                               ep = new 
IPEndPoint(IPAddress.Any, 0);
+                                       }
+                                       else
+                                       {
+                                               ep = new 
IPEndPoint(IPAddress.IPv6Any, 0);
+                                       }
+                                       ep = (IPEndPoint)(ep.Create(this));
+                                       return ep.Address;
                                }
                        }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]