00001 using System;
00002 using System.Net;
00003
00004 namespace Tamir.SharpSsh.java.net
00005 {
00009 public class InetAddress
00010 {
00011 internal IPAddress addr;
00012 public InetAddress(string addr)
00013 {
00014 this.addr = IPAddress.Parse(addr);
00015 }
00016 public InetAddress(IPAddress addr)
00017 {
00018 this.addr = addr;
00019 }
00020
00021 public bool isAnyLocalAddress()
00022 {
00023 return IPAddress.IsLoopback(addr);
00024 }
00025
00026 public bool equals(InetAddress addr)
00027 {
00028 return addr.ToString().Equals( addr.ToString());
00029 }
00030
00031 public bool equals(string addr)
00032 {
00033 return addr.ToString().Equals( addr.ToString());
00034 }
00035
00036 public override string ToString()
00037 {
00038 return addr.ToString ();
00039 }
00040
00041 public override bool Equals(object obj)
00042 {
00043 return equals (obj.ToString());
00044 }
00045
00046 public string getHostAddress()
00047 {
00048 return ToString();
00049 }
00050
00051 public override int GetHashCode()
00052 {
00053 return base.GetHashCode ();
00054 }
00055
00056 public static InetAddress getByName(string name)
00057 {
00058 return new InetAddress( Dns.GetHostByName(name).AddressList[0] );
00059 }
00060 }
00061 }