aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorArthur Valadares2009-07-07 23:07:57 +0000
committerArthur Valadares2009-07-07 23:07:57 +0000
commit7e8bfc461878b33fb85f99c2a751e3f66278f26e (patch)
treea3a1b240b8403b01d18bc47d336c5dd6bcd2f5e9
parentMake a renamed OpenSim.Server.exe use the corret ini file, e.g. (diff)
downloadopensim-SC-7e8bfc461878b33fb85f99c2a751e3f66278f26e.zip
opensim-SC-7e8bfc461878b33fb85f99c2a751e3f66278f26e.tar.gz
opensim-SC-7e8bfc461878b33fb85f99c2a751e3f66278f26e.tar.bz2
opensim-SC-7e8bfc461878b33fb85f99c2a751e3f66278f26e.tar.xz
* Allowing LLSD logins to do silent logout of last hung session on standalone only, following the already implemented XMLRPC behavior
-rw-r--r--OpenSim/Framework/Communications/Services/LoginService.cs25
1 files changed, 17 insertions, 8 deletions
diff --git a/OpenSim/Framework/Communications/Services/LoginService.cs b/OpenSim/Framework/Communications/Services/LoginService.cs
index 897c763..a9be197 100644
--- a/OpenSim/Framework/Communications/Services/LoginService.cs
+++ b/OpenSim/Framework/Communications/Services/LoginService.cs
@@ -197,7 +197,7 @@ namespace OpenSim.Framework.Communications.Services
197 { 197 {
198 // This is behavior for standalone (silent logout of last hung session) 198 // This is behavior for standalone (silent logout of last hung session)
199 m_log.InfoFormat( 199 m_log.InfoFormat(
200 "[LOGIN]: User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.", 200 "[LOGIN]: XMLRPC User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.",
201 firstname, lastname); 201 firstname, lastname);
202 } 202 }
203 } 203 }
@@ -422,14 +422,23 @@ namespace OpenSim.Framework.Communications.Services
422 // try to tell the region that their user is dead. 422 // try to tell the region that their user is dead.
423 LogOffUser(userProfile, " LLSD You were logged off because you logged in from another location"); 423 LogOffUser(userProfile, " LLSD You were logged off because you logged in from another location");
424 424
425 // Reject the login 425 if (m_warn_already_logged)
426 426 {
427 m_log.InfoFormat( 427 // This is behavior for for grid, reject login
428 "[LOGIN END]: LLSD Notifying user {0} {1} that they are already logged in", 428 m_log.InfoFormat(
429 userProfile.FirstName, userProfile.SurName); 429 "[LOGIN END]: LLSD Notifying user {0} {1} that they are already logged in",
430 userProfile.FirstName, userProfile.SurName);
430 431
431 userProfile.CurrentAgent = null; 432 userProfile.CurrentAgent = null;
432 return logResponse.CreateAlreadyLoggedInResponseLLSD(); 433 return logResponse.CreateAlreadyLoggedInResponseLLSD();
434 }
435 else
436 {
437 // This is behavior for standalone (silent logout of last hung session)
438 m_log.InfoFormat(
439 "[LOGIN]: LLSD User {0} {1} is already logged in, not notifying user, kicking old presence and starting new login.",
440 userProfile.FirstName, userProfile.SurName);
441 }
433 } 442 }
434 443
435 // Otherwise... 444 // Otherwise...