diff options
Diffstat (limited to 'OpenSim/Server/Handlers/Login/LLLoginHandlers.cs')
-rw-r--r-- | OpenSim/Server/Handlers/Login/LLLoginHandlers.cs | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs index 30dc65e..48f5f99 100644 --- a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs +++ b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs | |||
@@ -88,14 +88,26 @@ namespace OpenSim.Server.Handlers.Login | |||
88 | startLocation = requestData["start"].ToString(); | 88 | startLocation = requestData["start"].ToString(); |
89 | 89 | ||
90 | string clientVersion = "Unknown"; | 90 | string clientVersion = "Unknown"; |
91 | if (requestData.Contains("version")) | 91 | if (requestData.Contains("version") && requestData["version"] != null) |
92 | clientVersion = requestData["version"].ToString(); | 92 | clientVersion = requestData["version"].ToString(); |
93 | // We should do something interesting with the client version... | 93 | // We should do something interesting with the client version... |
94 | 94 | ||
95 | string channel = "Unknown"; | ||
96 | if (requestData.Contains("channel") && requestData["channel"] != null) | ||
97 | channel = requestData["channel"].ToString(); | ||
98 | |||
99 | string mac = "Unknown"; | ||
100 | if (requestData.Contains("mac") && requestData["mac"] != null) | ||
101 | mac = requestData["mac"].ToString(); | ||
102 | |||
103 | string id0 = "Unknown"; | ||
104 | if (requestData.Contains("id0") && requestData["id0"] != null) | ||
105 | id0 = requestData["id0"].ToString(); | ||
106 | |||
95 | //m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion); | 107 | //m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion); |
96 | 108 | ||
97 | LoginResponse reply = null; | 109 | LoginResponse reply = null; |
98 | reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, remoteClient); | 110 | reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, channel, mac, id0, remoteClient); |
99 | 111 | ||
100 | XmlRpcResponse response = new XmlRpcResponse(); | 112 | XmlRpcResponse response = new XmlRpcResponse(); |
101 | response.Value = reply.ToHashtable(); | 113 | response.Value = reply.ToHashtable(); |
@@ -166,7 +178,8 @@ namespace OpenSim.Server.Handlers.Login | |||
166 | m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation); | 178 | m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation); |
167 | 179 | ||
168 | LoginResponse reply = null; | 180 | LoginResponse reply = null; |
169 | reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID, String.Empty, remoteClient); | 181 | reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID, |
182 | map["version"].AsString(), map["channel"].AsString(), map["mac"].AsString(), map["id0"].AsString(), remoteClient); | ||
170 | return reply.ToOSDMap(); | 183 | return reply.ToOSDMap(); |
171 | 184 | ||
172 | } | 185 | } |