From 35260faead29c590bf01c1eb02130cfac22c38ad Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 16 Sep 2009 18:20:55 +0100 Subject: on iar save/load, let the user know if they put in the wrong password refactor GetUserInfo() to eliminate copypasta --- .../Inventory/Archiver/InventoryArchiverModule.cs | 39 ++++++++++------------ 1 file changed, 17 insertions(+), 22 deletions(-) (limited to 'OpenSim/Region/CoreModules') diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs index 1937637..9f49da9 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs @@ -125,10 +125,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver { if (m_scenes.Count > 0) { - CachedUserInfo userInfo = GetUserInfo(firstName, lastName); - string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(pass) + ":" + userInfo.UserProfile.PasswordSalt); - if (userInfo.UserProfile.PasswordHash != md5PasswdHash) - return false; + CachedUserInfo userInfo = GetUserInfo(firstName, lastName, pass); if (userInfo != null) { @@ -153,11 +150,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver { if (m_scenes.Count > 0) { - CachedUserInfo userInfo = GetUserInfo(firstName, lastName); - string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(pass) + ":" + userInfo.UserProfile.PasswordSalt); - if (userInfo.UserProfile.PasswordHash != md5PasswdHash) - return false; - + CachedUserInfo userInfo = GetUserInfo(firstName, lastName, pass); if (userInfo != null) { @@ -182,11 +175,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver { if (m_scenes.Count > 0) { - CachedUserInfo userInfo = GetUserInfo(firstName, lastName); - string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(pass) + ":" + userInfo.UserProfile.PasswordSalt); - if (userInfo.UserProfile.PasswordHash != md5PasswdHash) - return false; - + CachedUserInfo userInfo = GetUserInfo(firstName, lastName, pass); if (userInfo != null) { @@ -214,11 +203,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver { if (m_scenes.Count > 0) { - CachedUserInfo userInfo = GetUserInfo(firstName, lastName); - string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(pass) + ":" + userInfo.UserProfile.PasswordSalt); - if (userInfo.UserProfile.PasswordHash != md5PasswdHash) - return false; - + CachedUserInfo userInfo = GetUserInfo(firstName, lastName, pass); if (userInfo != null) { @@ -251,7 +236,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver if (cmdparams.Length < 6) { m_log.Error( - "[INVENTORY ARCHIVER]: usage is load iar []"); + "[INVENTORY ARCHIVER]: usage is load iar []"); return; } @@ -282,7 +267,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver if (cmdparams.Length < 5) { m_log.Error( - "[INVENTORY ARCHIVER]: usage is save iar []"); + "[INVENTORY ARCHIVER]: usage is save iar []"); return; } @@ -334,8 +319,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver /// /// /// + /// User password /// - protected CachedUserInfo GetUserInfo(string firstName, string lastName) + protected CachedUserInfo GetUserInfo(string firstName, string lastName, string pass) { CachedUserInfo userInfo = m_aScene.CommsManager.UserProfileCacheService.GetUserDetails(firstName, lastName); if (null == userInfo) @@ -345,6 +331,15 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver firstName, lastName); return null; } + + string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(pass) + ":" + userInfo.UserProfile.PasswordSalt); + if (userInfo.UserProfile.PasswordHash != md5PasswdHash) + { + m_log.ErrorFormat( + "[INVENTORY ARCHIVER]: Password for user {0} {1} incorrect. Please try again.", + firstName, lastName); + return null; + } return userInfo; } -- cgit v1.1