aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/LLLoginService/LLLoginResponse.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginResponse.cs39
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; }