aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
authorMelanie Thielker2010-05-06 00:34:49 +0200
committerMelanie Thielker2010-05-06 00:34:49 +0200
commit733a07e061cdcb6095677758a264ba976bb94b93 (patch)
treeed3e9ac5c860884a17427dcfb9ea5a2cccc0a72f /OpenSim/Services
parentAdd a XMLRPC method to remotely set the login level for the LLLoginService. (diff)
downloadopensim-SC_OLD-733a07e061cdcb6095677758a264ba976bb94b93.zip
opensim-SC_OLD-733a07e061cdcb6095677758a264ba976bb94b93.tar.gz
opensim-SC_OLD-733a07e061cdcb6095677758a264ba976bb94b93.tar.bz2
opensim-SC_OLD-733a07e061cdcb6095677758a264ba976bb94b93.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')
-rw-r--r--OpenSim/Services/Interfaces/ILoginService.cs2
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs13
2 files changed, 8 insertions, 7 deletions
diff --git a/OpenSim/Services/Interfaces/ILoginService.cs b/OpenSim/Services/Interfaces/ILoginService.cs
index 513ab4a..9e57339 100644
--- a/OpenSim/Services/Interfaces/ILoginService.cs
+++ b/OpenSim/Services/Interfaces/ILoginService.cs
@@ -47,7 +47,7 @@ namespace OpenSim.Services.Interfaces
47 47
48 public interface ILoginService 48 public interface ILoginService
49 { 49 {
50 LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, IPEndPoint clientIP); 50 LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP);
51 Hashtable SetLevel(string firstName, string lastName, string passwd, int level, IPEndPoint clientIP); 51 Hashtable SetLevel(string firstName, string lastName, string passwd, int level, IPEndPoint clientIP);
52 } 52 }
53 53
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index 5b950e0..9efdd11 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();
@@ -326,7 +326,7 @@ namespace OpenSim.Services.LLLoginService
326 // Instantiate/get the simulation interface and launch an agent at the destination 326 // Instantiate/get the simulation interface and launch an agent at the destination
327 // 327 //
328 string reason = string.Empty; 328 string reason = string.Empty;
329 AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, out where, out reason); 329 AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, clientVersion, out where, out reason);
330 330
331 if (aCircuit == null) 331 if (aCircuit == null)
332 { 332 {
@@ -592,7 +592,7 @@ namespace OpenSim.Services.LLLoginService
592 } 592 }
593 593
594 protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar, 594 protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar,
595 UUID session, UUID secureSession, Vector3 position, string currentWhere, out string where, out string reason) 595 UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, out string where, out string reason)
596 { 596 {
597 where = currentWhere; 597 where = currentWhere;
598 ISimulationService simConnector = null; 598 ISimulationService simConnector = null;
@@ -632,7 +632,7 @@ namespace OpenSim.Services.LLLoginService
632 if (m_UserAgentService == null && simConnector != null) 632 if (m_UserAgentService == null && simConnector != null)
633 { 633 {
634 circuitCode = (uint)Util.RandomClass.Next(); ; 634 circuitCode = (uint)Util.RandomClass.Next(); ;
635 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position); 635 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
636 success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason); 636 success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason);
637 if (!success && m_GridService != null) 637 if (!success && m_GridService != null)
638 { 638 {
@@ -657,7 +657,7 @@ namespace OpenSim.Services.LLLoginService
657 if (m_UserAgentService != null) 657 if (m_UserAgentService != null)
658 { 658 {
659 circuitCode = (uint)Util.RandomClass.Next(); ; 659 circuitCode = (uint)Util.RandomClass.Next(); ;
660 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position); 660 aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
661 success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, out reason); 661 success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, out reason);
662 if (!success && m_GridService != null) 662 if (!success && m_GridService != null)
663 { 663 {
@@ -686,7 +686,7 @@ namespace OpenSim.Services.LLLoginService
686 } 686 }
687 687
688 private AgentCircuitData MakeAgent(GridRegion region, UserAccount account, 688 private AgentCircuitData MakeAgent(GridRegion region, UserAccount account,
689 AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position) 689 AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position, string viewer)
690 { 690 {
691 AgentCircuitData aCircuit = new AgentCircuitData(); 691 AgentCircuitData aCircuit = new AgentCircuitData();
692 692
@@ -707,6 +707,7 @@ namespace OpenSim.Services.LLLoginService
707 aCircuit.SecureSessionID = secureSession; 707 aCircuit.SecureSessionID = secureSession;
708 aCircuit.SessionID = session; 708 aCircuit.SessionID = session;
709 aCircuit.startpos = position; 709 aCircuit.startpos = position;
710 aCircuit.Viewer = viewer;
710 SetServiceURLs(aCircuit, account); 711 SetServiceURLs(aCircuit, account);
711 712
712 return aCircuit; 713 return aCircuit;