aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Server')
-rw-r--r--OpenSim/Server/Handlers/Simulation/AgentHandlers.cs16
1 files changed, 14 insertions, 2 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
index f912758..76b593a 100644
--- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
@@ -117,7 +117,7 @@ namespace OpenSim.Server.Handlers.Simulation
117 117
118 } 118 }
119 119
120 protected virtual void DoQueryAccess(Hashtable request, Hashtable responsedata, UUID id, UUID regionID) 120 protected virtual void DoQueryAccess(Hashtable request, Hashtable responsedata, UUID agentID, UUID regionID)
121 { 121 {
122 if (m_SimulationService == null) 122 if (m_SimulationService == null)
123 { 123 {
@@ -132,16 +132,28 @@ namespace OpenSim.Server.Handlers.Simulation
132 // m_log.DebugFormat("[AGENT HANDLER]: Received QUERYACCESS with {0}", (string)request["body"]); 132 // m_log.DebugFormat("[AGENT HANDLER]: Received QUERYACCESS with {0}", (string)request["body"]);
133 OSDMap args = Utils.GetOSDMap((string)request["body"]); 133 OSDMap args = Utils.GetOSDMap((string)request["body"]);
134 134
135 bool viaTeleport = true;
136 if (args.ContainsKey("viaTeleport"))
137 viaTeleport = args["viaTeleport"].AsBoolean();
138
135 Vector3 position = Vector3.Zero; 139 Vector3 position = Vector3.Zero;
136 if (args.ContainsKey("position")) 140 if (args.ContainsKey("position"))
137 position = Vector3.Parse(args["position"].AsString()); 141 position = Vector3.Parse(args["position"].AsString());
138 142
143 string agentHomeURI = null;
144 if (args.ContainsKey("agent_home_uri"))
145 agentHomeURI = args["agent_home_uri"].AsString();
146
147 string theirVersion = string.Empty;
148 if (args.ContainsKey("my_version"))
149 theirVersion = args["my_version"].AsString();
150
139 GridRegion destination = new GridRegion(); 151 GridRegion destination = new GridRegion();
140 destination.RegionID = regionID; 152 destination.RegionID = regionID;
141 153
142 string reason; 154 string reason;
143 string version; 155 string version;
144 bool result = m_SimulationService.QueryAccess(destination, id, position, out version, out reason); 156 bool result = m_SimulationService.QueryAccess(destination, agentID, agentHomeURI, viaTeleport, position, theirVersion, out version, out reason);
145 157
146 responsedata["int_response_code"] = HttpStatusCode.OK; 158 responsedata["int_response_code"] = HttpStatusCode.OK;
147 159