Update of /cvsroot/dnsmail/dnsmail/DnsMail
In directory sc8-pr-cvs12.sourceforge.net:/tmp/cvs-serv6681/dnsmail/DnsMail
Modified Files:
DnsMail.cs
Log Message:
LocalPoint property added to DnsMail client. This species bind address when a socket creation.
Merged from DNSMAIL_02.
Index: DnsMail.cs
===================================================================
RCS file: /cvsroot/dnsmail/dnsmail/DnsMail/DnsMail.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** DnsMail.cs 21 Mar 2006 18:51:02 -0000 1.3
--- DnsMail.cs 17 Jul 2006 12:55:29 -0000 1.4
***************
*** 153,156 ****
--- 153,178 ----
}
+ private EndPoint m_LocalPoint;
+ public EndPoint LocalPoint
+ {
+ get
+ {
+ if (m_LocalPoint == null)
+ {
+ IPHostEntry iphostentry = Dns.GetHostByName(DNSAPI.LocalHost);
+ foreach(IPAddress ip in iphostentry.AddressList)
+ {
+ if (! IPAddress.IsLoopback(ip))
+ {
+ m_LocalPoint = new IPEndPoint(ip, 0);
+ break;
+ }
+ }
+ }
+ return m_LocalPoint;
+ }
+ set { m_LocalPoint = value; }
+ }
+
#region ssl section
***************
*** 553,556 ****
--- 575,579 ----
{
m_Client = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
+ m_Client.Bind(LocalPoint);
m_Client.SetSocketOption(SocketOptionLevel.Tcp,SocketOptionName.NoDelay,1);
m_Client.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.ReceiveTimeout,TimeOut);
|