mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 09:16:28 +08:00
Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim
This commit is contained in:
@@ -29,7 +29,7 @@ namespace OpenSim
|
||||
{
|
||||
public class VersionInfo
|
||||
{
|
||||
private const string VERSION_NUMBER = "0.6.9";
|
||||
private const string VERSION_NUMBER = "0.7";
|
||||
private const Flavour VERSION_FLAVOUR = Flavour.Dev;
|
||||
|
||||
public enum Flavour
|
||||
@@ -71,4 +71,4 @@ namespace OpenSim
|
||||
/// </value>
|
||||
public readonly static int MajorInterfaceVersion = 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -263,8 +263,12 @@ namespace OpenSim.Framework
|
||||
|
||||
foreach (string key in parameters.Keys)
|
||||
{
|
||||
foreach (string value in parameters.GetValues(key))
|
||||
items.Add(String.Concat(key, "=", HttpUtility.UrlEncode(value ?? String.Empty)));
|
||||
string[] values = parameters.GetValues(key);
|
||||
if (values != null)
|
||||
{
|
||||
foreach (string value in values)
|
||||
items.Add(String.Concat(key, "=", HttpUtility.UrlEncode(value ?? String.Empty)));
|
||||
}
|
||||
}
|
||||
|
||||
return String.Join("&", items.ToArray());
|
||||
|
||||
@@ -1266,8 +1266,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
|
||||
UserAccount account = UserAccountService.GetUserAccount(m_regInfo.ScopeID, first, last);
|
||||
|
||||
if (account != null)
|
||||
if (account == null)
|
||||
{
|
||||
// Create a new account
|
||||
account = new UserAccount(m_regInfo.ScopeID, first, last, String.Empty);
|
||||
if (account.ServiceURLs == null || (account.ServiceURLs != null && account.ServiceURLs.Count == 0))
|
||||
{
|
||||
@@ -1325,7 +1326,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
}
|
||||
else
|
||||
{
|
||||
MainConsole.Instance.Output("User account not found. Please enter the name of an existing user");
|
||||
m_regInfo.EstateSettings.EstateOwner = account.PrincipalID;
|
||||
m_regInfo.EstateSettings.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1193,8 +1193,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
|
||||
else
|
||||
{
|
||||
string domain = string.Empty; //m_sceneList[0].CommsManager.NetworkServersInfo.UserURL;
|
||||
if (account.ServiceURLs["HomeURI"] != null)
|
||||
domain = account.ServiceURLs["HomeURI"].ToString();
|
||||
object homeUriObj;
|
||||
if (account.ServiceURLs.TryGetValue("HomeURI", out homeUriObj) && homeUriObj != null)
|
||||
domain = homeUriObj.ToString();
|
||||
// They're a local user, use this:
|
||||
info.RequestID.UserServiceURL = domain;
|
||||
}
|
||||
|
||||
@@ -177,9 +177,46 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||
|
||||
public bool SetPassword(UUID principalID, string passwd)
|
||||
{
|
||||
// TODO: Use GetIdentities to find the md5hash identity for principalID
|
||||
// and then update it with AddIdentity
|
||||
m_log.Error("[AUTH CONNECTOR]: Changing passwords is not implemented yet");
|
||||
// Fetch the user name first
|
||||
NameValueCollection requestArgs = new NameValueCollection
|
||||
{
|
||||
{ "RequestMethod", "GetUser" },
|
||||
{ "UserID", principalID.ToString() }
|
||||
};
|
||||
|
||||
OSDMap response = WebUtil.PostToService(m_serverUrl, requestArgs);
|
||||
if (response["Success"].AsBoolean() && response["User"] is OSDMap)
|
||||
{
|
||||
OSDMap userMap = (OSDMap)response["User"];
|
||||
string identifier = userMap["Name"].AsString();
|
||||
|
||||
if (!String.IsNullOrEmpty(identifier))
|
||||
{
|
||||
// Add/update the md5hash identity
|
||||
requestArgs = new NameValueCollection
|
||||
{
|
||||
{ "RequestMethod", "AddIdentity" },
|
||||
{ "Identifier", identifier },
|
||||
{ "Credential", "$1$" + Utils.MD5String(passwd) },
|
||||
{ "Type", "md5hash" },
|
||||
{ "UserID", principalID.ToString() }
|
||||
};
|
||||
|
||||
response = WebUtil.PostToService(m_serverUrl, requestArgs);
|
||||
bool success = response["Success"].AsBoolean();
|
||||
|
||||
if (!success)
|
||||
m_log.WarnFormat("[AUTH CONNECTOR]: Failed to set password for {0} ({1})", identifier, principalID);
|
||||
|
||||
return success;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
m_log.Warn("[AUTH CONNECTOR]: Failed to retrieve identities for " + principalID + ": " +
|
||||
response["Message"].AsString());
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user