Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
						commit
						18213d26ec
					
				| 
						 | 
				
			
			@ -86,8 +86,8 @@ namespace OpenSim.Services.Connectors.Hypergrid
 | 
			
		|||
            paramList.Add(hash);
 | 
			
		||||
 | 
			
		||||
            XmlRpcRequest request = new XmlRpcRequest("link_region", paramList);
 | 
			
		||||
            string uri = "http://" + info.ExternalEndPoint.Address + ":" + info.HttpPort + "/";
 | 
			
		||||
            //m_log.Debug("[GATEKEEPER SERVICE CONNECTOR]: Linking to " + uri);
 | 
			
		||||
            string uri = "http://" + ((info.ServerURI == string.Empty) ? info.ExternalEndPoint.Address + ":" + info.HttpPort + "/" : info.ServerURI);
 | 
			
		||||
            m_log.Debug("[GATEKEEPER SERVICE CONNECTOR]: Linking to " + uri);
 | 
			
		||||
            XmlRpcResponse response = null;
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			@ -188,7 +188,7 @@ namespace OpenSim.Services.Connectors.Hypergrid
 | 
			
		|||
            paramList.Add(hash);
 | 
			
		||||
 | 
			
		||||
            XmlRpcRequest request = new XmlRpcRequest("get_region", paramList);
 | 
			
		||||
            string uri = "http://" + gatekeeper.ExternalEndPoint.Address + ":" + gatekeeper.HttpPort + "/";
 | 
			
		||||
            string uri = "http://" + ((gatekeeper.ServerURI == string.Empty) ? gatekeeper.ExternalEndPoint.Address + ":" + gatekeeper.HttpPort + "/" : gatekeeper.ServerURI);
 | 
			
		||||
            m_log.Debug("[GATEKEEPER SERVICE CONNECTOR]: contacting " + uri);
 | 
			
		||||
            XmlRpcResponse response = null;
 | 
			
		||||
            try
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,15 +51,16 @@ namespace OpenSim.Services.Connectors.Hypergrid
 | 
			
		|||
            MethodBase.GetCurrentMethod().DeclaringType);
 | 
			
		||||
 | 
			
		||||
        string m_ServerURL;
 | 
			
		||||
        Uri m_Uri;
 | 
			
		||||
        public UserAgentServiceConnector(string url)
 | 
			
		||||
        {
 | 
			
		||||
            m_ServerURL = url;
 | 
			
		||||
            // Doing this here, because XML-RPC or mono have some strong ideas about
 | 
			
		||||
            // caching DNS translations.
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                m_Uri = new Uri(m_ServerURL);
 | 
			
		||||
                Uri m_Uri = new Uri(m_ServerURL);
 | 
			
		||||
                IPAddress ip = Util.GetHostFromDNS(m_Uri.Host);
 | 
			
		||||
                m_ServerURL = "http://" + ip.ToString() + ":" + m_Uri.Port;
 | 
			
		||||
                m_ServerURL = m_ServerURL.Replace(m_Uri.Host, ip.ToString()); ;
 | 
			
		||||
            }
 | 
			
		||||
            catch (Exception e)
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -104,17 +104,23 @@ namespace OpenSim.Services.Connectors.Simulation
 | 
			
		|||
                return false;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // Eventually, we want to use a caps url instead of the agentID
 | 
			
		||||
            string uri = string.Empty;
 | 
			
		||||
            try
 | 
			
		||||
 | 
			
		||||
            // HACK -- Simian grid make it work!!!
 | 
			
		||||
            if (destination.ServerURI != string.Empty)
 | 
			
		||||
                uri = "http://" + destination.ServerURI + AgentPath() + aCircuit.AgentID + "/";
 | 
			
		||||
            else
 | 
			
		||||
            {
 | 
			
		||||
                uri = "http://" + destination.ExternalEndPoint.Address + ":" + destination.HttpPort + AgentPath() + aCircuit.AgentID + "/";
 | 
			
		||||
            }
 | 
			
		||||
            catch (Exception e)
 | 
			
		||||
            {
 | 
			
		||||
                m_log.Debug("[REMOTE SIMULATION CONNECTOR]: Unable to resolve external endpoint on agent create. Reason: " + e.Message);
 | 
			
		||||
                reason = e.Message;
 | 
			
		||||
                return false;
 | 
			
		||||
                try
 | 
			
		||||
                {
 | 
			
		||||
                    uri = "http://" + destination.ExternalEndPoint.Address + ":" + destination.HttpPort + AgentPath() + aCircuit.AgentID + "/";
 | 
			
		||||
                }
 | 
			
		||||
                catch (Exception e)
 | 
			
		||||
                {
 | 
			
		||||
                    m_log.Debug("[REMOTE SIMULATION CONNECTOR]: Unable to resolve external endpoint on agent create. Reason: " + e.Message);
 | 
			
		||||
                    reason = e.Message;
 | 
			
		||||
                    return false;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //Console.WriteLine("   >>> DoCreateChildAgentCall <<< " + uri);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -158,7 +158,7 @@ namespace OpenSim.Services.GridService
 | 
			
		|||
            string host = "127.0.0.1";
 | 
			
		||||
            string portstr;
 | 
			
		||||
            string regionName = "";
 | 
			
		||||
            uint port = 9000;
 | 
			
		||||
            uint port = 0;
 | 
			
		||||
            string[] parts = mapName.Split(new char[] { ':' });
 | 
			
		||||
            if (parts.Length >= 1)
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			@ -177,18 +177,16 @@ namespace OpenSim.Services.GridService
 | 
			
		|||
                regionName = parts[2];
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // Sanity check. 
 | 
			
		||||
            //IPAddress ipaddr = null;
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                //ipaddr = Util.GetHostFromDNS(host);
 | 
			
		||||
                Util.GetHostFromDNS(host);
 | 
			
		||||
            }
 | 
			
		||||
            catch 
 | 
			
		||||
            {
 | 
			
		||||
                reason = "Malformed hostname";
 | 
			
		||||
                return null;
 | 
			
		||||
            }
 | 
			
		||||
            //// Sanity check. 
 | 
			
		||||
            //try
 | 
			
		||||
            //{
 | 
			
		||||
            //    Util.GetHostFromDNS(host);
 | 
			
		||||
            //}
 | 
			
		||||
            //catch 
 | 
			
		||||
            //{
 | 
			
		||||
            //    reason = "Malformed hostname";
 | 
			
		||||
            //    return null;
 | 
			
		||||
            //}
 | 
			
		||||
 | 
			
		||||
            GridRegion regInfo;
 | 
			
		||||
            bool success = TryCreateLink(scopeID, xloc, yloc, regionName, port, host, out regInfo, out reason);
 | 
			
		||||
| 
						 | 
				
			
			@ -217,6 +215,11 @@ namespace OpenSim.Services.GridService
 | 
			
		|||
            regInfo.RegionLocY = yloc;
 | 
			
		||||
            regInfo.ScopeID = scopeID;
 | 
			
		||||
 | 
			
		||||
            // Big HACK for Simian Grid !!!
 | 
			
		||||
            // We need to clean up all URLs used in OpenSim !!!
 | 
			
		||||
            if (externalHostName.Contains("/"))
 | 
			
		||||
                regInfo.ServerURI = externalHostName;
 | 
			
		||||
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                regInfo.InternalEndPoint = new IPEndPoint(IPAddress.Parse("0.0.0.0"), (int)0);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue