mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
use hash.HashData() and other cosmetics
This commit is contained in:
@@ -173,11 +173,15 @@ namespace OpenSim.Framework
|
||||
private static readonly string regexInvalidPathChars = $"[{new String(Path.GetInvalidPathChars())}]";
|
||||
private static readonly object XferLock = new();
|
||||
|
||||
public static readonly char[] SplitCommaArray = new char[] { ',' };
|
||||
public static readonly char[] SplitDotArray = new char[] { '.' };
|
||||
public static readonly char[] SplitColonArray = new char[] { ':' };
|
||||
public static readonly char[] SplitSemicolonArray = new char[] { ';' };
|
||||
public static readonly char[] SplitSlashArray = new char[] { '/' };
|
||||
public static readonly char[] SplitCommaArray = [','];
|
||||
public static readonly char[] SplitDotArray = ['.'];
|
||||
public static readonly char[] SplitColonArray = [':'];
|
||||
public static readonly char[] SplitSemicolonArray = [';'];
|
||||
public static readonly char[] SplitSlashArray = ['/'];
|
||||
public static readonly char[] SplitSpaceArray = [' '];
|
||||
public static readonly char[] SplitSlashSpaceArray = ['/', ' '];
|
||||
public static readonly char[] SplitDoubleQuoteSpaceArray = ['"', ' '];
|
||||
public static readonly char[] SplitSlashColonArray = ['/', ':'];
|
||||
|
||||
public static readonly XmlReaderSettings SharedXmlReaderSettings = new()
|
||||
{
|
||||
@@ -520,9 +524,9 @@ namespace OpenSim.Framework
|
||||
Uri uri = new(uristr);
|
||||
serviceURI = uri.AbsoluteUri;
|
||||
if (uri.Port == 80)
|
||||
serviceURI = $"{serviceURI.Trim(new char[] { '/', ' ' })}:80/";
|
||||
serviceURI = $"{serviceURI.Trim(SplitSlashSpaceArray)}:80/";
|
||||
else if (uri.Port == 443)
|
||||
serviceURI = $"{serviceURI.Trim(new char[] { '/', ' ' })}:443/";
|
||||
serviceURI = $"{serviceURI.Trim(SplitSlashSpaceArray)}:443/";
|
||||
serviceHost = uri.Host;
|
||||
|
||||
IPEndPoint ep = Util.getEndPoint(serviceHost, uri.Port);
|
||||
@@ -646,12 +650,12 @@ namespace OpenSim.Framework
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(regionName))
|
||||
regionName = regionName.Trim(new char[] { '"', ' ' });
|
||||
regionName = regionName.Trim(SplitDoubleQuoteSpaceArray);
|
||||
serverURI = uri.AbsoluteUri;
|
||||
if (uri.Port == 80)
|
||||
serverURI = $"{serverURI.Trim(new char[] { '/', ' ' })}:80/";
|
||||
serverURI = $"{serverURI.Trim(SplitSlashSpaceArray)}:80/";
|
||||
else if (uri.Port == 443)
|
||||
serverURI = $"{serverURI.Trim(new char[] { '/', ' ' })}:443/";
|
||||
serverURI = $"{serverURI.Trim(SplitSlashSpaceArray)}:443/";
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1206,16 +1210,14 @@ namespace OpenSim.Framework
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
private static byte[] ComputeMD5Hash(string data, Encoding encoding)
|
||||
{
|
||||
using MD5 md5 = MD5.Create();
|
||||
return md5.ComputeHash(encoding.GetBytes(data));
|
||||
return MD5.HashData(encoding.GetBytes(data));
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
private static UUID ComputeASCIIMD5UUID(string data)
|
||||
{
|
||||
using MD5 md5 = MD5.Create();
|
||||
byte[] bytes = md5.ComputeHash(Encoding.ASCII.GetBytes(data));
|
||||
UUID uuid = new(bytes,2);
|
||||
byte[] bytes = MD5.HashData(Encoding.ASCII.GetBytes(data));
|
||||
UUID uuid = new(bytes, 2);
|
||||
uuid.c &= 0x0fff;
|
||||
uuid.c |= 0x3000;
|
||||
uuid.d &= 0x3f;
|
||||
@@ -1337,8 +1339,7 @@ namespace OpenSim.Framework
|
||||
|
||||
private static byte[] ComputeSHA1Hash(byte[] src)
|
||||
{
|
||||
using SHA1 sha = SHA1.Create();
|
||||
return sha.ComputeHash(src);
|
||||
return SHA1.HashData(src);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
@@ -1356,9 +1357,7 @@ namespace OpenSim.Framework
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static UUID ComputeSHA1UUID(byte[] src)
|
||||
{
|
||||
byte[] ret;
|
||||
using (SHA1 sha = SHA1.Create())
|
||||
ret = sha.ComputeHash(src);
|
||||
byte[] ret = SHA1.HashData(src);
|
||||
UUID uuid = new(ret, 2);
|
||||
uuid.c &= 0x0fff;
|
||||
uuid.c |= 0x5000;
|
||||
@@ -1456,7 +1455,7 @@ namespace OpenSim.Framework
|
||||
{
|
||||
iv = ivString.Length == 0 ?
|
||||
Convert.FromHexString(encryptedText[..sep]):
|
||||
MD5.Create().ComputeHash(Utils.StringToBytesNoTerm(ivString));
|
||||
MD5.HashData(Utils.StringToBytesNoTerm(ivString));
|
||||
buffer = Convert.FromHexString(encryptedText[(sep + 1)..]);
|
||||
}
|
||||
catch
|
||||
@@ -1464,7 +1463,7 @@ namespace OpenSim.Framework
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
byte[] aesKey = SHA256.Create().ComputeHash(Utils.StringToBytesNoTerm(secret));
|
||||
byte[] aesKey = SHA256.HashData(Utils.StringToBytesNoTerm(secret));
|
||||
|
||||
using Aes aes = Aes.Create();
|
||||
aes.Key = aesKey;
|
||||
@@ -1617,7 +1616,7 @@ namespace OpenSim.Framework
|
||||
return output.ToString();
|
||||
}
|
||||
|
||||
private static IPEndPoint dummyIPEndPoint = new IPEndPoint(IPAddress.Any, 0);
|
||||
private static readonly IPEndPoint dummyIPEndPoint = new IPEndPoint(IPAddress.Any, 0);
|
||||
private static readonly ExpiringCacheOS<string, IPAddress> dnscache = new(30000);
|
||||
private static readonly ExpiringCacheOS<SocketAddress, EndPoint> EndpointsCache = new(300000);
|
||||
|
||||
@@ -1641,7 +1640,7 @@ namespace OpenSim.Framework
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static IPAddress GetHostFromURL(string url)
|
||||
{
|
||||
return GetHostFromDNS(url.Split(new char[] { '/', ':' })[3]);
|
||||
return GetHostFromDNS(url.Split(SplitSlashColonArray)[3]);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -2252,7 +2251,7 @@ namespace OpenSim.Framework
|
||||
|
||||
public static void SerializeToFile(string filename, Object obj)
|
||||
{
|
||||
IFormatter formatter = new BinaryFormatter();
|
||||
var formatter = new BinaryFormatter();
|
||||
try
|
||||
{
|
||||
using Stream stream = new FileStream(filename, FileMode.Create,FileAccess.Write, FileShare.None);
|
||||
@@ -2269,7 +2268,7 @@ namespace OpenSim.Framework
|
||||
try
|
||||
{
|
||||
using Stream stream = new FileStream(filename, FileMode.Open,FileAccess.Read, FileShare.None);
|
||||
IFormatter formatter = new BinaryFormatter();
|
||||
var formatter = new BinaryFormatter();
|
||||
return formatter.Deserialize(stream);
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -2506,10 +2505,10 @@ namespace OpenSim.Framework
|
||||
passPosition = connectionString.IndexOf("password", StringComparison.OrdinalIgnoreCase);
|
||||
if (passPosition == -1)
|
||||
return connectionString;
|
||||
passPosition = connectionString.IndexOf("=", passPosition);
|
||||
passPosition = connectionString.IndexOf('=', passPosition);
|
||||
if (passPosition < connectionString.Length)
|
||||
passPosition += 1;
|
||||
passEndPosition = connectionString.IndexOf(";", passPosition);
|
||||
passEndPosition = connectionString.IndexOf(';', passPosition);
|
||||
|
||||
return $"{connectionString[..passPosition]}***{connectionString[passEndPosition..]}";
|
||||
}
|
||||
@@ -3758,7 +3757,7 @@ namespace OpenSim.Framework
|
||||
};
|
||||
reader.ReadEndElement();
|
||||
|
||||
UUID.TryParse(idStr, out UUID id);
|
||||
_ = UUID.TryParse(idStr, out UUID id);
|
||||
return id;
|
||||
}
|
||||
|
||||
@@ -3895,7 +3894,7 @@ namespace OpenSim.Framework
|
||||
secret = value[indxA..];
|
||||
}
|
||||
|
||||
string[] name = n.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] name = n.Split(SplitSpaceArray, StringSplitOptions.RemoveEmptyEntries);
|
||||
if (name.Length == 0)
|
||||
{
|
||||
firstname = string.Empty;
|
||||
@@ -3970,7 +3969,7 @@ namespace OpenSim.Framework
|
||||
secret = value[indxA..];
|
||||
}
|
||||
|
||||
string[] name = n.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] name = n.Split(SplitSpaceArray, StringSplitOptions.RemoveEmptyEntries);
|
||||
if (name.Length == 0)
|
||||
{
|
||||
firstname = string.Empty;
|
||||
@@ -4044,7 +4043,7 @@ namespace OpenSim.Framework
|
||||
else
|
||||
n = value[indxB..seps[2]];
|
||||
|
||||
string[] name = n.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] name = n.Split(SplitSpaceArray, StringSplitOptions.RemoveEmptyEntries);
|
||||
if (name.Length == 0)
|
||||
{
|
||||
firstname = string.Empty;
|
||||
@@ -4110,7 +4109,7 @@ namespace OpenSim.Framework
|
||||
else
|
||||
n = value[indxB..seps[2]];
|
||||
|
||||
string[] name = n.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] name = n.Split(SplitSpaceArray, StringSplitOptions.RemoveEmptyEntries);
|
||||
if (name.Length == 0)
|
||||
{
|
||||
firstname = string.Empty;
|
||||
@@ -4368,8 +4367,8 @@ namespace OpenSim.Framework
|
||||
/// <returns>uuid[;homeURI[;first last]]</returns>
|
||||
public static string ProduceUserUniversalIdentifier(AgentCircuitData acircuit)
|
||||
{
|
||||
if (acircuit.ServiceURLs.ContainsKey("HomeURI"))
|
||||
return UniversalIdentifier(acircuit.AgentID, acircuit.firstname, acircuit.lastname, acircuit.ServiceURLs["HomeURI"].ToString());
|
||||
if (acircuit.ServiceURLs.TryGetValue("HomeURI", out object homeobj))
|
||||
return UniversalIdentifier(acircuit.AgentID, acircuit.firstname, acircuit.lastname, homeobj.ToString());
|
||||
else
|
||||
return acircuit.AgentID.ToString();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user