diff options
Diffstat (limited to 'OpenSim/Services/LLLoginService/LLLoginResponse.cs')
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginResponse.cs | 39 |
1 files changed, 28 insertions, 11 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginResponse.cs b/OpenSim/Services/LLLoginService/LLLoginResponse.cs index c3756d0..823fd36 100644 --- a/OpenSim/Services/LLLoginService/LLLoginResponse.cs +++ b/OpenSim/Services/LLLoginService/LLLoginResponse.cs | |||
@@ -55,12 +55,13 @@ namespace OpenSim.Services.LLLoginService | |||
55 | public static LLFailedLoginResponse InventoryProblem; | 55 | public static LLFailedLoginResponse InventoryProblem; |
56 | public static LLFailedLoginResponse DeadRegionProblem; | 56 | public static LLFailedLoginResponse DeadRegionProblem; |
57 | public static LLFailedLoginResponse LoginBlockedProblem; | 57 | public static LLFailedLoginResponse LoginBlockedProblem; |
58 | public static LLFailedLoginResponse UnverifiedAccountProblem; | ||
58 | public static LLFailedLoginResponse AlreadyLoggedInProblem; | 59 | public static LLFailedLoginResponse AlreadyLoggedInProblem; |
59 | public static LLFailedLoginResponse InternalError; | 60 | public static LLFailedLoginResponse InternalError; |
60 | 61 | ||
61 | static LLFailedLoginResponse() | 62 | static LLFailedLoginResponse() |
62 | { | 63 | { |
63 | UserProblem = new LLFailedLoginResponse("key", | 64 | UserProblem = new LLFailedLoginResponse("key", |
64 | "Could not authenticate your avatar. Please check your username and password, and check the grid if problems persist.", | 65 | "Could not authenticate your avatar. Please check your username and password, and check the grid if problems persist.", |
65 | "false"); | 66 | "false"); |
66 | GridProblem = new LLFailedLoginResponse("key", | 67 | GridProblem = new LLFailedLoginResponse("key", |
@@ -75,11 +76,14 @@ namespace OpenSim.Services.LLLoginService | |||
75 | LoginBlockedProblem = new LLFailedLoginResponse("presence", | 76 | LoginBlockedProblem = new LLFailedLoginResponse("presence", |
76 | "Logins are currently restricted. Please try again later.", | 77 | "Logins are currently restricted. Please try again later.", |
77 | "false"); | 78 | "false"); |
79 | UnverifiedAccountProblem = new LLFailedLoginResponse("presence", | ||
80 | "Your account has not yet been verified. Please check " + | ||
81 | "your email and click the provided link.", | ||
82 | "false"); | ||
78 | AlreadyLoggedInProblem = new LLFailedLoginResponse("presence", | 83 | AlreadyLoggedInProblem = new LLFailedLoginResponse("presence", |
79 | "You appear to be already logged in. " + | 84 | "You appear to be already logged in. " + |
80 | "If this is not the case please wait for your session to timeout. " + | 85 | "Please wait a a minute or two and retry. " + |
81 | "If this takes longer than a few minutes please contact the grid owner. " + | 86 | "If this takes longer than a few minutes please contact the grid owner. ", |
82 | "Please wait 5 minutes if you are going to connect to a region nearby to the region you were at previously.", | ||
83 | "false"); | 87 | "false"); |
84 | InternalError = new LLFailedLoginResponse("Internal Error", "Error generating Login Response", "false"); | 88 | InternalError = new LLFailedLoginResponse("Internal Error", "Error generating Login Response", "false"); |
85 | } | 89 | } |
@@ -145,6 +149,7 @@ namespace OpenSim.Services.LLLoginService | |||
145 | private UUID agentID; | 149 | private UUID agentID; |
146 | private UUID sessionID; | 150 | private UUID sessionID; |
147 | private UUID secureSessionID; | 151 | private UUID secureSessionID; |
152 | private UUID realID; | ||
148 | 153 | ||
149 | // Login Flags | 154 | // Login Flags |
150 | private string dst; | 155 | private string dst; |
@@ -228,8 +233,9 @@ namespace OpenSim.Services.LLLoginService | |||
228 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, | 233 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, |
229 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, | 234 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, |
230 | string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, | 235 | string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, |
231 | GridRegion home, IPEndPoint clientIP, string mapTileURL, string searchURL, string currency, | 236 | |
232 | string DSTZone, string destinationsURL, string avatarsURL, string classifiedFee, int maxAgentGroups) | 237 | GridRegion home, IPEndPoint clientIP, string mapTileURL, string profileURL, string openIDURL, string searchURL, string currency, |
238 | string DSTZone, string destinationsURL, string avatarsURL, UUID realID, string classifiedFee,int maxAgentGroups) | ||
233 | : this() | 239 | : this() |
234 | { | 240 | { |
235 | FillOutInventoryData(invSkel, libService); | 241 | FillOutInventoryData(invSkel, libService); |
@@ -242,6 +248,7 @@ namespace OpenSim.Services.LLLoginService | |||
242 | AgentID = account.PrincipalID; | 248 | AgentID = account.PrincipalID; |
243 | SessionID = aCircuit.SessionID; | 249 | SessionID = aCircuit.SessionID; |
244 | SecureSessionID = aCircuit.SecureSessionID; | 250 | SecureSessionID = aCircuit.SecureSessionID; |
251 | RealID = realID; | ||
245 | Message = message; | 252 | Message = message; |
246 | BuddList = ConvertFriendListItem(friendsList); | 253 | BuddList = ConvertFriendListItem(friendsList); |
247 | StartLocation = where; | 254 | StartLocation = where; |
@@ -299,7 +306,7 @@ namespace OpenSim.Services.LLLoginService | |||
299 | { | 306 | { |
300 | DST = dstTimeZone.IsDaylightSavingTime(DateTime.Now) ? "Y" : "N"; | 307 | DST = dstTimeZone.IsDaylightSavingTime(DateTime.Now) ? "Y" : "N"; |
301 | } | 308 | } |
302 | 309 | ||
303 | break; | 310 | break; |
304 | } | 311 | } |
305 | } | 312 | } |
@@ -383,6 +390,7 @@ namespace OpenSim.Services.LLLoginService | |||
383 | private void FillOutRegionData(GridRegion destination) | 390 | private void FillOutRegionData(GridRegion destination) |
384 | { | 391 | { |
385 | IPEndPoint endPoint = destination.ExternalEndPoint; | 392 | IPEndPoint endPoint = destination.ExternalEndPoint; |
393 | if (endPoint == null) return; | ||
386 | SimAddress = endPoint.Address.ToString(); | 394 | SimAddress = endPoint.Address.ToString(); |
387 | SimPort = (uint)endPoint.Port; | 395 | SimPort = (uint)endPoint.Port; |
388 | RegionX = (uint)destination.RegionLocX; | 396 | RegionX = (uint)destination.RegionLocX; |
@@ -408,7 +416,7 @@ namespace OpenSim.Services.LLLoginService | |||
408 | // try | 416 | // try |
409 | // { | 417 | // { |
410 | // // First try to fetch DST from Pacific Standard Time, because this is | 418 | // // First try to fetch DST from Pacific Standard Time, because this is |
411 | // // the one expected by the viewer. "US/Pacific" is the string to search | 419 | // // the one expected by the viewer. "US/Pacific" is the string to search |
412 | // // on linux and mac, and should work also on Windows (to confirm) | 420 | // // on linux and mac, and should work also on Windows (to confirm) |
413 | // gridTimeZone = TimeZoneInfo.FindSystemTimeZoneById("US/Pacific"); | 421 | // gridTimeZone = TimeZoneInfo.FindSystemTimeZoneById("US/Pacific"); |
414 | // } | 422 | // } |
@@ -438,7 +446,7 @@ namespace OpenSim.Services.LLLoginService | |||
438 | ErrorReason = "key"; | 446 | ErrorReason = "key"; |
439 | welcomeMessage = "Welcome to OpenSim!"; | 447 | welcomeMessage = "Welcome to OpenSim!"; |
440 | seedCapability = String.Empty; | 448 | seedCapability = String.Empty; |
441 | home = "{'region_handle':[" | 449 | home = "{'region_handle':[" |
442 | + "r" + Util.RegionToWorldLoc(1000).ToString() | 450 | + "r" + Util.RegionToWorldLoc(1000).ToString() |
443 | + "," | 451 | + "," |
444 | + "r" + Util.RegionToWorldLoc(1000).ToString() | 452 | + "r" + Util.RegionToWorldLoc(1000).ToString() |
@@ -473,6 +481,7 @@ namespace OpenSim.Services.LLLoginService | |||
473 | SessionID = UUID.Random(); | 481 | SessionID = UUID.Random(); |
474 | SecureSessionID = UUID.Random(); | 482 | SecureSessionID = UUID.Random(); |
475 | AgentID = UUID.Random(); | 483 | AgentID = UUID.Random(); |
484 | RealID = UUID.Zero; | ||
476 | 485 | ||
477 | Hashtable InitialOutfitHash = new Hashtable(); | 486 | Hashtable InitialOutfitHash = new Hashtable(); |
478 | InitialOutfitHash["folder_name"] = "Nightclub Female"; | 487 | InitialOutfitHash["folder_name"] = "Nightclub Female"; |
@@ -518,6 +527,7 @@ namespace OpenSim.Services.LLLoginService | |||
518 | responseData["http_port"] = (Int32)SimHttpPort; | 527 | responseData["http_port"] = (Int32)SimHttpPort; |
519 | 528 | ||
520 | responseData["agent_id"] = AgentID.ToString(); | 529 | responseData["agent_id"] = AgentID.ToString(); |
530 | responseData["real_id"] = RealID.ToString(); | ||
521 | responseData["session_id"] = SessionID.ToString(); | 531 | responseData["session_id"] = SessionID.ToString(); |
522 | responseData["secure_session_id"] = SecureSessionID.ToString(); | 532 | responseData["secure_session_id"] = SecureSessionID.ToString(); |
523 | responseData["circuit_code"] = CircuitCode; | 533 | responseData["circuit_code"] = CircuitCode; |
@@ -582,7 +592,7 @@ namespace OpenSim.Services.LLLoginService | |||
582 | // responseData["real_currency"] = currency; | 592 | // responseData["real_currency"] = currency; |
583 | responseData["currency"] = currency; | 593 | responseData["currency"] = currency; |
584 | } | 594 | } |
585 | 595 | ||
586 | if (ClassifiedFee != String.Empty) | 596 | if (ClassifiedFee != String.Empty) |
587 | responseData["classified_fee"] = ClassifiedFee; | 597 | responseData["classified_fee"] = ClassifiedFee; |
588 | 598 | ||
@@ -613,6 +623,7 @@ namespace OpenSim.Services.LLLoginService | |||
613 | map["sim_ip"] = OSD.FromString(SimAddress); | 623 | map["sim_ip"] = OSD.FromString(SimAddress); |
614 | 624 | ||
615 | map["agent_id"] = OSD.FromUUID(AgentID); | 625 | map["agent_id"] = OSD.FromUUID(AgentID); |
626 | map["real_id"] = OSD.FromUUID(RealID); | ||
616 | map["session_id"] = OSD.FromUUID(SessionID); | 627 | map["session_id"] = OSD.FromUUID(SessionID); |
617 | map["secure_session_id"] = OSD.FromUUID(SecureSessionID); | 628 | map["secure_session_id"] = OSD.FromUUID(SecureSessionID); |
618 | map["circuit_code"] = OSD.FromInteger(CircuitCode); | 629 | map["circuit_code"] = OSD.FromInteger(CircuitCode); |
@@ -924,6 +935,12 @@ namespace OpenSim.Services.LLLoginService | |||
924 | set { secureSessionID = value; } | 935 | set { secureSessionID = value; } |
925 | } | 936 | } |
926 | 937 | ||
938 | public UUID RealID | ||
939 | { | ||
940 | get { return realID; } | ||
941 | set { realID = value; } | ||
942 | } | ||
943 | |||
927 | public Int32 CircuitCode | 944 | public Int32 CircuitCode |
928 | { | 945 | { |
929 | get { return circuitCode; } | 946 | get { return circuitCode; } |
@@ -1052,7 +1069,7 @@ namespace OpenSim.Services.LLLoginService | |||
1052 | get { return activeGestures; } | 1069 | get { return activeGestures; } |
1053 | set { activeGestures = value; } | 1070 | set { activeGestures = value; } |
1054 | } | 1071 | } |
1055 | 1072 | ||
1056 | public string Home | 1073 | public string Home |
1057 | { | 1074 | { |
1058 | get { return home; } | 1075 | get { return home; } |