aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server
diff options
context:
space:
mode:
authorMelanie2010-04-27 03:48:49 +0100
committerMelanie2010-04-27 03:48:49 +0100
commit1e743eab6d620a14876a1ec9b41b3e136af889d3 (patch)
treea9f0a968d10d6f65040c5ec13b0726ddf23377b7 /OpenSim/Server
parentFix build break. (diff)
downloadopensim-SC_OLD-1e743eab6d620a14876a1ec9b41b3e136af889d3.zip
opensim-SC_OLD-1e743eab6d620a14876a1ec9b41b3e136af889d3.tar.gz
opensim-SC_OLD-1e743eab6d620a14876a1ec9b41b3e136af889d3.tar.bz2
opensim-SC_OLD-1e743eab6d620a14876a1ec9b41b3e136af889d3.tar.xz
Allow a client to pass a scope id to log into in the login XML / LLSD
Diffstat (limited to 'OpenSim/Server')
-rw-r--r--OpenSim/Server/Handlers/Login/LLLoginHandlers.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
index aaa958b..daf2704 100644
--- a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
+++ b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
@@ -72,6 +72,9 @@ namespace OpenSim.Server.Handlers.Login
72 string last = requestData["last"].ToString(); 72 string last = requestData["last"].ToString();
73 string passwd = requestData["passwd"].ToString(); 73 string passwd = requestData["passwd"].ToString();
74 string startLocation = string.Empty; 74 string startLocation = string.Empty;
75 UUID scopeID = UUID.Zero;
76 if (requestData["scope_id"] != null)
77 scopeID = new UUID(requestData["scope_id"].ToString());
75 if (requestData.ContainsKey("start")) 78 if (requestData.ContainsKey("start"))
76 startLocation = requestData["start"].ToString(); 79 startLocation = requestData["start"].ToString();
77 80
@@ -83,7 +86,7 @@ namespace OpenSim.Server.Handlers.Login
83 m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion); 86 m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion);
84 87
85 LoginResponse reply = null; 88 LoginResponse reply = null;
86 reply = m_LocalService.Login(first, last, passwd, startLocation, remoteClient); 89 reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, remoteClient);
87 90
88 XmlRpcResponse response = new XmlRpcResponse(); 91 XmlRpcResponse response = new XmlRpcResponse();
89 response.Value = reply.ToHashtable(); 92 response.Value = reply.ToHashtable();
@@ -109,10 +112,15 @@ namespace OpenSim.Server.Handlers.Login
109 if (map.ContainsKey("start")) 112 if (map.ContainsKey("start"))
110 startLocation = map["start"].AsString(); 113 startLocation = map["start"].AsString();
111 114
115 UUID scopeID = UUID.Zero;
116
117 if (map.ContainsKey("scope_id"))
118 scopeID = new UUID(map["scope_id"].AsString());
119
112 m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation); 120 m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation);
113 121
114 LoginResponse reply = null; 122 LoginResponse reply = null;
115 reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, remoteClient); 123 reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID, remoteClient);
116 return reply.ToOSDMap(); 124 return reply.ToOSDMap();
117 125
118 } 126 }