diff options
-rw-r--r-- | OpenSim/Server/Handlers/Login/LLLoginHandlers.cs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs index 48f5f99..8048f86 100644 --- a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs +++ b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs | |||
@@ -74,12 +74,23 @@ namespace OpenSim.Server.Handlers.Login | |||
74 | if (requestData != null) | 74 | if (requestData != null) |
75 | { | 75 | { |
76 | if (requestData.ContainsKey("first") && requestData["first"] != null && | 76 | if (requestData.ContainsKey("first") && requestData["first"] != null && |
77 | requestData.ContainsKey("last") && requestData["last"] != null && | 77 | requestData.ContainsKey("last") && requestData["last"] != null && ( |
78 | requestData.ContainsKey("passwd") && requestData["passwd"] != null) | 78 | (requestData.ContainsKey("passwd") && requestData["passwd"] != null) || |
79 | (!requestData.ContainsKey("passwd") && requestData.ContainsKey("web_login_key") && requestData["web_login_key"] != null && requestData["web_login_key"].ToString() != UUID.Zero.ToString()) | ||
80 | )) | ||
79 | { | 81 | { |
80 | string first = requestData["first"].ToString(); | 82 | string first = requestData["first"].ToString(); |
81 | string last = requestData["last"].ToString(); | 83 | string last = requestData["last"].ToString(); |
82 | string passwd = requestData["passwd"].ToString(); | 84 | string passwd = null; |
85 | if (requestData.ContainsKey("passwd")) | ||
86 | { | ||
87 | passwd = requestData["passwd"].ToString(); | ||
88 | } | ||
89 | else if (requestData.ContainsKey("web_login_key")) | ||
90 | { | ||
91 | passwd = "$1$" + requestData["web_login_key"].ToString(); | ||
92 | m_log.InfoFormat("[LOGIN]: XMLRPC Login Req key {0}", passwd); | ||
93 | } | ||
83 | string startLocation = string.Empty; | 94 | string startLocation = string.Empty; |
84 | UUID scopeID = UUID.Zero; | 95 | UUID scopeID = UUID.Zero; |
85 | if (requestData["scope_id"] != null) | 96 | if (requestData["scope_id"] != null) |
@@ -103,7 +114,7 @@ namespace OpenSim.Server.Handlers.Login | |||
103 | string id0 = "Unknown"; | 114 | string id0 = "Unknown"; |
104 | if (requestData.Contains("id0") && requestData["id0"] != null) | 115 | if (requestData.Contains("id0") && requestData["id0"] != null) |
105 | id0 = requestData["id0"].ToString(); | 116 | id0 = requestData["id0"].ToString(); |
106 | 117 | ||
107 | //m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion); | 118 | //m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion); |
108 | 119 | ||
109 | LoginResponse reply = null; | 120 | LoginResponse reply = null; |