Merge branch 'master' of git://opensimulator.org/git/opensim
commit
8f1acb890a
|
@ -138,12 +138,12 @@ namespace OpenSim.Data
|
||||||
/// <param name="conn"></param>
|
/// <param name="conn"></param>
|
||||||
/// <param name="script">Array of strings, one-per-batch (often just one)</param>
|
/// <param name="script">Array of strings, one-per-batch (often just one)</param>
|
||||||
protected virtual void ExecuteScript(DbConnection conn, string[] script)
|
protected virtual void ExecuteScript(DbConnection conn, string[] script)
|
||||||
{
|
{
|
||||||
using (DbCommand cmd = conn.CreateCommand())
|
using (DbCommand cmd = conn.CreateCommand())
|
||||||
{
|
{
|
||||||
cmd.CommandTimeout = 0;
|
cmd.CommandTimeout = 0;
|
||||||
foreach (string sql in script)
|
foreach (string sql in script)
|
||||||
{
|
{
|
||||||
cmd.CommandText = sql;
|
cmd.CommandText = sql;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
|
@ -108,10 +108,30 @@ namespace OpenSim.Framework
|
||||||
public string ServiceSessionID = string.Empty;
|
public string ServiceSessionID = string.Empty;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Viewer's version string
|
/// The client's IP address, as captured by the login service
|
||||||
|
/// </summary>
|
||||||
|
public string IPAddress;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Viewer's version string as reported by the viewer at login
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Viewer;
|
public string Viewer;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The channel strinf sent by the viewer at login
|
||||||
|
/// </summary>
|
||||||
|
public string Channel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The Mac address as reported by the viewer at login
|
||||||
|
/// </summary>
|
||||||
|
public string Mac;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The id0 as reported by the viewer at login
|
||||||
|
/// </summary>
|
||||||
|
public string Id0;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Position the Agent's Avatar starts in the region
|
/// Position the Agent's Avatar starts in the region
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -179,7 +199,11 @@ namespace OpenSim.Framework
|
||||||
args["service_session_id"] = OSD.FromString(ServiceSessionID);
|
args["service_session_id"] = OSD.FromString(ServiceSessionID);
|
||||||
args["start_pos"] = OSD.FromString(startpos.ToString());
|
args["start_pos"] = OSD.FromString(startpos.ToString());
|
||||||
args["appearance_serial"] = OSD.FromInteger(Appearance.Serial);
|
args["appearance_serial"] = OSD.FromInteger(Appearance.Serial);
|
||||||
|
args["client_ip"] = OSD.FromString(IPAddress);
|
||||||
args["viewer"] = OSD.FromString(Viewer);
|
args["viewer"] = OSD.FromString(Viewer);
|
||||||
|
args["channel"] = OSD.FromString(Channel);
|
||||||
|
args["mac"] = OSD.FromString(Mac);
|
||||||
|
args["id0"] = OSD.FromString(Id0);
|
||||||
|
|
||||||
if (Appearance != null)
|
if (Appearance != null)
|
||||||
{
|
{
|
||||||
|
@ -279,8 +303,16 @@ namespace OpenSim.Framework
|
||||||
SessionID = args["session_id"].AsUUID();
|
SessionID = args["session_id"].AsUUID();
|
||||||
if (args["service_session_id"] != null)
|
if (args["service_session_id"] != null)
|
||||||
ServiceSessionID = args["service_session_id"].AsString();
|
ServiceSessionID = args["service_session_id"].AsString();
|
||||||
|
if (args["client_ip"] != null)
|
||||||
|
IPAddress = args["client_ip"].AsString();
|
||||||
if (args["viewer"] != null)
|
if (args["viewer"] != null)
|
||||||
Viewer = args["viewer"].AsString();
|
Viewer = args["viewer"].AsString();
|
||||||
|
if (args["channel"] != null)
|
||||||
|
Channel = args["channel"].AsString();
|
||||||
|
if (args["mac"] != null)
|
||||||
|
Mac = args["mac"].AsString();
|
||||||
|
if (args["id0"] != null)
|
||||||
|
Id0 = args["id0"].AsString();
|
||||||
|
|
||||||
if (args["start_pos"] != null)
|
if (args["start_pos"] != null)
|
||||||
Vector3.TryParse(args["start_pos"].AsString(), out startpos);
|
Vector3.TryParse(args["start_pos"].AsString(), out startpos);
|
||||||
|
@ -349,6 +381,9 @@ namespace OpenSim.Framework
|
||||||
public float startposy;
|
public float startposy;
|
||||||
public float startposz;
|
public float startposz;
|
||||||
public string Viewer;
|
public string Viewer;
|
||||||
|
public string Channel;
|
||||||
|
public string Mac;
|
||||||
|
public string Id0;
|
||||||
|
|
||||||
public sAgentCircuitData()
|
public sAgentCircuitData()
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) Contributors, http://opensimulator.org/
|
* Copyright (c) Contributors, http://opensimulator.org/
|
||||||
* See CONTRIBUTORS.TXT for a full list of copyright holders.
|
* See CONTRIBUTORS.TXT for a full list of copyright holders.
|
||||||
*
|
*
|
||||||
|
@ -139,28 +139,43 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
private void ProcessQueues()
|
private void ProcessQueues()
|
||||||
{
|
{
|
||||||
// Process all the pending adds
|
// Process all the pending adds
|
||||||
OutgoingPacket pendingAdd;
|
|
||||||
while (m_pendingAdds.Dequeue(out pendingAdd))
|
|
||||||
m_packets[pendingAdd.SequenceNumber] = pendingAdd;
|
|
||||||
|
|
||||||
|
OutgoingPacket pendingAdd;
|
||||||
|
if (m_pendingAdds != null)
|
||||||
|
{
|
||||||
|
while (m_pendingAdds.TryDequeue(out pendingAdd))
|
||||||
|
{
|
||||||
|
if (pendingAdd != null && m_packets != null)
|
||||||
|
{
|
||||||
|
m_packets[pendingAdd.SequenceNumber] = pendingAdd;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Process all the pending removes, including updating statistics and round-trip times
|
// Process all the pending removes, including updating statistics and round-trip times
|
||||||
PendingAck pendingRemove;
|
PendingAck pendingRemove;
|
||||||
OutgoingPacket ackedPacket;
|
OutgoingPacket ackedPacket;
|
||||||
while (m_pendingRemoves.Dequeue(out pendingRemove))
|
if (m_pendingRemoves != null)
|
||||||
{
|
{
|
||||||
if (m_packets.TryGetValue(pendingRemove.SequenceNumber, out ackedPacket))
|
while (m_pendingRemoves.TryDequeue(out pendingRemove))
|
||||||
{
|
{
|
||||||
m_packets.Remove(pendingRemove.SequenceNumber);
|
if (m_pendingRemoves != null && m_packets != null)
|
||||||
|
|
||||||
// Update stats
|
|
||||||
System.Threading.Interlocked.Add(ref ackedPacket.Client.UnackedBytes, -ackedPacket.Buffer.DataLength);
|
|
||||||
|
|
||||||
if (!pendingRemove.FromResend)
|
|
||||||
{
|
{
|
||||||
// Calculate the round-trip time for this packet and its ACK
|
if (m_packets.TryGetValue(pendingRemove.SequenceNumber, out ackedPacket))
|
||||||
int rtt = pendingRemove.RemoveTime - ackedPacket.TickCount;
|
{
|
||||||
if (rtt > 0)
|
m_packets.Remove(pendingRemove.SequenceNumber);
|
||||||
ackedPacket.Client.UpdateRoundTrip(rtt);
|
|
||||||
|
// Update stats
|
||||||
|
System.Threading.Interlocked.Add(ref ackedPacket.Client.UnackedBytes, -ackedPacket.Buffer.DataLength);
|
||||||
|
|
||||||
|
if (!pendingRemove.FromResend)
|
||||||
|
{
|
||||||
|
// Calculate the round-trip time for this packet and its ACK
|
||||||
|
int rtt = pendingRemove.RemoveTime - ackedPacket.TickCount;
|
||||||
|
if (rtt > 0)
|
||||||
|
ackedPacket.Client.UpdateRoundTrip(rtt);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -252,7 +252,7 @@ namespace Flotsam.RegionModules.AssetCache
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_MemoryCache.AddOrUpdate(key, asset, DateTime.MaxValue);
|
m_MemoryCache.AddOrUpdate(key, asset, Double.MaxValue);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -863,4 +863,4 @@ namespace Flotsam.RegionModules.AssetCache
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -307,7 +307,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
|
||||||
/// <param name="remoteClient"></param>
|
/// <param name="remoteClient"></param>
|
||||||
/// <param name="itemID"></param>
|
/// <param name="itemID"></param>
|
||||||
/// <param name="AttachmentPt"></param>
|
/// <param name="AttachmentPt"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
protected UUID ShowAttachInUserInventory(
|
protected UUID ShowAttachInUserInventory(
|
||||||
SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt)
|
SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt)
|
||||||
{
|
{
|
||||||
|
|
|
@ -318,12 +318,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
|
|
||||||
UserAccount account = m_Scenes[0].UserAccountService.GetUserAccount(client.Scene.RegionInfo.ScopeID, fromAgentID);
|
UserAccount account = m_Scenes[0].UserAccountService.GetUserAccount(client.Scene.RegionInfo.ScopeID, fromAgentID);
|
||||||
|
|
||||||
PresenceInfo presence = null;
|
PresenceInfo presence = null;
|
||||||
PresenceInfo[] presences = PresenceService.GetAgents(new string[] { fid });
|
PresenceInfo[] presences = PresenceService.GetAgents(new string[] { fid });
|
||||||
if (presences != null && presences.Length > 0)
|
if (presences != null && presences.Length > 0)
|
||||||
presence = presences[0];
|
presence = presences[0];
|
||||||
if (presence != null)
|
if (presence != null)
|
||||||
im.offline = 0;
|
im.offline = 0;
|
||||||
|
|
||||||
im.fromAgentID = fromAgentID.Guid;
|
im.fromAgentID = fromAgentID.Guid;
|
||||||
im.fromAgentName = account.FirstName + " " + account.LastName;
|
im.fromAgentName = account.FirstName + " " + account.LastName;
|
||||||
|
|
|
@ -301,7 +301,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
if (currentAgentCircuit != null)
|
if (currentAgentCircuit != null)
|
||||||
{
|
{
|
||||||
agentCircuit.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
agentCircuit.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
||||||
|
agentCircuit.IPAddress = currentAgentCircuit.IPAddress;
|
||||||
agentCircuit.Viewer = currentAgentCircuit.Viewer;
|
agentCircuit.Viewer = currentAgentCircuit.Viewer;
|
||||||
|
agentCircuit.Channel = currentAgentCircuit.Channel;
|
||||||
|
agentCircuit.Mac = currentAgentCircuit.Mac;
|
||||||
|
agentCircuit.Id0 = currentAgentCircuit.Id0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NeedsNewAgent(oldRegionX, newRegionX, oldRegionY, newRegionY))
|
if (NeedsNewAgent(oldRegionX, newRegionX, oldRegionY, newRegionY))
|
||||||
|
@ -943,16 +947,16 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
agent.CapsPath = CapsUtil.GetRandomCapsObjectPath();
|
agent.CapsPath = CapsUtil.GetRandomCapsObjectPath();
|
||||||
|
|
||||||
agent.ChildrenCapSeeds = new Dictionary<ulong, string>(sp.Scene.CapsModule.GetChildrenSeeds(sp.UUID));
|
agent.ChildrenCapSeeds = new Dictionary<ulong, string>(sp.Scene.CapsModule.GetChildrenSeeds(sp.UUID));
|
||||||
m_log.DebugFormat("[XXX] Seeds 1 {0}", agent.ChildrenCapSeeds.Count);
|
//m_log.DebugFormat("[XXX] Seeds 1 {0}", agent.ChildrenCapSeeds.Count);
|
||||||
|
|
||||||
if (!agent.ChildrenCapSeeds.ContainsKey(sp.Scene.RegionInfo.RegionHandle))
|
if (!agent.ChildrenCapSeeds.ContainsKey(sp.Scene.RegionInfo.RegionHandle))
|
||||||
agent.ChildrenCapSeeds.Add(sp.Scene.RegionInfo.RegionHandle, sp.ControllingClient.RequestClientInfo().CapsPath);
|
agent.ChildrenCapSeeds.Add(sp.Scene.RegionInfo.RegionHandle, sp.ControllingClient.RequestClientInfo().CapsPath);
|
||||||
m_log.DebugFormat("[XXX] Seeds 2 {0}", agent.ChildrenCapSeeds.Count);
|
//m_log.DebugFormat("[XXX] Seeds 2 {0}", agent.ChildrenCapSeeds.Count);
|
||||||
|
|
||||||
sp.AddNeighbourRegion(region.RegionHandle, agent.CapsPath);
|
sp.AddNeighbourRegion(region.RegionHandle, agent.CapsPath);
|
||||||
foreach (ulong h in agent.ChildrenCapSeeds.Keys)
|
//foreach (ulong h in agent.ChildrenCapSeeds.Keys)
|
||||||
m_log.DebugFormat("[XXX] --> {0}", h);
|
// m_log.DebugFormat("[XXX] --> {0}", h);
|
||||||
m_log.DebugFormat("[XXX] Adding {0}", region.RegionHandle);
|
//m_log.DebugFormat("[XXX] Adding {0}", region.RegionHandle);
|
||||||
agent.ChildrenCapSeeds.Add(region.RegionHandle, agent.CapsPath);
|
agent.ChildrenCapSeeds.Add(region.RegionHandle, agent.CapsPath);
|
||||||
|
|
||||||
if (sp.Scene.CapsModule != null)
|
if (sp.Scene.CapsModule != null)
|
||||||
|
@ -963,7 +967,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
if (currentAgentCircuit != null)
|
if (currentAgentCircuit != null)
|
||||||
{
|
{
|
||||||
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
||||||
|
agent.IPAddress = currentAgentCircuit.IPAddress;
|
||||||
agent.Viewer = currentAgentCircuit.Viewer;
|
agent.Viewer = currentAgentCircuit.Viewer;
|
||||||
|
agent.Channel = currentAgentCircuit.Channel;
|
||||||
|
agent.Mac = currentAgentCircuit.Mac;
|
||||||
|
agent.Id0 = currentAgentCircuit.Id0;
|
||||||
}
|
}
|
||||||
|
|
||||||
InformClientOfNeighbourDelegate d = InformClientOfNeighbourAsync;
|
InformClientOfNeighbourDelegate d = InformClientOfNeighbourAsync;
|
||||||
|
@ -1052,7 +1060,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
if (currentAgentCircuit != null)
|
if (currentAgentCircuit != null)
|
||||||
{
|
{
|
||||||
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
|
||||||
|
agent.IPAddress = currentAgentCircuit.IPAddress;
|
||||||
agent.Viewer = currentAgentCircuit.Viewer;
|
agent.Viewer = currentAgentCircuit.Viewer;
|
||||||
|
agent.Channel = currentAgentCircuit.Channel;
|
||||||
|
agent.Mac = currentAgentCircuit.Mac;
|
||||||
|
agent.Id0 = currentAgentCircuit.Id0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (newRegions.Contains(neighbour.RegionHandle))
|
if (newRegions.Contains(neighbour.RegionHandle))
|
||||||
|
|
|
@ -91,6 +91,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
|
||||||
m_scene.EventManager.OnMakeRootAgent += EventManager_OnMakeRootAgent;
|
m_scene.EventManager.OnMakeRootAgent += EventManager_OnMakeRootAgent;
|
||||||
m_scene.EventManager.OnSaveNewWindlightProfile += EventManager_OnSaveNewWindlightProfile;
|
m_scene.EventManager.OnSaveNewWindlightProfile += EventManager_OnSaveNewWindlightProfile;
|
||||||
m_scene.EventManager.OnSendNewWindlightProfileTargeted += EventManager_OnSendNewWindlightProfileTargeted;
|
m_scene.EventManager.OnSendNewWindlightProfileTargeted += EventManager_OnSendNewWindlightProfileTargeted;
|
||||||
|
m_scene.LoadWindlightProfile();
|
||||||
}
|
}
|
||||||
|
|
||||||
InstallCommands();
|
InstallCommands();
|
||||||
|
|
|
@ -53,9 +53,9 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.UserAccounts
|
||||||
public void Cache(UUID userID, UserAccount account)
|
public void Cache(UUID userID, UserAccount account)
|
||||||
{
|
{
|
||||||
// Cache even null accounts
|
// Cache even null accounts
|
||||||
m_UUIDCache.AddOrUpdate(userID, account, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
|
m_UUIDCache.AddOrUpdate(userID, account, CACHE_EXPIRATION_SECONDS);
|
||||||
if (account != null)
|
if (account != null)
|
||||||
m_NameCache.AddOrUpdate(account.Name, account.PrincipalID, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
|
m_NameCache.AddOrUpdate(account.Name, account.PrincipalID, CACHE_EXPIRATION_SECONDS);
|
||||||
|
|
||||||
m_log.DebugFormat("[USER CACHE]: cached user {0}", userID);
|
m_log.DebugFormat("[USER CACHE]: cached user {0}", userID);
|
||||||
}
|
}
|
||||||
|
|
|
@ -352,6 +352,12 @@ namespace OpenSim.Region.CoreModules.World.Warp3DMap
|
||||||
Face face = renderMesh.Faces[i];
|
Face face = renderMesh.Faces[i];
|
||||||
string meshName = primID + "-Face-" + i.ToString();
|
string meshName = primID + "-Face-" + i.ToString();
|
||||||
|
|
||||||
|
// Avoid adding duplicate meshes to the scene
|
||||||
|
if (renderer.Scene.objectData.ContainsKey(meshName))
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
warp_Object faceObj = new warp_Object(face.Vertices.Count, face.Indices.Count / 3);
|
warp_Object faceObj = new warp_Object(face.Vertices.Count, face.Indices.Count / 3);
|
||||||
|
|
||||||
for (int j = 0; j < face.Vertices.Count; j++)
|
for (int j = 0; j < face.Vertices.Count; j++)
|
||||||
|
|
|
@ -1073,7 +1073,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
// Catch it and move on. This includes situations where splist has inconsistent info
|
// Catch it and move on. This includes situations where splist has inconsistent info
|
||||||
m_log.WarnFormat("[SCENE]: Problem processing action in ForEachSOG: ", e.Message);
|
m_log.WarnFormat("[SCENE]: Problem processing action in ForEachSOG: ", e.ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1114,7 +1114,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
m_log.Info("[BUG] in " + m_parentScene.RegionInfo.RegionName + ": " + e.ToString());
|
m_log.Info("[BUG] in " + m_parentScene.RegionInfo.RegionName + ": " + e.ToString());
|
||||||
m_log.Info("[BUG] Stack Trace: " + e.StackTrace);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2763,7 +2763,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
UUID = UUID.Random();
|
UUID = UUID.Random();
|
||||||
LinkNum = linkNum;
|
LinkNum = linkNum;
|
||||||
LocalId = 0;
|
LocalId = 0;
|
||||||
Inventory.ResetInventoryIDs();
|
Inventory.ResetInventoryIDs();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -1523,7 +1523,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
}
|
}
|
||||||
|
|
||||||
// If the agent update does move the avatar, then calculate the force ready for the velocity update,
|
// If the agent update does move the avatar, then calculate the force ready for the velocity update,
|
||||||
// which occurs later in the main scene loop
|
// which occurs later in the main scene loop
|
||||||
if (update_movementflag || (update_rotation && DCFlagKeyPressed))
|
if (update_movementflag || (update_rotation && DCFlagKeyPressed))
|
||||||
{
|
{
|
||||||
// m_log.DebugFormat("{0} {1}", update_movementflag, (update_rotation && DCFlagKeyPressed));
|
// m_log.DebugFormat("{0} {1}", update_movementflag, (update_rotation && DCFlagKeyPressed));
|
||||||
|
|
|
@ -210,7 +210,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
|
||||||
= new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
|
= new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
|
||||||
{ Name = childPartName, UUID = childPartUuid };
|
{ Name = childPartName, UUID = childPartUuid };
|
||||||
|
|
||||||
SceneObjectGroup sog = new SceneObjectGroup(rootPart);
|
SceneObjectGroup sog = new SceneObjectGroup(rootPart);
|
||||||
sog.AddPart(linkPart);
|
sog.AddPart(linkPart);
|
||||||
|
|
||||||
Assert.That(sog.UUID, Is.EqualTo(rootPartUuid));
|
Assert.That(sog.UUID, Is.EqualTo(rootPartUuid));
|
||||||
|
@ -221,7 +221,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
|
||||||
sog.UUID = newRootPartUuid;
|
sog.UUID = newRootPartUuid;
|
||||||
|
|
||||||
Assert.That(sog.UUID, Is.EqualTo(newRootPartUuid));
|
Assert.That(sog.UUID, Is.EqualTo(newRootPartUuid));
|
||||||
Assert.That(sog.RootPart.UUID, Is.EqualTo(newRootPartUuid));
|
Assert.That(sog.RootPart.UUID, Is.EqualTo(newRootPartUuid));
|
||||||
Assert.That(sog.Parts.Length, Is.EqualTo(2));
|
Assert.That(sog.Parts.Length, Is.EqualTo(2));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -812,7 +812,7 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule
|
||||||
// gets the object data. If the data sent by the client doesn't match the object, the viewer probably has an
|
// gets the object data. If the data sent by the client doesn't match the object, the viewer probably has an
|
||||||
// old idea of what the object properties are. Viewer developer Hazim informed us that the base module
|
// old idea of what the object properties are. Viewer developer Hazim informed us that the base module
|
||||||
// didn't check the client sent data against the object do any. Since the base modules are the
|
// didn't check the client sent data against the object do any. Since the base modules are the
|
||||||
// 'crowning glory' examples of good practice..
|
// 'crowning glory' examples of good practice..
|
||||||
|
|
||||||
// Validate that the object exists in the scene the user is in
|
// Validate that the object exists in the scene the user is in
|
||||||
SceneObjectPart part = s.GetSceneObjectPart(localID);
|
SceneObjectPart part = s.GetSceneObjectPart(localID);
|
||||||
|
|
|
@ -188,7 +188,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
public OdePrim(String primName, OdeScene parent_scene, Vector3 pos, Vector3 size,
|
public OdePrim(String primName, OdeScene parent_scene, Vector3 pos, Vector3 size,
|
||||||
Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool pisPhysical, CollisionLocker dode)
|
Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool pisPhysical, CollisionLocker dode)
|
||||||
{
|
{
|
||||||
Name = primName;
|
Name = primName;
|
||||||
m_vehicle = new ODEDynamics();
|
m_vehicle = new ODEDynamics();
|
||||||
//gc = GCHandle.Alloc(prim_geom, GCHandleType.Pinned);
|
//gc = GCHandle.Alloc(prim_geom, GCHandleType.Pinned);
|
||||||
ode = dode;
|
ode = dode;
|
||||||
|
@ -620,7 +620,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
volume *= (1.0f - hollowVolume);
|
volume *= (1.0f - hollowVolume);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -658,7 +658,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
|
|
||||||
taperY = _pbs.PathTaperY * 0.01f;
|
taperY = _pbs.PathTaperY * 0.01f;
|
||||||
if (taperY < 0.0f)
|
if (taperY < 0.0f)
|
||||||
taperY = -taperY;
|
taperY = -taperY;
|
||||||
taperY1 = 1.0f - taperY;
|
taperY1 = 1.0f - taperY;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1059,7 +1059,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (OdePrim prm in childrenPrim)
|
foreach (OdePrim prm in childrenPrim)
|
||||||
{
|
{
|
||||||
prm.m_collisionCategories |= CollisionCategories.Body;
|
prm.m_collisionCategories |= CollisionCategories.Body;
|
||||||
prm.m_collisionFlags |= (CollisionCategories.Land | CollisionCategories.Wind);
|
prm.m_collisionFlags |= (CollisionCategories.Land | CollisionCategories.Wind);
|
||||||
|
|
||||||
|
|
|
@ -176,7 +176,7 @@ namespace OpenSim.Server.Base
|
||||||
OpenSimAppender consoleAppender = null;
|
OpenSimAppender consoleAppender = null;
|
||||||
FileAppender fileAppender = null;
|
FileAppender fileAppender = null;
|
||||||
|
|
||||||
if ( logConfig != null )
|
if (logConfig != null)
|
||||||
{
|
{
|
||||||
FileInfo cfg = new FileInfo(logConfig);
|
FileInfo cfg = new FileInfo(logConfig);
|
||||||
XmlConfigurator.Configure(cfg);
|
XmlConfigurator.Configure(cfg);
|
||||||
|
|
|
@ -54,9 +54,10 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
private IGatekeeperService m_GatekeeperService;
|
private IGatekeeperService m_GatekeeperService;
|
||||||
|
|
||||||
public GatekeeperAgentHandler(IGatekeeperService gatekeeper)
|
public GatekeeperAgentHandler(IGatekeeperService gatekeeper, bool proxy)
|
||||||
{
|
{
|
||||||
m_GatekeeperService = gatekeeper;
|
m_GatekeeperService = gatekeeper;
|
||||||
|
m_Proxy = proxy;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
|
protected override bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
|
||||||
|
|
|
@ -51,6 +51,8 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
get { return m_GatekeeperService; }
|
get { return m_GatekeeperService; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool m_Proxy = false;
|
||||||
|
|
||||||
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server, ISimulationService simService) :
|
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server, ISimulationService simService) :
|
||||||
base(config, server, String.Empty)
|
base(config, server, String.Empty)
|
||||||
{
|
{
|
||||||
|
@ -65,11 +67,13 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
if (m_GatekeeperService == null)
|
if (m_GatekeeperService == null)
|
||||||
throw new Exception("Gatekeeper server connector cannot proceed because of missing service");
|
throw new Exception("Gatekeeper server connector cannot proceed because of missing service");
|
||||||
|
|
||||||
|
m_Proxy = gridConfig.GetBoolean("HasProxy", false);
|
||||||
|
|
||||||
HypergridHandlers hghandlers = new HypergridHandlers(m_GatekeeperService);
|
HypergridHandlers hghandlers = new HypergridHandlers(m_GatekeeperService);
|
||||||
server.AddXmlRPCHandler("link_region", hghandlers.LinkRegionRequest, false);
|
server.AddXmlRPCHandler("link_region", hghandlers.LinkRegionRequest, false);
|
||||||
server.AddXmlRPCHandler("get_region", hghandlers.GetRegion, false);
|
server.AddXmlRPCHandler("get_region", hghandlers.GetRegion, false);
|
||||||
|
|
||||||
server.AddHTTPHandler("/foreignagent/", new GatekeeperAgentHandler(m_GatekeeperService).Handler);
|
server.AddHTTPHandler("/foreignagent/", new GatekeeperAgentHandler(m_GatekeeperService, m_Proxy).Handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server)
|
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server)
|
||||||
|
|
|
@ -55,11 +55,13 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
private IUserAgentService m_UserAgentService;
|
private IUserAgentService m_UserAgentService;
|
||||||
|
|
||||||
private string m_LoginServerIP;
|
private string m_LoginServerIP;
|
||||||
|
private bool m_Proxy = false;
|
||||||
|
|
||||||
public HomeAgentHandler(IUserAgentService userAgentService, string loginServerIP)
|
public HomeAgentHandler(IUserAgentService userAgentService, string loginServerIP, bool proxy)
|
||||||
{
|
{
|
||||||
m_UserAgentService = userAgentService;
|
m_UserAgentService = userAgentService;
|
||||||
m_LoginServerIP = loginServerIP;
|
m_LoginServerIP = loginServerIP;
|
||||||
|
m_Proxy = proxy;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Hashtable Handler(Hashtable request)
|
public Hashtable Handler(Hashtable request)
|
||||||
|
@ -153,11 +155,11 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
string ip_str = args["client_ip"].ToString();
|
string ip_str = args["client_ip"].ToString();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
string callerIP = Util.GetCallerIP(request);
|
string callerIP = GetCallerIP(request);
|
||||||
// Verify if this caller has authority to send the client IP
|
// Verify if this caller has authority to send the client IP
|
||||||
if (callerIP == m_LoginServerIP)
|
if (callerIP == m_LoginServerIP)
|
||||||
client_ipaddress = new IPEndPoint(IPAddress.Parse(ip_str), 0);
|
client_ipaddress = new IPEndPoint(IPAddress.Parse(ip_str), 0);
|
||||||
else
|
else // leaving this for now, but this warning should be removed
|
||||||
m_log.WarnFormat("[HOME AGENT HANDLER]: Unauthorized machine {0} tried to set client ip to {1}", callerIP, ip_str);
|
m_log.WarnFormat("[HOME AGENT HANDLER]: Unauthorized machine {0} tried to set client ip to {1}", callerIP, ip_str);
|
||||||
}
|
}
|
||||||
catch
|
catch
|
||||||
|
@ -198,6 +200,23 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
|
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetCallerIP(Hashtable request)
|
||||||
|
{
|
||||||
|
if (!m_Proxy)
|
||||||
|
return Util.GetCallerIP(request);
|
||||||
|
|
||||||
|
// We're behind a proxy
|
||||||
|
Hashtable headers = (Hashtable)request["headers"];
|
||||||
|
if (headers.ContainsKey("X-Forwarded-For") && headers["X-Forwarded-For"] != null)
|
||||||
|
{
|
||||||
|
IPEndPoint ep = Util.GetClientIPFromXFF((string)headers["X-Forwarded-For"]);
|
||||||
|
if (ep != null)
|
||||||
|
return ep.Address.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Oops
|
||||||
|
return Util.GetCallerIP(request);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,6 +67,7 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
throw new Exception("UserAgent server connector cannot proceed because of missing service");
|
throw new Exception("UserAgent server connector cannot proceed because of missing service");
|
||||||
|
|
||||||
string loginServerIP = gridConfig.GetString("LoginServerIP", "127.0.0.1");
|
string loginServerIP = gridConfig.GetString("LoginServerIP", "127.0.0.1");
|
||||||
|
bool proxy = gridConfig.GetBoolean("HasProxy", false);
|
||||||
|
|
||||||
server.AddXmlRPCHandler("agent_is_coming_home", AgentIsComingHome, false);
|
server.AddXmlRPCHandler("agent_is_coming_home", AgentIsComingHome, false);
|
||||||
server.AddXmlRPCHandler("get_home_region", GetHomeRegion, false);
|
server.AddXmlRPCHandler("get_home_region", GetHomeRegion, false);
|
||||||
|
@ -74,7 +75,7 @@ namespace OpenSim.Server.Handlers.Hypergrid
|
||||||
server.AddXmlRPCHandler("verify_client", VerifyClient, false);
|
server.AddXmlRPCHandler("verify_client", VerifyClient, false);
|
||||||
server.AddXmlRPCHandler("logout_agent", LogoutAgent, false);
|
server.AddXmlRPCHandler("logout_agent", LogoutAgent, false);
|
||||||
|
|
||||||
server.AddHTTPHandler("/homeagent/", new HomeAgentHandler(m_HomeUsersService, loginServerIP).Handler);
|
server.AddHTTPHandler("/homeagent/", new HomeAgentHandler(m_HomeUsersService, loginServerIP, proxy).Handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public XmlRpcResponse GetHomeRegion(XmlRpcRequest request, IPEndPoint remoteClient)
|
public XmlRpcResponse GetHomeRegion(XmlRpcRequest request, IPEndPoint remoteClient)
|
||||||
|
|
|
@ -88,14 +88,26 @@ namespace OpenSim.Server.Handlers.Login
|
||||||
startLocation = requestData["start"].ToString();
|
startLocation = requestData["start"].ToString();
|
||||||
|
|
||||||
string clientVersion = "Unknown";
|
string clientVersion = "Unknown";
|
||||||
if (requestData.Contains("version"))
|
if (requestData.Contains("version") && requestData["version"] != null)
|
||||||
clientVersion = requestData["version"].ToString();
|
clientVersion = requestData["version"].ToString();
|
||||||
// We should do something interesting with the client version...
|
// We should do something interesting with the client version...
|
||||||
|
|
||||||
|
string channel = "Unknown";
|
||||||
|
if (requestData.Contains("channel") && requestData["channel"] != null)
|
||||||
|
channel = requestData["channel"].ToString();
|
||||||
|
|
||||||
|
string mac = "Unknown";
|
||||||
|
if (requestData.Contains("mac") && requestData["mac"] != null)
|
||||||
|
mac = requestData["mac"].ToString();
|
||||||
|
|
||||||
|
string id0 = "Unknown";
|
||||||
|
if (requestData.Contains("id0") && requestData["id0"] != null)
|
||||||
|
id0 = requestData["id0"].ToString();
|
||||||
|
|
||||||
//m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion);
|
//m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion);
|
||||||
|
|
||||||
LoginResponse reply = null;
|
LoginResponse reply = null;
|
||||||
reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, remoteClient);
|
reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, channel, mac, id0, remoteClient);
|
||||||
|
|
||||||
XmlRpcResponse response = new XmlRpcResponse();
|
XmlRpcResponse response = new XmlRpcResponse();
|
||||||
response.Value = reply.ToHashtable();
|
response.Value = reply.ToHashtable();
|
||||||
|
@ -166,7 +178,8 @@ namespace OpenSim.Server.Handlers.Login
|
||||||
m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation);
|
m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation);
|
||||||
|
|
||||||
LoginResponse reply = null;
|
LoginResponse reply = null;
|
||||||
reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID, String.Empty, remoteClient);
|
reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID,
|
||||||
|
map["version"].AsString(), map["channel"].AsString(), map["mac"].AsString(), map["id0"].AsString(), remoteClient);
|
||||||
return reply.ToOSDMap();
|
return reply.ToOSDMap();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,6 +52,8 @@ namespace OpenSim.Server.Handlers.Simulation
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
private ISimulationService m_SimulationService;
|
private ISimulationService m_SimulationService;
|
||||||
|
|
||||||
|
protected bool m_Proxy = false;
|
||||||
|
|
||||||
public AgentHandler() { }
|
public AgentHandler() { }
|
||||||
|
|
||||||
public AgentHandler(ISimulationService sim)
|
public AgentHandler(ISimulationService sim)
|
||||||
|
@ -179,13 +181,31 @@ namespace OpenSim.Server.Handlers.Simulation
|
||||||
resp["reason"] = OSD.FromString(reason);
|
resp["reason"] = OSD.FromString(reason);
|
||||||
resp["success"] = OSD.FromBoolean(result);
|
resp["success"] = OSD.FromBoolean(result);
|
||||||
// Let's also send out the IP address of the caller back to the caller (HG 1.5)
|
// Let's also send out the IP address of the caller back to the caller (HG 1.5)
|
||||||
resp["your_ip"] = OSD.FromString(Util.GetCallerIP(request));
|
resp["your_ip"] = OSD.FromString(GetCallerIP(request));
|
||||||
|
|
||||||
// TODO: add reason if not String.Empty?
|
// TODO: add reason if not String.Empty?
|
||||||
responsedata["int_response_code"] = HttpStatusCode.OK;
|
responsedata["int_response_code"] = HttpStatusCode.OK;
|
||||||
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
|
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetCallerIP(Hashtable request)
|
||||||
|
{
|
||||||
|
if (!m_Proxy)
|
||||||
|
return Util.GetCallerIP(request);
|
||||||
|
|
||||||
|
// We're behind a proxy
|
||||||
|
Hashtable headers = (Hashtable)request["headers"];
|
||||||
|
if (headers.ContainsKey("X-Forwarded-For") && headers["X-Forwarded-For"] != null)
|
||||||
|
{
|
||||||
|
IPEndPoint ep = Util.GetClientIPFromXFF((string)headers["X-Forwarded-For"]);
|
||||||
|
if (ep != null)
|
||||||
|
return ep.Address.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Oops
|
||||||
|
return Util.GetCallerIP(request);
|
||||||
|
}
|
||||||
|
|
||||||
// subclasses can override this
|
// subclasses can override this
|
||||||
protected virtual bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
|
protected virtual bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
|
||||||
{
|
{
|
||||||
|
|
|
@ -238,8 +238,12 @@ namespace OpenSim.Services.Connectors.Hypergrid
|
||||||
args["destination_y"] = OSD.FromString(destination.RegionLocY.ToString());
|
args["destination_y"] = OSD.FromString(destination.RegionLocY.ToString());
|
||||||
args["destination_name"] = OSD.FromString(destination.RegionName);
|
args["destination_name"] = OSD.FromString(destination.RegionName);
|
||||||
args["destination_uuid"] = OSD.FromString(destination.RegionID.ToString());
|
args["destination_uuid"] = OSD.FromString(destination.RegionID.ToString());
|
||||||
if (ipaddress != null)
|
|
||||||
args["client_ip"] = OSD.FromString(ipaddress.Address.ToString());
|
// 10/3/2010
|
||||||
|
// I added the client_ip up to the regular AgentCircuitData, so this doesn't need to be here.
|
||||||
|
// This need cleaning elsewhere...
|
||||||
|
//if (ipaddress != null)
|
||||||
|
// args["client_ip"] = OSD.FromString(ipaddress.Address.ToString());
|
||||||
|
|
||||||
return args;
|
return args;
|
||||||
}
|
}
|
||||||
|
|
|
@ -147,7 +147,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
if (account == null)
|
if (account == null)
|
||||||
{
|
{
|
||||||
// Store null responses too, to avoid repeated lookups for missing accounts
|
// Store null responses too, to avoid repeated lookups for missing accounts
|
||||||
m_accountCache.AddOrUpdate(userID, null, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
|
m_accountCache.AddOrUpdate(userID, null, CACHE_EXPIRATION_SECONDS);
|
||||||
}
|
}
|
||||||
|
|
||||||
return account;
|
return account;
|
||||||
|
@ -225,7 +225,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
if (success)
|
if (success)
|
||||||
{
|
{
|
||||||
// Cache the user account info
|
// Cache the user account info
|
||||||
m_accountCache.AddOrUpdate(data.PrincipalID, data, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
|
m_accountCache.AddOrUpdate(data.PrincipalID, data, CACHE_EXPIRATION_SECONDS);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -290,7 +290,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
GetFirstLastName(response["Name"].AsString(), out account.FirstName, out account.LastName);
|
GetFirstLastName(response["Name"].AsString(), out account.FirstName, out account.LastName);
|
||||||
|
|
||||||
// Cache the user account info
|
// Cache the user account info
|
||||||
m_accountCache.AddOrUpdate(account.PrincipalID, account, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
|
m_accountCache.AddOrUpdate(account.PrincipalID, account, CACHE_EXPIRATION_SECONDS);
|
||||||
|
|
||||||
return account;
|
return account;
|
||||||
}
|
}
|
||||||
|
|
|
@ -148,7 +148,6 @@ namespace OpenSim.Services.HypergridService
|
||||||
agentCircuit.ServiceSessionID = region.ServerURI + ";" + UUID.Random();
|
agentCircuit.ServiceSessionID = region.ServerURI + ";" + UUID.Random();
|
||||||
TravelingAgentInfo old = UpdateTravelInfo(agentCircuit, region);
|
TravelingAgentInfo old = UpdateTravelInfo(agentCircuit, region);
|
||||||
|
|
||||||
//bool success = m_GatekeeperConnector.CreateAgent(region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out reason);
|
|
||||||
bool success = false;
|
bool success = false;
|
||||||
string myExternalIP = string.Empty;
|
string myExternalIP = string.Empty;
|
||||||
string gridName = gatekeeper.ServerURI;
|
string gridName = gatekeeper.ServerURI;
|
||||||
|
@ -200,6 +199,11 @@ namespace OpenSim.Services.HypergridService
|
||||||
{
|
{
|
||||||
if (m_TravelingAgents.ContainsKey(agentCircuit.SessionID))
|
if (m_TravelingAgents.ContainsKey(agentCircuit.SessionID))
|
||||||
{
|
{
|
||||||
|
// Very important! Override whatever this agent comes with.
|
||||||
|
// UserAgentService always sets the IP for every new agent
|
||||||
|
// with the original IP address.
|
||||||
|
agentCircuit.IPAddress = m_TravelingAgents[agentCircuit.SessionID].ClientIPAddress;
|
||||||
|
|
||||||
old = m_TravelingAgents[agentCircuit.SessionID];
|
old = m_TravelingAgents[agentCircuit.SessionID];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,8 @@ namespace OpenSim.Services.Interfaces
|
||||||
|
|
||||||
public interface ILoginService
|
public interface ILoginService
|
||||||
{
|
{
|
||||||
LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP);
|
LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID,
|
||||||
|
string clientVersion, string channel, string mac, string id0, IPEndPoint clientIP);
|
||||||
Hashtable SetLevel(string firstName, string lastName, string passwd, int level, IPEndPoint clientIP);
|
Hashtable SetLevel(string firstName, string lastName, string passwd, int level, IPEndPoint clientIP);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -208,7 +208,8 @@ namespace OpenSim.Services.LLLoginService
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP)
|
public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID,
|
||||||
|
string clientVersion, string channel, string mac, string id0, IPEndPoint clientIP)
|
||||||
{
|
{
|
||||||
bool success = false;
|
bool success = false;
|
||||||
UUID session = UUID.Random();
|
UUID session = UUID.Random();
|
||||||
|
@ -340,7 +341,8 @@ namespace OpenSim.Services.LLLoginService
|
||||||
//
|
//
|
||||||
string reason = string.Empty;
|
string reason = string.Empty;
|
||||||
GridRegion dest;
|
GridRegion dest;
|
||||||
AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, clientVersion, clientIP, out where, out reason, out dest);
|
AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where,
|
||||||
|
clientVersion, channel, mac, id0, clientIP, out where, out reason, out dest);
|
||||||
destination = dest;
|
destination = dest;
|
||||||
if (aCircuit == null)
|
if (aCircuit == null)
|
||||||
{
|
{
|
||||||
|
@ -600,7 +602,8 @@ namespace OpenSim.Services.LLLoginService
|
||||||
}
|
}
|
||||||
|
|
||||||
protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar,
|
protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar,
|
||||||
UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, IPEndPoint clientIP, out string where, out string reason, out GridRegion dest)
|
UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, string channel, string mac, string id0,
|
||||||
|
IPEndPoint clientIP, out string where, out string reason, out GridRegion dest)
|
||||||
{
|
{
|
||||||
where = currentWhere;
|
where = currentWhere;
|
||||||
ISimulationService simConnector = null;
|
ISimulationService simConnector = null;
|
||||||
|
@ -640,7 +643,7 @@ namespace OpenSim.Services.LLLoginService
|
||||||
if (m_UserAgentService == null && simConnector != null)
|
if (m_UserAgentService == null && simConnector != null)
|
||||||
{
|
{
|
||||||
circuitCode = (uint)Util.RandomClass.Next(); ;
|
circuitCode = (uint)Util.RandomClass.Next(); ;
|
||||||
aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
|
aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, clientIP.Address.ToString(), viewer, channel, mac, id0);
|
||||||
success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason);
|
success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason);
|
||||||
if (!success && m_GridService != null)
|
if (!success && m_GridService != null)
|
||||||
{
|
{
|
||||||
|
@ -665,7 +668,7 @@ namespace OpenSim.Services.LLLoginService
|
||||||
if (m_UserAgentService != null)
|
if (m_UserAgentService != null)
|
||||||
{
|
{
|
||||||
circuitCode = (uint)Util.RandomClass.Next(); ;
|
circuitCode = (uint)Util.RandomClass.Next(); ;
|
||||||
aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
|
aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, clientIP.Address.ToString(), viewer, channel, mac, id0);
|
||||||
success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, clientIP, out reason);
|
success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, clientIP, out reason);
|
||||||
if (!success && m_GridService != null)
|
if (!success && m_GridService != null)
|
||||||
{
|
{
|
||||||
|
@ -694,7 +697,8 @@ namespace OpenSim.Services.LLLoginService
|
||||||
}
|
}
|
||||||
|
|
||||||
private AgentCircuitData MakeAgent(GridRegion region, UserAccount account,
|
private AgentCircuitData MakeAgent(GridRegion region, UserAccount account,
|
||||||
AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position, string viewer)
|
AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position,
|
||||||
|
string ipaddress, string viewer, string channel, string mac, string id0)
|
||||||
{
|
{
|
||||||
AgentCircuitData aCircuit = new AgentCircuitData();
|
AgentCircuitData aCircuit = new AgentCircuitData();
|
||||||
|
|
||||||
|
@ -715,7 +719,11 @@ namespace OpenSim.Services.LLLoginService
|
||||||
aCircuit.SecureSessionID = secureSession;
|
aCircuit.SecureSessionID = secureSession;
|
||||||
aCircuit.SessionID = session;
|
aCircuit.SessionID = session;
|
||||||
aCircuit.startpos = position;
|
aCircuit.startpos = position;
|
||||||
|
aCircuit.IPAddress = ipaddress;
|
||||||
aCircuit.Viewer = viewer;
|
aCircuit.Viewer = viewer;
|
||||||
|
aCircuit.Channel = channel;
|
||||||
|
aCircuit.Mac = mac;
|
||||||
|
aCircuit.Id0 = id0;
|
||||||
SetServiceURLs(aCircuit, account);
|
SetServiceURLs(aCircuit, account);
|
||||||
|
|
||||||
return aCircuit;
|
return aCircuit;
|
||||||
|
|
Binary file not shown.
|
@ -1,333 +1,333 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<doc>
|
<doc>
|
||||||
<assembly>
|
<assembly>
|
||||||
<name>OpenMetaverse.StructuredData</name>
|
<name>OpenMetaverse.StructuredData</name>
|
||||||
</assembly>
|
</assembly>
|
||||||
<members>
|
<members>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDParser">
|
<member name="T:OpenMetaverse.StructuredData.OSDParser">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDNotationElement(System.IO.StringReader)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Byte[])">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="xmlData"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.PeekAndSkipWhitespace(System.IO.StringReader)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="xmlData"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.ReadAndSkipWhitespace(System.IO.StringReader)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Xml.XmlTextReader)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="xmlData"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.GetLengthInBrackets(System.IO.StringReader)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlBytes(OpenMetaverse.StructuredData.OSD)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="data"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.GetStringDelimitedBy(System.IO.StringReader,System.Char)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlString(OpenMetaverse.StructuredData.OSD)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="data"></param>
|
||||||
<param name="delimiter"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlElement(System.Xml.XmlTextWriter,OpenMetaverse.StructuredData.OSD)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.BufferCharactersEqual(System.IO.StringReader,System.Char[],System.Int32)">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="writer"></param>
|
||||||
<param name="reader"></param>
|
<param name="data"></param>
|
||||||
<param name="buffer"></param>
|
</member>
|
||||||
<param name="offset"></param>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.TryValidateLLSDXml(System.Xml.XmlTextReader,System.String@)">
|
||||||
<returns></returns>
|
<summary>
|
||||||
</member>
|
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.UnescapeCharacter(System.String,System.Char)">
|
</summary>
|
||||||
<summary>
|
<param name="xmlData"></param>
|
||||||
|
<param name="error"></param>
|
||||||
</summary>
|
<returns></returns>
|
||||||
<param name="s"></param>
|
</member>
|
||||||
<param name="c"></param>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.ParseLLSDXmlElement(System.Xml.XmlTextReader)">
|
||||||
<returns></returns>
|
<summary>
|
||||||
</member>
|
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.EscapeCharacter(System.String,System.Char)">
|
</summary>
|
||||||
<summary>
|
<param name="reader"></param>
|
||||||
|
<returns></returns>
|
||||||
</summary>
|
</member>
|
||||||
<param name="s"></param>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDNotationElement(System.IO.StringReader)">
|
||||||
<param name="c"></param>
|
<summary>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.Byte[])">
|
<param name="reader"></param>
|
||||||
<summary>
|
<returns></returns>
|
||||||
|
</member>
|
||||||
</summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.PeekAndSkipWhitespace(System.IO.StringReader)">
|
||||||
<param name="binaryData"></param>
|
<summary>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.IO.Stream)">
|
<param name="reader"></param>
|
||||||
<summary>
|
<returns></returns>
|
||||||
|
</member>
|
||||||
</summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.ReadAndSkipWhitespace(System.IO.StringReader)">
|
||||||
<param name="stream"></param>
|
<summary>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(OpenMetaverse.StructuredData.OSD)">
|
<param name="reader"></param>
|
||||||
<summary>
|
<returns></returns>
|
||||||
|
</member>
|
||||||
</summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.GetLengthInBrackets(System.IO.StringReader)">
|
||||||
<param name="osd"></param>
|
<summary>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(OpenMetaverse.StructuredData.OSD)">
|
<param name="reader"></param>
|
||||||
<summary>
|
<returns></returns>
|
||||||
|
</member>
|
||||||
</summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.GetStringDelimitedBy(System.IO.StringReader,System.Char)">
|
||||||
<param name="data"></param>
|
<summary>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SkipWhiteSpace(System.IO.Stream)">
|
<param name="reader"></param>
|
||||||
<summary>
|
<param name="delimiter"></param>
|
||||||
|
<returns></returns>
|
||||||
</summary>
|
</member>
|
||||||
<param name="stream"></param>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.BufferCharactersEqual(System.IO.StringReader,System.Char[],System.Int32)">
|
||||||
</member>
|
<summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.FindByte(System.IO.Stream,System.Byte)">
|
|
||||||
<summary>
|
</summary>
|
||||||
|
<param name="reader"></param>
|
||||||
</summary>
|
<param name="buffer"></param>
|
||||||
<param name="stream"></param>
|
<param name="offset"></param>
|
||||||
<param name="toFind"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.UnescapeCharacter(System.String,System.Char)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.FindByteArray(System.IO.Stream,System.Byte[])">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="s"></param>
|
||||||
<param name="stream"></param>
|
<param name="c"></param>
|
||||||
<param name="toFind"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.EscapeCharacter(System.String,System.Char)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.ConsumeBytes(System.IO.Stream,System.Int32)">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="s"></param>
|
||||||
<param name="stream"></param>
|
<param name="c"></param>
|
||||||
<param name="consumeBytes"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.Byte[])">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.NetworkToHostInt(System.Byte[])">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="binaryData"></param>
|
||||||
<param name="binaryNetEnd"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.IO.Stream)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.NetworkToHostDouble(System.Byte[])">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="stream"></param>
|
||||||
<param name="binaryNetEnd"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(OpenMetaverse.StructuredData.OSD)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.HostToNetworkIntBytes(System.Int32)">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="osd"></param>
|
||||||
<param name="intHostEnd"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(OpenMetaverse.StructuredData.OSD)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Byte[])">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="data"></param>
|
||||||
<param name="xmlData"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.SkipWhiteSpace(System.IO.Stream)">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.String)">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="stream"></param>
|
||||||
<param name="xmlData"></param>
|
</member>
|
||||||
<returns></returns>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.FindByte(System.IO.Stream,System.Byte)">
|
||||||
</member>
|
<summary>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Xml.XmlTextReader)">
|
|
||||||
<summary>
|
</summary>
|
||||||
|
<param name="stream"></param>
|
||||||
</summary>
|
<param name="toFind"></param>
|
||||||
<param name="xmlData"></param>
|
<returns></returns>
|
||||||
<returns></returns>
|
</member>
|
||||||
</member>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.FindByteArray(System.IO.Stream,System.Byte[])">
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlBytes(OpenMetaverse.StructuredData.OSD)">
|
<summary>
|
||||||
<summary>
|
|
||||||
|
</summary>
|
||||||
</summary>
|
<param name="stream"></param>
|
||||||
<param name="data"></param>
|
<param name="toFind"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlString(OpenMetaverse.StructuredData.OSD)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.ConsumeBytes(System.IO.Stream,System.Int32)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="data"></param>
|
<param name="stream"></param>
|
||||||
<returns></returns>
|
<param name="consumeBytes"></param>
|
||||||
</member>
|
<returns></returns>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.SerializeLLSDXmlElement(System.Xml.XmlTextWriter,OpenMetaverse.StructuredData.OSD)">
|
</member>
|
||||||
<summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.NetworkToHostInt(System.Byte[])">
|
||||||
|
<summary>
|
||||||
</summary>
|
|
||||||
<param name="writer"></param>
|
</summary>
|
||||||
<param name="data"></param>
|
<param name="binaryNetEnd"></param>
|
||||||
</member>
|
<returns></returns>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.TryValidateLLSDXml(System.Xml.XmlTextReader,System.String@)">
|
</member>
|
||||||
<summary>
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.NetworkToHostDouble(System.Byte[])">
|
||||||
|
<summary>
|
||||||
</summary>
|
|
||||||
<param name="xmlData"></param>
|
</summary>
|
||||||
<param name="error"></param>
|
<param name="binaryNetEnd"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSDParser.ParseLLSDXmlElement(System.Xml.XmlTextReader)">
|
<member name="M:OpenMetaverse.StructuredData.OSDParser.HostToNetworkIntBytes(System.Int32)">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="reader"></param>
|
<param name="intHostEnd"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDType">
|
<member name="T:OpenMetaverse.StructuredData.OSDType">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Unknown">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Unknown">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Boolean">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Boolean">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Integer">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Integer">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Real">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Real">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.String">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.String">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.UUID">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.UUID">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Date">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Date">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.URI">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.URI">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Binary">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Binary">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Map">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Map">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:OpenMetaverse.StructuredData.OSDType.Array">
|
<member name="F:OpenMetaverse.StructuredData.OSDType.Array">
|
||||||
<summary></summary>
|
<summary></summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDException">
|
<member name="T:OpenMetaverse.StructuredData.OSDException">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSD">
|
<member name="T:OpenMetaverse.StructuredData.OSD">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSD.SerializeMembers(System.Object)">
|
<member name="M:OpenMetaverse.StructuredData.OSD.SerializeMembers(System.Object)">
|
||||||
<summary>
|
<summary>
|
||||||
Uses reflection to create an SDMap from all of the SD
|
Uses reflection to create an SDMap from all of the SD
|
||||||
serializable types in an object
|
serializable types in an object
|
||||||
</summary>
|
</summary>
|
||||||
<param name="obj">Class or struct containing serializable types</param>
|
<param name="obj">Class or struct containing serializable types</param>
|
||||||
<returns>An SDMap holding the serialized values from the
|
<returns>An SDMap holding the serialized values from the
|
||||||
container object</returns>
|
container object</returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:OpenMetaverse.StructuredData.OSD.DeserializeMembers(System.Object@,OpenMetaverse.StructuredData.OSDMap)">
|
<member name="M:OpenMetaverse.StructuredData.OSD.DeserializeMembers(System.Object@,OpenMetaverse.StructuredData.OSDMap)">
|
||||||
<summary>
|
<summary>
|
||||||
Uses reflection to deserialize member variables in an object from
|
Uses reflection to deserialize member variables in an object from
|
||||||
an SDMap
|
an SDMap
|
||||||
</summary>
|
</summary>
|
||||||
<param name="obj">Reference to an object to fill with deserialized
|
<param name="obj">Reference to an object to fill with deserialized
|
||||||
values</param>
|
values</param>
|
||||||
<param name="serialized">Serialized values to put in the target
|
<param name="serialized">Serialized values to put in the target
|
||||||
object</param>
|
object</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDBoolean">
|
<member name="T:OpenMetaverse.StructuredData.OSDBoolean">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDInteger">
|
<member name="T:OpenMetaverse.StructuredData.OSDInteger">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDReal">
|
<member name="T:OpenMetaverse.StructuredData.OSDReal">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDString">
|
<member name="T:OpenMetaverse.StructuredData.OSDString">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDUUID">
|
<member name="T:OpenMetaverse.StructuredData.OSDUUID">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDDate">
|
<member name="T:OpenMetaverse.StructuredData.OSDDate">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDUri">
|
<member name="T:OpenMetaverse.StructuredData.OSDUri">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDBinary">
|
<member name="T:OpenMetaverse.StructuredData.OSDBinary">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDMap">
|
<member name="T:OpenMetaverse.StructuredData.OSDMap">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:OpenMetaverse.StructuredData.OSDArray">
|
<member name="T:OpenMetaverse.StructuredData.OSDArray">
|
||||||
<summary>
|
<summary>
|
||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
</members>
|
</members>
|
||||||
</doc>
|
</doc>
|
||||||
|
|
Binary file not shown.
50201
bin/OpenMetaverse.XML
50201
bin/OpenMetaverse.XML
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
@ -1,7 +1,7 @@
|
||||||
<configuration>
|
<configuration>
|
||||||
<dllmap os="osx" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1.dylib" />
|
<dllmap os="osx" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1.dylib" />
|
||||||
<dllmap os="!windows,osx" cpu="x86-64,ia64" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-x86_64" />
|
<dllmap os="!windows,osx" cpu="x86-64,ia64" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-x86_64" />
|
||||||
<dllmap os="!windows,osx" cpu="x86-64,ia64" dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-x86_64" />
|
<dllmap os="!windows,osx" cpu="x86-64,ia64" dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-x86_64" />
|
||||||
<dllmap os="!windows,osx" cpu="x86" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-i686" />
|
<dllmap os="!windows,osx" cpu="x86" dll="openjpeg-dotnet.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-i686" />
|
||||||
<dllmap os="!windows,osx" cpu="x86" dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-i686" />
|
<dllmap os="!windows,osx" cpu="x86" dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg-dotnet-2.1.3.0-dotnet-1-i686" />
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
@ -364,7 +364,7 @@
|
||||||
|
|
||||||
;; Path to default appearance XML file that specifies the look of the
|
;; Path to default appearance XML file that specifies the look of the
|
||||||
;; default avatars
|
;; default avatars
|
||||||
; default_appearance = default_appearance.xml
|
; default_appearance = default_appearance.xml
|
||||||
|
|
||||||
[Wind]
|
[Wind]
|
||||||
;# {enabled} {} {Enable wind module?} {true false} true
|
;# {enabled} {} {Enable wind module?} {true false} true
|
||||||
|
@ -510,7 +510,7 @@
|
||||||
;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
|
;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
|
||||||
;; Allow the use of os* functions (some are dangerous)
|
;; Allow the use of os* functions (some are dangerous)
|
||||||
; AllowOSFunctions = false
|
; AllowOSFunctions = false
|
||||||
|
|
||||||
;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
|
;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
|
||||||
; Allow the user of LightShare functions
|
; Allow the user of LightShare functions
|
||||||
; AllowLightShareFunctions = false
|
; AllowLightShareFunctions = false
|
||||||
|
@ -633,7 +633,7 @@
|
||||||
|
|
||||||
;; Service connectors to the Groups Service. Select one depending on
|
;; Service connectors to the Groups Service. Select one depending on
|
||||||
;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
|
;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
|
||||||
|
|
||||||
;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups?} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
|
;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups?} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
|
||||||
;; The service connector to use for the GroupsModule
|
;; The service connector to use for the GroupsModule
|
||||||
; ServicesConnectorModule = SimianGroupsServicesConnector
|
; ServicesConnectorModule = SimianGroupsServicesConnector
|
||||||
|
@ -644,7 +644,7 @@
|
||||||
|
|
||||||
;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
|
;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
|
||||||
;; Enable Group Notices
|
;; Enable Group Notices
|
||||||
; NoticesEnabled = true
|
; NoticesEnabled = true
|
||||||
|
|
||||||
;; This makes the Groups modules very chatty on the console.
|
;; This makes the Groups modules very chatty on the console.
|
||||||
; DebugEnabled = false
|
; DebugEnabled = false
|
||||||
|
@ -652,12 +652,12 @@
|
||||||
;; Specify which messaging module to use for groups messaging and if it's
|
;; Specify which messaging module to use for groups messaging and if it's
|
||||||
;; enabled
|
;; enabled
|
||||||
; MessagingModule = GroupsMessagingModule
|
; MessagingModule = GroupsMessagingModule
|
||||||
; MessagingEnabled = true
|
; MessagingEnabled = true
|
||||||
|
|
||||||
;; XmlRpc Security settings. These must match those set on your backend
|
;; XmlRpc Security settings. These must match those set on your backend
|
||||||
;; groups service.
|
;; groups service.
|
||||||
; XmlRpcServiceReadKey = 1234
|
; XmlRpcServiceReadKey = 1234
|
||||||
; XmlRpcServiceWriteKey = 1234
|
; XmlRpcServiceWriteKey = 1234
|
||||||
|
|
||||||
[InterestManagement]
|
[InterestManagement]
|
||||||
;# {UpdatePrioritizationScheme} {} {Update prioritization scheme?} {BestAvatarResponsiveness Time Distance SimpleAngularDistance FrontBack} BestAvatarResponsiveness
|
;# {UpdatePrioritizationScheme} {} {Update prioritization scheme?} {BestAvatarResponsiveness Time Distance SimpleAngularDistance FrontBack} BestAvatarResponsiveness
|
||||||
|
|
Binary file not shown.
|
@ -212,6 +212,10 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
|
||||||
; Does this grid allow incoming links to any region in it?
|
; Does this grid allow incoming links to any region in it?
|
||||||
; If false, HG TPs happen only to the Default regions specified in [GridService] section
|
; If false, HG TPs happen only to the Default regions specified in [GridService] section
|
||||||
AllowTeleportsToAnyRegion = true
|
AllowTeleportsToAnyRegion = true
|
||||||
|
|
||||||
|
; If you run this gatekeeper server behind a proxy, set this to true
|
||||||
|
; HasProxy = true
|
||||||
|
|
||||||
|
|
||||||
[UserAgentService]
|
[UserAgentService]
|
||||||
LocalServiceModule = "OpenSim.Services.HypergridService.dll:UserAgentService"
|
LocalServiceModule = "OpenSim.Services.HypergridService.dll:UserAgentService"
|
||||||
|
@ -220,6 +224,9 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
|
||||||
GridService = "OpenSim.Services.GridService.dll:GridService"
|
GridService = "OpenSim.Services.GridService.dll:GridService"
|
||||||
GatekeeperService = "OpenSim.Services.HypergridService.dll:GatekeeperService"
|
GatekeeperService = "OpenSim.Services.HypergridService.dll:GatekeeperService"
|
||||||
|
|
||||||
|
; If you run this user agent server behind a proxy, set this to true
|
||||||
|
; HasProxy = true
|
||||||
|
|
||||||
;; If you separate the UserAgentService from the LoginService, set this to
|
;; If you separate the UserAgentService from the LoginService, set this to
|
||||||
;; the IP address of the machine where your LoginService is
|
;; the IP address of the machine where your LoginService is
|
||||||
;LoginServerIP = "127.0.0.1"
|
;LoginServerIP = "127.0.0.1"
|
||||||
|
|
|
@ -57,12 +57,12 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
|
||||||
LocalServiceModule = "OpenSim.Services.GridService.dll:GridService"
|
LocalServiceModule = "OpenSim.Services.GridService.dll:GridService"
|
||||||
; Realm = "regions"
|
; Realm = "regions"
|
||||||
; AllowDuplicateNames = "True"
|
; AllowDuplicateNames = "True"
|
||||||
|
|
||||||
;; Next, we can specify properties of regions, including default and fallback regions
|
;; Next, we can specify properties of regions, including default and fallback regions
|
||||||
;; The syntax is: Region_<RegionName> = "<flags>"
|
;; The syntax is: Region_<RegionName> = "<flags>"
|
||||||
;; or: Region_<RegionID> = "<flags>"
|
;; or: Region_<RegionID> = "<flags>"
|
||||||
;; where <flags> can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut,Reservation,NoMove,Authenticate
|
;; where <flags> can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut,Reservation,NoMove,Authenticate
|
||||||
;; For example:
|
;; For example:
|
||||||
; Region_Welcome_Area = "DefaultRegion, FallbackRegion"
|
; Region_Welcome_Area = "DefaultRegion, FallbackRegion"
|
||||||
; (replace spaces with underscore)
|
; (replace spaces with underscore)
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
|
||||||
; for the server connector
|
; for the server connector
|
||||||
AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
|
AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
|
||||||
UserAccountServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService"
|
UserAccountServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService"
|
||||||
|
|
||||||
; * This is the new style authentication service. Currently, only MySQL
|
; * This is the new style authentication service. Currently, only MySQL
|
||||||
; * is implemented. "Realm" is the table that is used for user lookup.
|
; * is implemented. "Realm" is the table that is used for user lookup.
|
||||||
; * It defaults to "useraccounts", which uses the new style.
|
; * It defaults to "useraccounts", which uses the new style.
|
||||||
|
@ -141,6 +141,8 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
|
||||||
; For snowglobe's web map
|
; For snowglobe's web map
|
||||||
; MapTileURL = "";
|
; MapTileURL = "";
|
||||||
|
|
||||||
|
; If you run this login server behind a proxy, set this to true
|
||||||
|
; HasProxy = true
|
||||||
|
|
||||||
[GridInfoService]
|
[GridInfoService]
|
||||||
; These settings are used to return information on a get_grid_info call.
|
; These settings are used to return information on a get_grid_info call.
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
;;
|
;;
|
||||||
;; Options for CenmoeAssetCache
|
;; Options for CenmoeAssetCache
|
||||||
;;
|
;;
|
||||||
|
|
||||||
; 256 MB (default: 134217728)
|
; 256 MB (default: 134217728)
|
||||||
MaxSize = 268435456
|
MaxSize = 268435456
|
||||||
|
|
||||||
; How many assets it is possible to store cache (default: 4096)
|
; How many assets it is possible to store cache (default: 4096)
|
||||||
MaxCount = 16384
|
MaxCount = 16384
|
||||||
|
|
||||||
; Expiration time - 1 hour (default: 30 minutes)
|
; Expiration time - 1 hour (default: 30 minutes)
|
||||||
ExpirationTime = 60
|
ExpirationTime = 60
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
;;
|
;;
|
||||||
;; Options for FlotsamAssetCache
|
;; Options for FlotsamAssetCache
|
||||||
;;
|
;;
|
||||||
|
|
||||||
; cache directory can be shared by multiple instances
|
; cache directory can be shared by multiple instances
|
||||||
CacheDirectory = ./assetcache
|
CacheDirectory = ./assetcache
|
||||||
; Other examples:
|
; Other examples:
|
||||||
|
@ -34,9 +34,9 @@
|
||||||
; How often {in hours} should the disk be checked for expired filed
|
; How often {in hours} should the disk be checked for expired filed
|
||||||
; Specify 0 to disable expiration checking
|
; Specify 0 to disable expiration checking
|
||||||
FileCleanupTimer = .166 ;roughly every 10 minutes
|
FileCleanupTimer = .166 ;roughly every 10 minutes
|
||||||
|
|
||||||
; If WAIT_ON_INPROGRESS_REQUESTS has been defined then this specifies how
|
; If WAIT_ON_INPROGRESS_REQUESTS has been defined then this specifies how
|
||||||
; long (in miliseconds) to block a request thread while trying to complete
|
; long (in miliseconds) to block a request thread while trying to complete
|
||||||
; an existing write to disk.
|
; an existing write to disk.
|
||||||
; WaitOnInprogressTimeout = 3000
|
; WaitOnInprogressTimeout = 3000
|
||||||
|
|
||||||
|
@ -50,10 +50,10 @@
|
||||||
|
|
||||||
; Warning level for cache directory size
|
; Warning level for cache directory size
|
||||||
;CacheWarnAt = 30000
|
;CacheWarnAt = 30000
|
||||||
|
|
||||||
; Perform a deep scan of all assets within all regions, looking for all assets
|
; Perform a deep scan of all assets within all regions, looking for all assets
|
||||||
; present or referenced. Mark all assets found that are already present in the
|
; present or referenced. Mark all assets found that are already present in the
|
||||||
; cache, and request all assets that are found that are not already cached (this
|
; cache, and request all assets that are found that are not already cached (this
|
||||||
; will cause those assets to be cached)
|
; will cause those assets to be cached)
|
||||||
;
|
;
|
||||||
; DeepScanBeforePurge = false
|
; DeepScanBeforePurge = false
|
||||||
|
|
|
@ -11,8 +11,8 @@
|
||||||
; for more details
|
; for more details
|
||||||
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
|
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
|
||||||
|
|
||||||
; MySql
|
; MySql
|
||||||
; Uncomment these lines if you want to use mysql storage
|
; Uncomment these lines if you want to use mysql storage
|
||||||
; Change the connection string to your db details
|
; Change the connection string to your db details
|
||||||
;StorageProvider = "OpenSim.Data.MySQL.dll"
|
;StorageProvider = "OpenSim.Data.MySQL.dll"
|
||||||
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;"
|
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;"
|
||||||
|
@ -81,18 +81,18 @@
|
||||||
[Modules]
|
[Modules]
|
||||||
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
|
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
|
||||||
;; Copy the config .example file into your own .ini file and change configs there
|
;; Copy the config .example file into your own .ini file and change configs there
|
||||||
|
|
||||||
AssetCaching = "FlotsamAssetCache"
|
AssetCaching = "FlotsamAssetCache"
|
||||||
Include-FlotsamCache = "config-include/FlotsamCache.ini"
|
Include-FlotsamCache = "config-include/FlotsamCache.ini"
|
||||||
|
|
||||||
;AssetCaching = "CenomeMemoryAssetCache"
|
;AssetCaching = "CenomeMemoryAssetCache"
|
||||||
;Include-CenomeCache = "config-include/CenomeCache.ini"
|
;Include-CenomeCache = "config-include/CenomeCache.ini"
|
||||||
|
|
||||||
;AssetCaching = "GlynnTuckerAssetCache"
|
;AssetCaching = "GlynnTuckerAssetCache"
|
||||||
|
|
||||||
;; Optionally, the port for the LLProxyLoginModule module can be changed
|
;; Optionally, the port for the LLProxyLoginModule module can be changed
|
||||||
|
|
||||||
;Setup_LLProxyLoginModule = "9090/"
|
;Setup_LLProxyLoginModule = "9090/"
|
||||||
|
|
||||||
;; Authorization is not on by default, as it depends on external php
|
;; Authorization is not on by default, as it depends on external php
|
||||||
;AuthorizationServices = "RemoteAuthorizationServicesConnector"
|
;AuthorizationServices = "RemoteAuthorizationServicesConnector"
|
||||||
|
|
|
@ -17,10 +17,10 @@
|
||||||
AvatarServices = "LocalAvatarServicesConnector"
|
AvatarServices = "LocalAvatarServicesConnector"
|
||||||
EntityTransferModule = "BasicEntityTransferModule"
|
EntityTransferModule = "BasicEntityTransferModule"
|
||||||
InventoryAccessModule = "BasicInventoryAccessModule"
|
InventoryAccessModule = "BasicInventoryAccessModule"
|
||||||
|
|
||||||
LibraryModule = true
|
LibraryModule = true
|
||||||
LLLoginServiceInConnector = true
|
LLLoginServiceInConnector = true
|
||||||
GridInfoServiceInConnector = true
|
GridInfoServiceInConnector = true
|
||||||
|
|
||||||
[SimulationDataStore]
|
[SimulationDataStore]
|
||||||
LocalServiceModule = "OpenSim.Services.Connectors.dll:SimulationDataService"
|
LocalServiceModule = "OpenSim.Services.Connectors.dll:SimulationDataService"
|
||||||
|
@ -35,9 +35,9 @@
|
||||||
LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService"
|
LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService"
|
||||||
|
|
||||||
[LibraryService]
|
[LibraryService]
|
||||||
LocalServiceModule = "OpenSim.Services.InventoryService.dll:LibraryService"
|
LocalServiceModule = "OpenSim.Services.InventoryService.dll:LibraryService"
|
||||||
LibraryName = "OpenSim Library"
|
LibraryName = "OpenSim Library"
|
||||||
DefaultLibrary = "./inventory/Libraries.xml"
|
DefaultLibrary = "./inventory/Libraries.xml"
|
||||||
|
|
||||||
[AvatarService]
|
[AvatarService]
|
||||||
LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService"
|
LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService"
|
||||||
|
@ -78,7 +78,7 @@
|
||||||
[LoginService]
|
[LoginService]
|
||||||
LocalServiceModule = "OpenSim.Services.LLLoginService.dll:LLLoginService"
|
LocalServiceModule = "OpenSim.Services.LLLoginService.dll:LLLoginService"
|
||||||
UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService"
|
UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService"
|
||||||
GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService"
|
GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService"
|
||||||
AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
|
AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
|
||||||
InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService"
|
InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService"
|
||||||
PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService"
|
PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService"
|
||||||
|
@ -88,7 +88,6 @@
|
||||||
|
|
||||||
WelcomeMessage = "Welcome, Avatar!"
|
WelcomeMessage = "Welcome, Avatar!"
|
||||||
|
|
||||||
|
|
||||||
;; This should always be the very last thing on this file
|
;; This should always be the very last thing on this file
|
||||||
[Includes]
|
[Includes]
|
||||||
Include-Common = "config-include/StandaloneCommon.ini"
|
Include-Common = "config-include/StandaloneCommon.ini"
|
||||||
|
|
|
@ -13,8 +13,8 @@
|
||||||
; for more details
|
; for more details
|
||||||
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
|
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
|
||||||
|
|
||||||
; MySql
|
; MySql
|
||||||
; Uncomment these lines if you want to use mysql storage
|
; Uncomment these lines if you want to use mysql storage
|
||||||
; Change the connection string to your db details
|
; Change the connection string to your db details
|
||||||
;StorageProvider = "OpenSim.Data.MySQL.dll"
|
;StorageProvider = "OpenSim.Data.MySQL.dll"
|
||||||
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;"
|
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;"
|
||||||
|
@ -28,9 +28,9 @@
|
||||||
[Modules]
|
[Modules]
|
||||||
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
|
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
|
||||||
;; Copy the config .example file into your own .ini file and change configs there
|
;; Copy the config .example file into your own .ini file and change configs there
|
||||||
|
|
||||||
;AssetCaching = "GlynnTuckerAssetCache"
|
;AssetCaching = "GlynnTuckerAssetCache"
|
||||||
|
|
||||||
;AssetCaching = "FlotsamAssetCache"
|
;AssetCaching = "FlotsamAssetCache"
|
||||||
;Include-FlotsamCache = "config-include/FlotsamCache.ini"
|
;Include-FlotsamCache = "config-include/FlotsamCache.ini"
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
;FreeswitchServiceInConnector = True
|
;FreeswitchServiceInConnector = True
|
||||||
|
|
||||||
;; Authorization is not on by default, as it depends on external php
|
;; Authorization is not on by default, as it depends on external php
|
||||||
;AuthorizationServices = "LocalAuthorizationServicesConnector"
|
;AuthorizationServices = "LocalAuthorizationServicesConnector"
|
||||||
|
|
||||||
[FreeswitchService]
|
[FreeswitchService]
|
||||||
;; Configuration for the freeswitch service goes here
|
;; Configuration for the freeswitch service goes here
|
||||||
|
@ -49,11 +49,11 @@
|
||||||
|
|
||||||
[GridService]
|
[GridService]
|
||||||
;; For in-memory region storage (default)
|
;; For in-memory region storage (default)
|
||||||
StorageProvider = "OpenSim.Data.Null.dll:NullRegionData"
|
StorageProvider = "OpenSim.Data.Null.dll:NullRegionData"
|
||||||
;;--- For MySql region storage (alternative)
|
;;--- For MySql region storage (alternative)
|
||||||
;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData"
|
;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData"
|
||||||
|
|
||||||
; If HG, do you want this check on the distance to be performed?
|
; If HG, do you want this check on the distance to be performed?
|
||||||
; Check4096 = "False"
|
; Check4096 = "False"
|
||||||
|
|
||||||
;; Next, we can specify properties of regions, including default and fallback regions
|
;; Next, we can specify properties of regions, including default and fallback regions
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
[LibraryModule]
|
[LibraryModule]
|
||||||
; Set this if you want to change the name of the OpenSim Library
|
; Set this if you want to change the name of the OpenSim Library
|
||||||
;LibraryName = "My World's Library"
|
;LibraryName = "My World's Library"
|
||||||
|
|
||||||
[LoginService]
|
[LoginService]
|
||||||
WelcomeMessage = "Welcome, Avatar!"
|
WelcomeMessage = "Welcome, Avatar!"
|
||||||
|
|
||||||
|
@ -77,9 +77,9 @@
|
||||||
[GatekeeperService]
|
[GatekeeperService]
|
||||||
ExternalName = "http://127.0.0.1:9000"
|
ExternalName = "http://127.0.0.1:9000"
|
||||||
|
|
||||||
; Does this grid allow incoming links to any region in it?
|
; Does this grid allow incoming links to any region in it?
|
||||||
; If false, HG TPs happen only to the Default regions specified in [GridService] section
|
; If false, HG TPs happen only to the Default regions specified in [GridService] section
|
||||||
AllowTeleportsToAnyRegion = true
|
AllowTeleportsToAnyRegion = true
|
||||||
|
|
||||||
[GridInfoService]
|
[GridInfoService]
|
||||||
; These settings are used to return information on a get_grid_info call.
|
; These settings are used to return information on a get_grid_info call.
|
||||||
|
|
Loading…
Reference in New Issue