System.Net.Dns.Dns.GetHostByAddressFromString C# (CSharp) Method

GetHostByAddressFromString() static private method

static private GetHostByAddressFromString ( string address, bool parse ) : IPHostEntry
address string
parse bool
return IPHostEntry
		static IPHostEntry GetHostByAddressFromString (string address, bool parse)
		{
			// Undocumented MS behavior: when called with IF_ANY,
			// this should return the local host
			if (address.Equals ("0.0.0.0")) {
				address = "127.0.0.1";
				parse = false;
			}

			// Must check the IP format, might send an exception if invalid string.
			if (parse)
				IPAddress.Parse (address);

			string h_name;
			string[] h_aliases, h_addrlist;
#if TARGET_JVM
			h_name = null;
			h_aliases = null;
			h_addrlist = null;
            		try {
                		java.net.InetAddress[] iaArr = 
					java.net.InetAddress.getAllByName(address);
		                if (iaArr != null && iaArr.Length > 0)
                		    h_name = iaArr[0].getHostName();
		                if (iaArr != null && iaArr.Length > 0)
                		{
		                    h_addrlist = new String[iaArr.Length];
                		    for (int i = 0; i < h_addrlist.Length; i++)
		                        h_addrlist[i] = iaArr[i].getHostAddress();
                		}
            		} catch (java.net.UnknownHostException jUHE) {
		                throw new SocketException((int)SocketError.HostNotFound, jUHE.Message);
            		}
#else
			bool ret = GetHostByAddr_internal(address, out h_name, out h_aliases, out h_addrlist);
			if (!ret)
				throw new SocketException(11001);
#endif
			return (hostent_to_IPHostEntry (h_name, h_aliases, h_addrlist));
			
		}