Merge branch 'master' into careminster-presence-refactor
commit
0b75f759b4
|
@ -787,8 +787,6 @@ CREATE TABLE `regionwindlight` (
|
||||||
PRIMARY KEY (`region_id`)
|
PRIMARY KEY (`region_id`)
|
||||||
);
|
);
|
||||||
|
|
||||||
ALTER TABLE estate_settings AUTO_INCREMENT = 100;
|
|
||||||
COMMIT;
|
|
||||||
|
|
||||||
:VERSION 33 #---------------------
|
:VERSION 33 #---------------------
|
||||||
|
|
||||||
|
|
|
@ -1362,6 +1362,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
m_regInfo.EstateSettings.EstateOwner = account.PrincipalID;
|
m_regInfo.EstateSettings.EstateOwner = account.PrincipalID;
|
||||||
m_regInfo.EstateSettings.Save();
|
m_regInfo.EstateSettings.Save();
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
m_log.ErrorFormat("[SCENE]: Unable to store account. If this simulator is connected to a grid,\n you must create the estate owner account first.");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -114,10 +114,9 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
{
|
{
|
||||||
if (identity["Type"].AsString() == "md5hash")
|
if (identity["Type"].AsString() == "md5hash")
|
||||||
{
|
{
|
||||||
string credential = identity["Credential"].AsString();
|
string authorizeResult;
|
||||||
|
if (CheckPassword(principalID, password, identity["Credential"].AsString(), out authorizeResult))
|
||||||
if (password == credential || "$1$" + password == credential || "$1$" + Utils.MD5String(password) == credential || Utils.MD5String(password) == credential)
|
return authorizeResult;
|
||||||
return Authorize(principalID);
|
|
||||||
|
|
||||||
md5hashFound = true;
|
md5hashFound = true;
|
||||||
break;
|
break;
|
||||||
|
@ -125,9 +124,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (md5hashFound)
|
if (!md5hashFound)
|
||||||
m_log.Warn("[SIMIAN AUTH CONNECTOR]: Authentication failed for " + principalID + " using md5hash $1$" + Utils.MD5String(password));
|
|
||||||
else
|
|
||||||
m_log.Warn("[SIMIAN AUTH CONNECTOR]: Authentication failed for " + principalID + ", no md5hash identity found");
|
m_log.Warn("[SIMIAN AUTH CONNECTOR]: Authentication failed for " + principalID + ", no md5hash identity found");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -228,6 +225,48 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private bool CheckPassword(UUID userID, string password, string simianGridCredential, out string authorizeResult)
|
||||||
|
{
|
||||||
|
if (simianGridCredential.Contains(":"))
|
||||||
|
{
|
||||||
|
// Salted version
|
||||||
|
int idx = simianGridCredential.IndexOf(':');
|
||||||
|
string finalhash = simianGridCredential.Substring(0, idx);
|
||||||
|
string salt = simianGridCredential.Substring(idx + 1);
|
||||||
|
|
||||||
|
if (finalhash == Utils.MD5String(password + ":" + salt))
|
||||||
|
{
|
||||||
|
authorizeResult = Authorize(userID);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_log.Warn("[SIMIAN AUTH CONNECTOR]: Authentication failed for " + userID +
|
||||||
|
" using md5hash " + Utils.MD5String(password) + ":" + salt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Unsalted version
|
||||||
|
if (password == simianGridCredential ||
|
||||||
|
"$1$" + password == simianGridCredential ||
|
||||||
|
"$1$" + Utils.MD5String(password) == simianGridCredential ||
|
||||||
|
Utils.MD5String(password) == simianGridCredential)
|
||||||
|
{
|
||||||
|
authorizeResult = Authorize(userID);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_log.Warn("[SIMIAN AUTH CONNECTOR]: Authentication failed for " + userID +
|
||||||
|
" using md5hash $1$" + Utils.MD5String(password));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
authorizeResult = null;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
private string Authorize(UUID userID)
|
private string Authorize(UUID userID)
|
||||||
{
|
{
|
||||||
NameValueCollection requestArgs = new NameValueCollection
|
NameValueCollection requestArgs = new NameValueCollection
|
||||||
|
|
|
@ -29,6 +29,8 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
|
||||||
|
using OpenSim.Framework;
|
||||||
|
|
||||||
namespace OpenSim.Services.Interfaces
|
namespace OpenSim.Services.Interfaces
|
||||||
{
|
{
|
||||||
public class UserAccount
|
public class UserAccount
|
||||||
|
@ -50,7 +52,7 @@ namespace OpenSim.Services.Interfaces
|
||||||
LastName = lastName;
|
LastName = lastName;
|
||||||
Email = email;
|
Email = email;
|
||||||
ServiceURLs = new Dictionary<string, object>();
|
ServiceURLs = new Dictionary<string, object>();
|
||||||
// Created = ???
|
Created = Util.UnixTimeSinceEpoch();
|
||||||
}
|
}
|
||||||
|
|
||||||
public string FirstName;
|
public string FirstName;
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
;; HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService
|
;; HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService
|
||||||
;; OpenSim.Server.Handlers.dll:UserAgentService
|
;; OpenSim.Server.Handlers.dll:UserAgentService
|
||||||
;; OpenSim.Server.Handlers.dll:HGInventoryServiceInConnector
|
;; Additional OpenSim.Server.Handlers.dll:AssetServiceConnector and
|
||||||
;; An additional OpenSim.Server.Handlers.dll:AssetServiceConnector is started
|
;; OpenSim.Server.Handlers.dll:XInventoryInConnector
|
||||||
;; in port 8002, outside the firewall
|
;; are started in port 8002, outside the firewall
|
||||||
;;
|
;;
|
||||||
|
|
||||||
[Startup]
|
[Startup]
|
||||||
ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003/OpenSim.Server.Handlers.dll:XInventoryServiceInConnector,8002/OpenSim.Server.Handlers.dll:FreeswitchServerConnector,8003/OpenSim.Server.Handlers.dll:GridServiceConnector,8003/OpenSim.Server.Handlers.dll:GridInfoServerInConnector,8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector,8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector,8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector,8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector,8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector,8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector,8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector,8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector,8002/OpenSim.Server.Handlers.dll:GatekeeperServiceInConnector,8002/OpenSim.Server.Handlers.dll:UserAgentServerConnector,HGInventoryService@8002/OpenSim.Server.Handlers.dll:XInventoryInConnector,8002/OpenSim.Server.Handlers.dll:AssetServiceConnector"
|
ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003/OpenSim.Server.Handlers.dll:XInventoryInConnector,8002/OpenSim.Server.Handlers.dll:FreeswitchServerConnector,8003/OpenSim.Server.Handlers.dll:GridServiceConnector,8003/OpenSim.Server.Handlers.dll:GridInfoServerInConnector,8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector,8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector,8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector,8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector,8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector,8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector,8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector,8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector,8002/OpenSim.Server.Handlers.dll:GatekeeperServiceInConnector,8002/OpenSim.Server.Handlers.dll:UserAgentServerConnector,HGInventoryService@8002/OpenSim.Server.Handlers.dll:XInventoryInConnector,8002/OpenSim.Server.Handlers.dll:AssetServiceConnector"
|
||||||
|
|
||||||
; * This is common for all services, it's the network setup for the entire
|
; * This is common for all services, it's the network setup for the entire
|
||||||
; * server instance, if none if specified above
|
; * server instance, if none if specified above
|
||||||
|
|
Loading…
Reference in New Issue