aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/LLLoginService/LLLoginService.cs
diff options
context:
space:
mode:
authorMelanie Thielker2010-05-06 00:34:49 +0200
committerMelanie2010-05-05 22:15:32 +0100
commit2ebe1482664533bb9b9040134fe4a23fbc939d51 (patch)
tree41c7c99c6da6ecd1ff217730e1dd95dd680ec5da /OpenSim/Services/LLLoginService/LLLoginService.cs
parentAdd a XMLRPC method to remotely set the login level for the LLLoginService. (diff)
downloadopensim-SC-2ebe1482664533bb9b9040134fe4a23fbc939d51.zip
opensim-SC-2ebe1482664533bb9b9040134fe4a23fbc939d51.tar.gz
opensim-SC-2ebe1482664533bb9b9040134fe4a23fbc939d51.tar.bz2
opensim-SC-2ebe1482664533bb9b9040134fe4a23fbc939d51.tar.xz
Plumb the viewer version string through into AgentCircuitData. Now all that
is left os to figure out what black magic turns AgentCircuitData into AgentData and then copy that into the ScenePresence, where m_Viewer is already added with this commit and waits for the data.
Diffstat (limited to 'OpenSim/Services/LLLoginService/LLLoginService.cs')
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs13
1 files changed, 7 insertions, 6 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index 95127d2..be90d38 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -200,7 +200,7 @@ namespace OpenSim.Services.LLLoginService
200 return response; 200 return response;
201 } 201 }
202 202
203 public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, IPEndPoint clientIP) 203 public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP)
204 { 204 {
205 bool success = false; 205 bool success = false;
206 UUID session = UUID.Random(); 206 UUID session = UUID.Random();
@@ -320,7 +320,7 @@ namespace OpenSim.Services.LLLoginService
320 // Instantiate/get the simulation interface and launch an agent at the destination 320 // Instantiate/get the simulation interface and launch an agent at the destination
321 // 321 //
322 string reason = string.Empty; 322 string reason = string.Empty;
323 AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, out where, out reason); 323 AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, clientVersion, out where, out reason);
324 324
325 if (aCircuit == null) 325 if (aCircuit == null)
326 { 326 {
@@ -586,7 +586,7 @@ namespace OpenSim.Services.LLLoginService
586 } 586 }
587 587
588 protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar, 588 protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar,
589 UUID session, UUID secureSession, Vector3 position, string currentWhere, out string where, out string reason) 589 UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, out string where, out string reason)
590 { 590 {
591 where = currentWhere; 591 where = currentWhere;
592 ISimulationService simConnector = null; 592 ISimulationService simConnector = null;
@@ -626,7 +626,7 @@ namespace OpenSim.Services.LLLoginService
626 if (m_UserAgentService == null && simConnector != null) 626 if (m_UserAgentService == null && simConnector != null)
627 { 627 {
628 circuitCode = (uint)Util.RandomClass.Next(); ; 628 circuitCode = (uint)Util.RandomClass.Next(); ;
629 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position); 629 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
630 success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason); 630 success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason);
631 if (!success && m_GridService != null) 631 if (!success && m_GridService != null)
632 { 632 {
@@ -651,7 +651,7 @@ namespace OpenSim.Services.LLLoginService
651 if (m_UserAgentService != null) 651 if (m_UserAgentService != null)
652 { 652 {
653 circuitCode = (uint)Util.RandomClass.Next(); ; 653 circuitCode = (uint)Util.RandomClass.Next(); ;
654 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position); 654 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
655 success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, out reason); 655 success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, out reason);
656 if (!success && m_GridService != null) 656 if (!success && m_GridService != null)
657 { 657 {
@@ -680,7 +680,7 @@ namespace OpenSim.Services.LLLoginService
680 } 680 }
681 681
682 private AgentCircuitData MakeAgent(GridRegion region, UserAccount account, 682 private AgentCircuitData MakeAgent(GridRegion region, UserAccount account,
683 AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position) 683 AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position, string viewer)
684 { 684 {
685 AgentCircuitData aCircuit = new AgentCircuitData(); 685 AgentCircuitData aCircuit = new AgentCircuitData();
686 686
@@ -701,6 +701,7 @@ namespace OpenSim.Services.LLLoginService
701 aCircuit.SecureSessionID = secureSession; 701 aCircuit.SecureSessionID = secureSession;
702 aCircuit.SessionID = session; 702 aCircuit.SessionID = session;
703 aCircuit.startpos = position; 703 aCircuit.startpos = position;
704 aCircuit.Viewer = viewer;
704 SetServiceURLs(aCircuit, account); 705 SetServiceURLs(aCircuit, account);
705 706
706 return aCircuit; 707 return aCircuit;