Update svn properties. Formatting cleanup.

0.6.0-stable
Jeff Ames 2008-05-30 08:35:57 +00:00
parent 5b0d47dddb
commit 0462510956
21 changed files with 403 additions and 449 deletions

View File

@ -23,9 +23,10 @@ OpenSim Developers
* Danx0r * Danx0r
* Dalien * Dalien
* Darok * Darok
* chi11ken (3Di) * chi11ken (Genkii)
* adjohn (3Di) * adjohn (Genkii)
* Alondria * Alondria
* Dr Scofield (IBM)
Patches Patches
@ -38,7 +39,6 @@ Patches
* daTwitch * daTwitch
* mikkopa/_someone - RealXtend * mikkopa/_someone - RealXtend
* openlifegrid.com * openlifegrid.com
* Dr Scofield (IBM)
* Daedius * Daedius
* alex_carnell * alex_carnell
* webmage (IBM) * webmage (IBM)
@ -81,8 +81,8 @@ This software uses components from the following developers:
* NUnit (http://www.nunit.org) * NUnit (http://www.nunit.org)
* AGEIA Inc. (PhysX) * AGEIA Inc. (PhysX)
* Russel L. Smith (ODE) * Russel L. Smith (ODE)
* Prebuild ( http://sourceforge.net/projects/dnpb/ ) * Prebuild (http://sourceforge.net/projects/dnpb/)
* LibSecondLife ( http://www.libsecondlife.org/wiki/Main_Page ) * LibSecondLife (http://www.libsecondlife.org/wiki/Main_Page)
In addition, we would like to thank: In addition, we would like to thank:

View File

@ -53,9 +53,12 @@ namespace OpenSim.Data.MySQL
/// </summary> /// </summary>
override public void Initialise(string connect) override public void Initialise(string connect)
{ {
if (connect != String.Empty) { if (connect != String.Empty)
{
database = new MySQLManager(connect); database = new MySQLManager(connect);
} else { }
else
{
m_log.Warn("Using deprecated mysql_connection.ini. Please update database_connect in GridServer_Config.xml and we'll use that instead"); m_log.Warn("Using deprecated mysql_connection.ini. Please update database_connect in GridServer_Config.xml and we'll use that instead");
IniFile GridDataMySqlFile = new IniFile("mysql_connection.ini"); IniFile GridDataMySqlFile = new IniFile("mysql_connection.ini");
string settingHostname = GridDataMySqlFile.ParseFileReadValue("hostname"); string settingHostname = GridDataMySqlFile.ParseFileReadValue("hostname");
@ -65,9 +68,8 @@ namespace OpenSim.Data.MySQL
string settingPooling = GridDataMySqlFile.ParseFileReadValue("pooling"); string settingPooling = GridDataMySqlFile.ParseFileReadValue("pooling");
string settingPort = GridDataMySqlFile.ParseFileReadValue("port"); string settingPort = GridDataMySqlFile.ParseFileReadValue("port");
database = database = new MySQLManager(settingHostname, settingDatabase, settingUsername, settingPassword,
new MySQLManager(settingHostname, settingDatabase, settingUsername, settingPassword, settingPooling, settingPooling, settingPort);
settingPort);
} }
TestTables(); TestTables();

View File

@ -50,7 +50,7 @@ namespace OpenSim.Data.MySQL
public void Initialise(string connect) public void Initialise(string connect)
{ {
if(connect != String.Empty) if (connect != String.Empty)
{ {
database = new MySQLManager(connect); database = new MySQLManager(connect);
} }

View File

@ -34,7 +34,7 @@ namespace OpenSim.Data.MySQL
/// An interface to the log database for MySQL /// An interface to the log database for MySQL
/// </summary> /// </summary>
internal class MySQLLogData : ILogData internal class MySQLLogData : ILogData
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
/// <summary> /// <summary>
/// The database manager /// The database manager
@ -46,9 +46,12 @@ namespace OpenSim.Data.MySQL
/// </summary> /// </summary>
public void Initialise(string connect) public void Initialise(string connect)
{ {
if (connect != String.Empty) { if (connect != String.Empty)
{
database = new MySQLManager(connect); database = new MySQLManager(connect);
} else { }
else
{
m_log.Warn("Using deprecated mysql_connection.ini. Please update database_connect in GridServer_Config.xml and we'll use that instead"); m_log.Warn("Using deprecated mysql_connection.ini. Please update database_connect in GridServer_Config.xml and we'll use that instead");
IniFile GridDataMySqlFile = new IniFile("mysql_connection.ini"); IniFile GridDataMySqlFile = new IniFile("mysql_connection.ini");
@ -59,9 +62,8 @@ namespace OpenSim.Data.MySQL
string settingPooling = GridDataMySqlFile.ParseFileReadValue("pooling"); string settingPooling = GridDataMySqlFile.ParseFileReadValue("pooling");
string settingPort = GridDataMySqlFile.ParseFileReadValue("port"); string settingPort = GridDataMySqlFile.ParseFileReadValue("port");
database = database = new MySQLManager(settingHostname, settingDatabase, settingUsername, settingPassword,
new MySQLManager(settingHostname, settingDatabase, settingUsername, settingPassword, settingPooling, settingPooling, settingPort);
settingPort);
} }
} }

View File

@ -255,28 +255,28 @@ namespace OpenSim.Framework.Communications
remote_client.SendNameReply(uuid, names[0], names[1]); remote_client.SendNameReply(uuid, names[0], names[1]);
} }
} }
} }
private string[] doUUIDNameRequest(LLUUID uuid) private string[] doUUIDNameRequest(LLUUID uuid)
{ {
string[] returnstring = new string[0]; string[] returnstring = new string[0];
bool doLookup = false; bool doLookup = false;
lock (m_nameRequestCache) lock (m_nameRequestCache)
{ {
if (m_nameRequestCache.ContainsKey(uuid)) if (m_nameRequestCache.ContainsKey(uuid))
{ {
returnstring = m_nameRequestCache[uuid]; returnstring = m_nameRequestCache[uuid];
} }
else else
{ {
// we don't want to lock the dictionary while we're doing the lookup // we don't want to lock the dictionary while we're doing the lookup
doLookup = true; doLookup = true;
} }
} }
if (doLookup) { if (doLookup) {
UserProfileData profileData = m_userService.GetUserProfile(uuid); UserProfileData profileData = m_userService.GetUserProfile(uuid);
if (profileData != null) if (profileData != null)
@ -293,7 +293,7 @@ namespace OpenSim.Framework.Communications
} }
} }
return returnstring; return returnstring;
} }
public bool UUIDNameCachedTest(LLUUID uuid) public bool UUIDNameCachedTest(LLUUID uuid)
@ -311,7 +311,7 @@ namespace OpenSim.Framework.Communications
string lastname = names[1]; string lastname = names[1];
return firstname + " " + lastname; return firstname + " " + lastname;
} }
return "(hippos)"; return "(hippos)";
} }

View File

@ -84,7 +84,8 @@ namespace OpenSim.Framework.Servers
string handlerKey = GetHandlerKey(httpMethod, path); string handlerKey = GetHandlerKey(httpMethod, path);
lock(m_streamHandlers) { lock (m_streamHandlers)
{
if (!m_streamHandlers.ContainsKey(handlerKey)) if (!m_streamHandlers.ContainsKey(handlerKey))
{ {
//m_log.DebugFormat("[BASE HTTP SERVER]: Adding handler key {0}", handlerKey); //m_log.DebugFormat("[BASE HTTP SERVER]: Adding handler key {0}", handlerKey);
@ -100,7 +101,8 @@ namespace OpenSim.Framework.Servers
public bool AddXmlRPCHandler(string method, XmlRpcMethod handler) public bool AddXmlRPCHandler(string method, XmlRpcMethod handler)
{ {
lock(m_rpcHandlers) { lock (m_rpcHandlers)
{
if (!m_rpcHandlers.ContainsKey(method)) if (!m_rpcHandlers.ContainsKey(method))
{ {
m_rpcHandlers.Add(method, handler); m_rpcHandlers.Add(method, handler);
@ -114,7 +116,8 @@ namespace OpenSim.Framework.Servers
public bool AddHTTPHandler(string method, GenericHTTPMethod handler) public bool AddHTTPHandler(string method, GenericHTTPMethod handler)
{ {
lock(m_HTTPHandlers) { lock (m_HTTPHandlers)
{
if (!m_HTTPHandlers.ContainsKey(method)) if (!m_HTTPHandlers.ContainsKey(method))
{ {
m_HTTPHandlers.Add(method, handler); m_HTTPHandlers.Add(method, handler);
@ -132,7 +135,8 @@ namespace OpenSim.Framework.Servers
public bool AddAgentHandler(string agent, IHttpAgentHandler handler) public bool AddAgentHandler(string agent, IHttpAgentHandler handler)
{ {
lock(m_agentHandlers) { lock (m_agentHandlers)
{
if (!m_agentHandlers.ContainsKey(agent)) if (!m_agentHandlers.ContainsKey(agent))
{ {
m_agentHandlers.Add(agent, handler); m_agentHandlers.Add(agent, handler);
@ -171,7 +175,8 @@ namespace OpenSim.Framework.Servers
if (TryGetAgentHandler(request, response, out agentHandler)) if (TryGetAgentHandler(request, response, out agentHandler))
{ {
if (HandleAgentRequest(agentHandler, request, response)) { if (HandleAgentRequest(agentHandler, request, response))
{
m_log.DebugFormat("[HTTP-AGENT] Handler located for {0}", request.UserAgent); m_log.DebugFormat("[HTTP-AGENT] Handler located for {0}", request.UserAgent);
return; return;
} }

View File

@ -47,7 +47,7 @@ namespace OpenSim.Framework.Servers
public static OSHttpRequestPump[] Pumps(OSHttpServer server, int poolSize) public static OSHttpRequestPump[] Pumps(OSHttpServer server, int poolSize)
{ {
OSHttpRequestPump[] pumps = new OSHttpRequestPump[poolSize]; OSHttpRequestPump[] pumps = new OSHttpRequestPump[poolSize];
for(int i = 0; i < pumps.Length; i++) for (int i = 0; i < pumps.Length; i++)
{ {
pumps[i]._httpServer = server; pumps[i]._httpServer = server;
} }

View File

@ -58,7 +58,7 @@ namespace OpenSim.Framework.Servers
// thread identifier // thread identifier
protected string _engineId; protected string _engineId;
public string EngineID public string EngineID
{ {
get { return _engineId; } get { return _engineId; }
} }
@ -86,7 +86,7 @@ namespace OpenSim.Framework.Servers
/// <summary> /// <summary>
/// Instantiate an HTTPS server. /// Instantiate an HTTPS server.
/// </summary> /// </summary>
public OSHttpServer(IPAddress address, int port, X509Certificate certificate, int poolSize) : public OSHttpServer(IPAddress address, int port, X509Certificate certificate, int poolSize) :
this(address, port, poolSize) this(address, port, poolSize)
{ {
_engineId = String.Format("OSHttpServer [HTTPS:{0}/ps:{1}]", port, poolSize); _engineId = String.Format("OSHttpServer [HTTPS:{0}/ps:{1}]", port, poolSize);
@ -96,7 +96,7 @@ namespace OpenSim.Framework.Servers
/// <summary> /// <summary>
/// Start the HTTP server engine. /// Start the HTTP server engine.
/// </summary> /// </summary>
public void Start() public void Start()
{ {
_engine = new Thread(new ThreadStart(Engine)); _engine = new Thread(new ThreadStart(Engine));
_engine.Name = _engineId; _engine.Name = _engineId;
@ -107,13 +107,13 @@ namespace OpenSim.Framework.Servers
/// <summary> /// <summary>
/// </summary> /// </summary>
private void Engine() private void Engine()
{ {
while (true) while (true)
{ {
// do stuff // do stuff
} }
} }
} }
} }

View File

@ -47,7 +47,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
{ {
public delegate bool PacketMethod(IClientAPI simClient, Packet packet); public delegate bool PacketMethod(IClientAPI simClient, Packet packet);
public class PacketDupeLimiter public class PacketDupeLimiter
{ {
public PacketType pktype; public PacketType pktype;
public int timeIn; public int timeIn;
@ -658,7 +658,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
{ {
// this will normally trigger at least one packet (ping response) // this will normally trigger at least one packet (ping response)
SendStartPingCheck(0); SendStartPingCheck(0);
} }
} }
else else
@ -666,7 +665,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
// Something received in the meantime - we can reset the counters // Something received in the meantime - we can reset the counters
m_probesWithNoIngressPackets = 0; m_probesWithNoIngressPackets = 0;
m_lastPacketsReceived = m_packetsReceived; m_lastPacketsReceived = m_packetsReceived;
} }
//SendPacketStats(); //SendPacketStats();
} }
@ -726,7 +724,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
// Previously ClientView.API partial class // Previously ClientView.API partial class
public event Action<IClientAPI> OnLogout; public event Action<IClientAPI> OnLogout;
public event ObjectPermissions OnObjectPermissions; public event ObjectPermissions OnObjectPermissions;
public event Action<IClientAPI> OnConnectionClosed; public event Action<IClientAPI> OnConnectionClosed;
public event ViewerEffectEventHandler OnViewerEffect; public event ViewerEffectEventHandler OnViewerEffect;
public event ImprovedInstantMessage OnInstantMessage; public event ImprovedInstantMessage OnInstantMessage;
@ -788,12 +785,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public event DisconnectUser OnDisconnectUser; public event DisconnectUser OnDisconnectUser;
public event RequestAvatarProperties OnRequestAvatarProperties; public event RequestAvatarProperties OnRequestAvatarProperties;
public event SetAlwaysRun OnSetAlwaysRun; public event SetAlwaysRun OnSetAlwaysRun;
public event FetchInventory OnAgentDataUpdateRequest; public event FetchInventory OnAgentDataUpdateRequest;
public event FetchInventory OnUserInfoRequest; public event FetchInventory OnUserInfoRequest;
public event TeleportLocationRequest OnSetStartLocationRequest; public event TeleportLocationRequest OnSetStartLocationRequest;
public event UpdateAvatarProperties OnUpdateAvatarProperties; public event UpdateAvatarProperties OnUpdateAvatarProperties;
public event CreateNewInventoryItem OnCreateNewInventoryItem; public event CreateNewInventoryItem OnCreateNewInventoryItem;
public event CreateInventoryFolder OnCreateNewInventoryFolder; public event CreateInventoryFolder OnCreateNewInventoryFolder;
public event UpdateInventoryFolder OnUpdateInventoryFolder; public event UpdateInventoryFolder OnUpdateInventoryFolder;
@ -816,9 +811,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public event MoveTaskInventory OnMoveTaskItem; public event MoveTaskInventory OnMoveTaskItem;
public event RemoveTaskInventory OnRemoveTaskItem; public event RemoveTaskInventory OnRemoveTaskItem;
public event RequestAsset OnRequestAsset; public event RequestAsset OnRequestAsset;
public event UUIDNameRequest OnNameFromUUIDRequest; public event UUIDNameRequest OnNameFromUUIDRequest;
public event ParcelAccessListRequest OnParcelAccessListRequest; public event ParcelAccessListRequest OnParcelAccessListRequest;
public event ParcelAccessListUpdateRequest OnParcelAccessListUpdateRequest; public event ParcelAccessListUpdateRequest OnParcelAccessListUpdateRequest;
public event ParcelPropertiesRequest OnParcelPropertiesRequest; public event ParcelPropertiesRequest OnParcelPropertiesRequest;
@ -829,36 +822,24 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest; public event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest;
public event ParcelAbandonRequest OnParcelAbandonRequest; public event ParcelAbandonRequest OnParcelAbandonRequest;
public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest; public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest;
public event RegionInfoRequest OnRegionInfoRequest; public event RegionInfoRequest OnRegionInfoRequest;
public event EstateCovenantRequest OnEstateCovenantRequest; public event EstateCovenantRequest OnEstateCovenantRequest;
public event FriendActionDelegate OnApproveFriendRequest; public event FriendActionDelegate OnApproveFriendRequest;
public event FriendActionDelegate OnDenyFriendRequest; public event FriendActionDelegate OnDenyFriendRequest;
public event FriendshipTermination OnTerminateFriendship; public event FriendshipTermination OnTerminateFriendship;
public event PacketStats OnPacketStats; public event PacketStats OnPacketStats;
public event MoneyTransferRequest OnMoneyTransferRequest; public event MoneyTransferRequest OnMoneyTransferRequest;
public event EconomyDataRequest OnEconomyDataRequest; public event EconomyDataRequest OnEconomyDataRequest;
public event MoneyBalanceRequest OnMoneyBalanceRequest; public event MoneyBalanceRequest OnMoneyBalanceRequest;
public event ParcelBuy OnParcelBuy; public event ParcelBuy OnParcelBuy;
public event UUIDNameRequest OnTeleportHomeRequest; public event UUIDNameRequest OnTeleportHomeRequest;
public event UUIDNameRequest OnUUIDGroupNameRequest; public event UUIDNameRequest OnUUIDGroupNameRequest;
public event ScriptAnswer OnScriptAnswer; public event ScriptAnswer OnScriptAnswer;
public event RequestPayPrice OnRequestPayPrice; public event RequestPayPrice OnRequestPayPrice;
public event AgentSit OnUndo; public event AgentSit OnUndo;
public event ForceReleaseControls OnForceReleaseControls; public event ForceReleaseControls OnForceReleaseControls;
public event GodLandStatRequest OnLandStatRequest; public event GodLandStatRequest OnLandStatRequest;
public event RequestObjectPropertiesFamily OnObjectGroupRequest; public event RequestObjectPropertiesFamily OnObjectGroupRequest;
public event DetailedEstateDataRequest OnDetailedEstateDataRequest; public event DetailedEstateDataRequest OnDetailedEstateDataRequest;
public event SetEstateFlagsRequest OnSetEstateFlagsRequest; public event SetEstateFlagsRequest OnSetEstateFlagsRequest;
public event SetEstateTerrainBaseTexture OnSetEstateTerrainBaseTexture; public event SetEstateTerrainBaseTexture OnSetEstateTerrainBaseTexture;
@ -1049,7 +1030,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
//} //}
} }
private void DoSendLayerData(object o) private void DoSendLayerData(object o)
{ {
float[] map = (float[])o; float[] map = (float[])o;
@ -1083,7 +1063,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
OutPacket(layerpack, ThrottleOutPacketType.Land); OutPacket(layerpack, ThrottleOutPacketType.Land);
} }
/// <summary> /// <summary>
/// Sends a specified patch to a client /// Sends a specified patch to a client
/// </summary> /// </summary>
@ -1449,7 +1428,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
if (i < MAX_ITEMS_PER_PACKET) if (i < MAX_ITEMS_PER_PACKET)
{ {
OutPacket(descend, ThrottleOutPacketType.Asset); OutPacket(descend, ThrottleOutPacketType.Asset);
} }
} }
@ -1748,7 +1726,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
economyData.Info.TeleportPriceExponent = TeleportPriceExponent; economyData.Info.TeleportPriceExponent = TeleportPriceExponent;
economyData.Header.Reliable = true; economyData.Header.Reliable = true;
OutPacket(economyData, ThrottleOutPacketType.Unknown); OutPacket(economyData, ThrottleOutPacketType.Unknown);
} }
public void SendAvatarPickerReply(AvatarPickerReplyAgentDataArgs AgentData, List<AvatarPickerReplyDataArgs> Data) public void SendAvatarPickerReply(AvatarPickerReplyAgentDataArgs AgentData, List<AvatarPickerReplyDataArgs> Data)
@ -2209,7 +2186,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
ObjectUpdatePacket outPacket = (ObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ObjectUpdate); ObjectUpdatePacket outPacket = (ObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ObjectUpdate);
// TODO: don't create new blocks if recycling an old packet // TODO: don't create new blocks if recycling an old packet
outPacket.RegionData.RegionHandle = regionHandle; outPacket.RegionData.RegionHandle = regionHandle;
@ -2256,8 +2233,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
outPacket.ObjectData[0].OwnerID = ownerID; outPacket.ObjectData[0].OwnerID = ownerID;
outPacket.ObjectData[0].Gain = (float) SoundGain; outPacket.ObjectData[0].Gain = (float) SoundGain;
outPacket.ObjectData[0].Radius = (float) SoundRadius; outPacket.ObjectData[0].Radius = (float) SoundRadius;
outPacket.ObjectData[0].Flags = SoundFlags; outPacket.ObjectData[0].Flags = SoundFlags;
byte[] pb = pos.GetBytes(); byte[] pb = pos.GetBytes();
Array.Copy(pb, 0, outPacket.ObjectData[0].ObjectData, 0, pb.Length); Array.Copy(pb, 0, outPacket.ObjectData[0].ObjectData, 0, pb.Length);
@ -2318,6 +2294,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
terse.Header.Zerocoded = true; terse.Header.Zerocoded = true;
OutPacket(terse, ThrottleOutPacketType.Task); OutPacket(terse, ThrottleOutPacketType.Task);
} }
public void SendAssetUploadCompleteMessage(sbyte AssetType, bool Success, LLUUID AssetFullID) public void SendAssetUploadCompleteMessage(sbyte AssetType, bool Success, LLUUID AssetFullID)
{ {
AssetUploadCompletePacket newPack = new AssetUploadCompletePacket(); AssetUploadCompletePacket newPack = new AssetUploadCompletePacket();
@ -2327,6 +2304,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
newPack.Header.Zerocoded = true; newPack.Header.Zerocoded = true;
OutPacket(newPack, ThrottleOutPacketType.Asset); OutPacket(newPack, ThrottleOutPacketType.Asset);
} }
public void SendXferRequest(ulong XferID, short AssetType, LLUUID vFileID, byte FilePath, byte[] FileName) public void SendXferRequest(ulong XferID, short AssetType, LLUUID vFileID, byte FilePath, byte[] FileName)
{ {
RequestXferPacket newPack = new RequestXferPacket(); RequestXferPacket newPack = new RequestXferPacket();
@ -2337,8 +2315,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
newPack.XferID.Filename = FileName; newPack.XferID.Filename = FileName;
newPack.Header.Zerocoded = true; newPack.Header.Zerocoded = true;
OutPacket(newPack, ThrottleOutPacketType.Asset); OutPacket(newPack, ThrottleOutPacketType.Asset);
} }
public void SendConfirmXfer(ulong xferID, uint PacketID) public void SendConfirmXfer(ulong xferID, uint PacketID)
{ {
ConfirmXferPacketPacket newPack = new ConfirmXferPacketPacket(); ConfirmXferPacketPacket newPack = new ConfirmXferPacketPacket();
@ -2347,6 +2325,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
newPack.Header.Zerocoded = true; newPack.Header.Zerocoded = true;
OutPacket(newPack, ThrottleOutPacketType.Asset); OutPacket(newPack, ThrottleOutPacketType.Asset);
} }
public void SendImagePart(ushort numParts, LLUUID ImageUUID, uint ImageSize, byte[] ImageData, byte imageCodec) public void SendImagePart(ushort numParts, LLUUID ImageUUID, uint ImageSize, byte[] ImageData, byte imageCodec)
{ {
ImageDataPacket im = new ImageDataPacket(); ImageDataPacket im = new ImageDataPacket();
@ -2362,6 +2341,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
im.Header.Zerocoded = true; im.Header.Zerocoded = true;
OutPacket(im, ThrottleOutPacketType.Texture); OutPacket(im, ThrottleOutPacketType.Texture);
} }
public void SendShutdownConnectionNotice() public void SendShutdownConnectionNotice()
{ {
OutPacket(PacketPool.Instance.GetPacket(PacketType.DisableSimulator), ThrottleOutPacketType.Unknown); OutPacket(PacketPool.Instance.GetPacket(PacketType.DisableSimulator), ThrottleOutPacketType.Unknown);
@ -2449,125 +2429,126 @@ namespace OpenSim.Region.ClientStack.LindenUDP
#endregion #endregion
#region Estate Data Sending Methods #region Estate Data Sending Methods
private bool convertParamStringToBool(byte[] field)
private bool convertParamStringToBool(byte[] field)
{
string s = Helpers.FieldToUTF8String(field);
if (s == "1" || s.ToLower() == "y" || s.ToLower() == "yes" || s.ToLower() == "t" || s.ToLower() == "true")
{ {
string s = Helpers.FieldToUTF8String(field); return true;
if (s == "1" || s.ToLower() == "y" || s.ToLower() == "yes" || s.ToLower() == "t" || s.ToLower() == "true") }
{ return false;
return true; }
}
return false; public void sendEstateManagersList(LLUUID invoice, LLUUID[] EstateManagers, uint estateID)
{
EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket();
packet.AgentData.TransactionID = LLUUID.Random();
packet.AgentData.AgentID = this.AgentId;
packet.AgentData.SessionID = this.SessionId;
packet.MethodData.Invoice = invoice;
packet.MethodData.Method = Helpers.StringToField("setaccess");
EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[6 + EstateManagers.Length];
for (int i = 0; i < (6 + EstateManagers.Length); i++)
{
returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock();
}
int j = 0;
returnblock[j].Parameter = Helpers.StringToField(estateID.ToString()); j++;
returnblock[j].Parameter = Helpers.StringToField(((int)Constants.EstateAccessCodex.EstateManagers).ToString()); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField(EstateManagers.Length.ToString()); j++;
for (int i = 0; i < EstateManagers.Length; i++)
{
returnblock[j].Parameter = EstateManagers[i].GetBytes(); j++;
}
packet.ParamList = returnblock;
packet.Header.Reliable = false;
this.OutPacket(packet, ThrottleOutPacketType.Task);
}
public void sendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args)
{
RegionInfoPacket rinfopack = new RegionInfoPacket();
RegionInfoPacket.RegionInfoBlock rinfoblk = new RegionInfoPacket.RegionInfoBlock();
rinfopack.AgentData.AgentID = this.AgentId;
rinfopack.AgentData.SessionID = this.SessionId;
rinfoblk.BillableFactor =args.billableFactor;
rinfoblk.EstateID = args.estateID;
rinfoblk.MaxAgents = args.maxAgents;
rinfoblk.ObjectBonusFactor =args.objectBonusFactor;
rinfoblk.ParentEstateID = args.parentEstateID;
rinfoblk.PricePerMeter = args.pricePerMeter;
rinfoblk.RedirectGridX = args.redirectGridX;
rinfoblk.RedirectGridY = args.redirectGridY;
rinfoblk.RegionFlags = args.regionFlags;
rinfoblk.SimAccess = args.simAccess;
rinfoblk.SunHour = args.sunHour;
rinfoblk.TerrainLowerLimit = args.terrainLowerLimit;
rinfoblk.TerrainRaiseLimit = args.terrainRaiseLimit;
rinfoblk.UseEstateSun = args.useEstateSun;
rinfoblk.WaterHeight = args.waterHeight;
rinfoblk.SimName = Helpers.StringToField(args.simName);
rinfopack.RegionInfo = rinfoblk;
this.OutPacket(rinfopack, ThrottleOutPacketType.Task);
}
public void sendEstateCovenantInformation()
{
EstateCovenantReplyPacket einfopack = new EstateCovenantReplyPacket();
EstateCovenantReplyPacket.DataBlock edata = new EstateCovenantReplyPacket.DataBlock();
edata.CovenantID = m_scene.RegionInfo.CovenantID;
edata.CovenantTimestamp = 0;
edata.EstateOwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
edata.EstateName =
Helpers.StringToField(m_scene.RegionInfo.MasterAvatarFirstName + " " + m_scene.RegionInfo.MasterAvatarLastName);
einfopack.Data = edata;
this.OutPacket(einfopack, ThrottleOutPacketType.Task);
}
public void sendDetailedEstateData(LLUUID invoice, string estateName, uint estateID)
{
EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket();
packet.MethodData.Invoice = invoice;
packet.AgentData.TransactionID = LLUUID.Random();
packet.MethodData.Method = Helpers.StringToField("estateupdateinfo");
EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[9];
for (int i = 0; i < 9; i++)
{
returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock();
} }
public void sendEstateManagersList(LLUUID invoice, LLUUID[] EstateManagers, uint estateID) //Sending Estate Settings
{ returnblock[0].Parameter = Helpers.StringToField(estateName);
EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket(); returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.MasterAvatarAssignedUUID.ToString());
packet.AgentData.TransactionID = LLUUID.Random(); returnblock[2].Parameter = Helpers.StringToField(estateID.ToString());
packet.AgentData.AgentID = this.AgentId;
packet.AgentData.SessionID = this.SessionId;
packet.MethodData.Invoice = invoice;
packet.MethodData.Method = Helpers.StringToField("setaccess");
EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[6 + EstateManagers.Length]; // TODO: Resolve Magic numbers here
returnblock[3].Parameter = Helpers.StringToField("269516800");
returnblock[4].Parameter = Helpers.StringToField("0");
returnblock[5].Parameter = Helpers.StringToField("1");
returnblock[6].Parameter = Helpers.StringToField(m_scene.RegionInfo.RegionID.ToString());
returnblock[7].Parameter = Helpers.StringToField("1160895077");
returnblock[8].Parameter = Helpers.StringToField("1");
for (int i = 0; i < (6 + EstateManagers.Length); i++) packet.ParamList = returnblock;
{ packet.Header.Reliable = false;
returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock(); //System.Console.WriteLine("[ESTATE]: SIM--->" + packet.ToString());
} this.OutPacket(packet, ThrottleOutPacketType.Task);
int j = 0; }
returnblock[j].Parameter = Helpers.StringToField(estateID.ToString()); j++;
returnblock[j].Parameter = Helpers.StringToField(((int)Constants.EstateAccessCodex.EstateManagers).ToString()); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField("0"); j++;
returnblock[j].Parameter = Helpers.StringToField(EstateManagers.Length.ToString()); j++;
for (int i = 0; i < EstateManagers.Length; i++)
{
returnblock[j].Parameter = EstateManagers[i].GetBytes(); j++;
}
packet.ParamList = returnblock;
packet.Header.Reliable = false;
this.OutPacket(packet, ThrottleOutPacketType.Task);
}
public void sendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args)
{
RegionInfoPacket rinfopack = new RegionInfoPacket();
RegionInfoPacket.RegionInfoBlock rinfoblk = new RegionInfoPacket.RegionInfoBlock();
rinfopack.AgentData.AgentID = this.AgentId;
rinfopack.AgentData.SessionID = this.SessionId;
rinfoblk.BillableFactor =args.billableFactor;
rinfoblk.EstateID = args.estateID;
rinfoblk.MaxAgents = args.maxAgents;
rinfoblk.ObjectBonusFactor =args.objectBonusFactor;
rinfoblk.ParentEstateID = args.parentEstateID;
rinfoblk.PricePerMeter = args.pricePerMeter;
rinfoblk.RedirectGridX = args.redirectGridX;
rinfoblk.RedirectGridY = args.redirectGridY;
rinfoblk.RegionFlags = args.regionFlags;
rinfoblk.SimAccess = args.simAccess;
rinfoblk.SunHour = args.sunHour;
rinfoblk.TerrainLowerLimit = args.terrainLowerLimit;
rinfoblk.TerrainRaiseLimit = args.terrainRaiseLimit;
rinfoblk.UseEstateSun = args.useEstateSun;
rinfoblk.WaterHeight = args.waterHeight;
rinfoblk.SimName = Helpers.StringToField(args.simName);
rinfopack.RegionInfo = rinfoblk;
this.OutPacket(rinfopack, ThrottleOutPacketType.Task);
}
public void sendEstateCovenantInformation()
{
EstateCovenantReplyPacket einfopack = new EstateCovenantReplyPacket();
EstateCovenantReplyPacket.DataBlock edata = new EstateCovenantReplyPacket.DataBlock();
edata.CovenantID = m_scene.RegionInfo.CovenantID;
edata.CovenantTimestamp = 0;
edata.EstateOwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
edata.EstateName =
Helpers.StringToField(m_scene.RegionInfo.MasterAvatarFirstName + " " + m_scene.RegionInfo.MasterAvatarLastName);
einfopack.Data = edata;
this.OutPacket(einfopack, ThrottleOutPacketType.Task);
}
public void sendDetailedEstateData(LLUUID invoice, string estateName, uint estateID)
{
EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket();
packet.MethodData.Invoice = invoice;
packet.AgentData.TransactionID = LLUUID.Random();
packet.MethodData.Method = Helpers.StringToField("estateupdateinfo");
EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[9];
for (int i = 0; i < 9; i++)
{
returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock();
}
//Sending Estate Settings
returnblock[0].Parameter = Helpers.StringToField(estateName);
returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.MasterAvatarAssignedUUID.ToString());
returnblock[2].Parameter = Helpers.StringToField(estateID.ToString());
// TODO: Resolve Magic numbers here
returnblock[3].Parameter = Helpers.StringToField("269516800");
returnblock[4].Parameter = Helpers.StringToField("0");
returnblock[5].Parameter = Helpers.StringToField("1");
returnblock[6].Parameter = Helpers.StringToField(m_scene.RegionInfo.RegionID.ToString());
returnblock[7].Parameter = Helpers.StringToField("1160895077");
returnblock[8].Parameter = Helpers.StringToField("1");
packet.ParamList = returnblock;
packet.Header.Reliable = false;
//System.Console.WriteLine("[ESTATE]: SIM--->" + packet.ToString());
this.OutPacket(packet, ThrottleOutPacketType.Task);
}
#endregion #endregion
#region Land Data Sending Methods #region Land Data Sending Methods
public void sendLandParcelOverlay(byte[] data, int sequence_id) public void sendLandParcelOverlay(byte[] data, int sequence_id)
{ {
@ -2578,6 +2559,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
packet.Header.Zerocoded = true; packet.Header.Zerocoded = true;
this.OutPacket(packet, ThrottleOutPacketType.Task); this.OutPacket(packet, ThrottleOutPacketType.Task);
} }
public void sendLandProperties(IClientAPI remote_client,int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int simObjectCapacity, uint regionFlags) public void sendLandProperties(IClientAPI remote_client,int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int simObjectCapacity, uint regionFlags)
{ {
ParcelPropertiesPacket updatePacket = (ParcelPropertiesPacket) PacketPool.Instance.GetPacket(PacketType.ParcelProperties); ParcelPropertiesPacket updatePacket = (ParcelPropertiesPacket) PacketPool.Instance.GetPacket(PacketType.ParcelProperties);
@ -2743,8 +2725,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
notifyCount = 32; notifyCount = 32;
} }
ParcelObjectOwnersReplyPacket.DataBlock[] dataBlock ParcelObjectOwnersReplyPacket.DataBlock[] dataBlock
= new ParcelObjectOwnersReplyPacket.DataBlock[notifyCount]; = new ParcelObjectOwnersReplyPacket.DataBlock[notifyCount];
@ -2773,9 +2753,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
#endregion #endregion
#region Helper Methods #region Helper Methods
protected ImprovedTerseObjectUpdatePacket.ObjectDataBlock CreateAvatarImprovedBlock(uint localID, LLVector3 pos, protected ImprovedTerseObjectUpdatePacket.ObjectDataBlock CreateAvatarImprovedBlock(uint localID, LLVector3 pos,
LLVector3 velocity, LLVector3 velocity,
LLQuaternion rotation) LLQuaternion rotation)
{ {
@ -2958,7 +2938,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
bytes[i++] = (byte)((rvelz >> 8) % 256); bytes[i++] = (byte)((rvelz >> 8) % 256);
dat.Data = bytes; dat.Data = bytes;
return dat; return dat;
} }
@ -3034,7 +3013,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
objdata.ObjectData[47] = 63; objdata.ObjectData[47] = 63;
} }
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
@ -3165,13 +3143,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
false); false);
} }
return true; return true;
} }
else else
{ {
return false; return false;
} }
} }
private bool HandleUUIDGroupNameRequest(IClientAPI sender, Packet Pack) private bool HandleUUIDGroupNameRequest(IClientAPI sender, Packet Pack)
@ -3205,8 +3181,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
return true; return true;
} }
private bool HandleViewerEffect(IClientAPI sender, Packet Pack) private bool HandleViewerEffect(IClientAPI sender, Packet Pack)
{ {
ViewerEffectPacket viewer = (ViewerEffectPacket)Pack; ViewerEffectPacket viewer = (ViewerEffectPacket)Pack;
@ -3346,7 +3320,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition; handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition;
if (handlerUpdatePrimSinglePosition != null) if (handlerUpdatePrimSinglePosition != null)
{ {
// Console.WriteLine("new movement position is " + pos.X + " , " + pos.Y + " , " + pos.Z); // Console.WriteLine("new movement position is " + pos.X + " , " + pos.Y + " , " + pos.Z);
handlerUpdatePrimSinglePosition(localId, pos1, this); handlerUpdatePrimSinglePosition(localId, pos1, this);
} }
@ -3357,7 +3330,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handlerUpdatePrimSingleRotation = OnUpdatePrimSingleRotation; handlerUpdatePrimSingleRotation = OnUpdatePrimSingleRotation;
if (handlerUpdatePrimSingleRotation != null) if (handlerUpdatePrimSingleRotation != null)
{ {
//Console.WriteLine("new tab rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W); //Console.WriteLine("new tab rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W);
handlerUpdatePrimSingleRotation(localId, rot1, this); handlerUpdatePrimSingleRotation(localId, rot1, this);
} }
@ -3368,7 +3340,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handlerUpdatePrimSingleRotation = OnUpdatePrimSingleRotation; handlerUpdatePrimSingleRotation = OnUpdatePrimSingleRotation;
if (handlerUpdatePrimSingleRotation != null) if (handlerUpdatePrimSingleRotation != null)
{ {
//Console.WriteLine("new mouse rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W); //Console.WriteLine("new mouse rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W);
handlerUpdatePrimSingleRotation(localId, rot2, this); handlerUpdatePrimSingleRotation(localId, rot2, this);
} }
@ -3381,11 +3352,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handlerUpdatePrimScale = OnUpdatePrimScale; handlerUpdatePrimScale = OnUpdatePrimScale;
if (handlerUpdatePrimScale != null) if (handlerUpdatePrimScale != null)
{ {
// Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z); // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z);
handlerUpdatePrimScale(localId, scale1, this); handlerUpdatePrimScale(localId, scale1, this);
handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition; handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition;
if (handlerUpdatePrimSinglePosition != null) if (handlerUpdatePrimSinglePosition != null)
{ {
@ -3405,40 +3374,34 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
case 10: case 10:
LLQuaternion rot3 = new LLQuaternion(block.Data, 0, true); LLQuaternion rot3 = new LLQuaternion(block.Data, 0, true);
handlerUpdatePrimRotation = OnUpdatePrimGroupRotation; handlerUpdatePrimRotation = OnUpdatePrimGroupRotation;
if (handlerUpdatePrimRotation != null) if (handlerUpdatePrimRotation != null)
{ {
// Console.WriteLine("new rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W); // Console.WriteLine("new rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W);
handlerUpdatePrimRotation(localId, rot3, this); handlerUpdatePrimRotation(localId, rot3, this);
} }
break; break;
case 11: case 11:
LLVector3 pos3 = new LLVector3(block.Data, 0); LLVector3 pos3 = new LLVector3(block.Data, 0);
LLQuaternion rot4 = new LLQuaternion(block.Data, 12, true); LLQuaternion rot4 = new LLQuaternion(block.Data, 12, true);
handlerUpdatePrimGroupRotation = OnUpdatePrimGroupMouseRotation; handlerUpdatePrimGroupRotation = OnUpdatePrimGroupMouseRotation;
if (handlerUpdatePrimGroupRotation != null) if (handlerUpdatePrimGroupRotation != null)
{ {
//Console.WriteLine("new rotation position is " + pos.X + " , " + pos.Y + " , " + pos.Z); //Console.WriteLine("new rotation position is " + pos.X + " , " + pos.Y + " , " + pos.Z);
// Console.WriteLine("new rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W); // Console.WriteLine("new rotation is " + rot.X + " , " + rot.Y + " , " + rot.Z + " , " + rot.W);
handlerUpdatePrimGroupRotation(localId, pos3, rot4, this); handlerUpdatePrimGroupRotation(localId, pos3, rot4, this);
} }
break; break;
case 13: case 13:
LLVector3 scale2 = new LLVector3(block.Data, 12); LLVector3 scale2 = new LLVector3(block.Data, 12);
LLVector3 pos4 = new LLVector3(block.Data, 0); LLVector3 pos4 = new LLVector3(block.Data, 0);
handlerUpdatePrimScale = OnUpdatePrimScale; handlerUpdatePrimScale = OnUpdatePrimScale;
if (handlerUpdatePrimScale != null) if (handlerUpdatePrimScale != null)
{ {
//Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z); //Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z);
handlerUpdatePrimScale(localId, scale2, this); handlerUpdatePrimScale(localId, scale2, this);
@ -3464,7 +3427,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
if (handlerUpdateVector != null) if (handlerUpdateVector != null)
{ {
handlerUpdateVector(localId, pos5, this); handlerUpdateVector(localId, pos5, this);
} }
} }
@ -3841,11 +3803,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
protected void AckTimer_Elapsed(object sender, ElapsedEventArgs ea) protected void AckTimer_Elapsed(object sender, ElapsedEventArgs ea)
{ {
SendAcks(); SendAcks();
ResendUnacked(); ResendUnacked();
SendPacketStats(); SendPacketStats();
} }
protected void SendPacketStats() protected void SendPacketStats()
@ -3858,6 +3818,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
m_lastPacketsSentSentToScene = m_packetsSent; m_lastPacketsSentSentToScene = m_packetsSent;
} }
} }
protected void ClearOldPacketDupeTracking() protected void ClearOldPacketDupeTracking()
{ {
lock (m_dupeLimiter) lock (m_dupeLimiter)
@ -3865,7 +3826,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
List<uint> toEliminate = new List<uint>(); List<uint> toEliminate = new List<uint>();
try try
{ {
foreach (uint seq in m_dupeLimiter.Keys) foreach (uint seq in m_dupeLimiter.Keys)
{ {
PacketDupeLimiter pkdata = null; PacketDupeLimiter pkdata = null;
@ -3913,7 +3873,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
private bool m_packetProcessingEnabled = true; private bool m_packetProcessingEnabled = true;
public bool IsActive { public bool IsActive
{
get { return m_packetProcessingEnabled; } get { return m_packetProcessingEnabled; }
set { m_packetProcessingEnabled = value; } set { m_packetProcessingEnabled = value; }
} }
@ -3945,10 +3906,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
else else
{ {
switch (Pack.Type) switch (Pack.Type)
{ {
#region Scene/Avatar #region Scene/Avatar
case PacketType.AvatarPropertiesRequest: case PacketType.AvatarPropertiesRequest:
AvatarPropertiesRequestPacket avatarProperties = (AvatarPropertiesRequestPacket)Pack; AvatarPropertiesRequestPacket avatarProperties = (AvatarPropertiesRequestPacket)Pack;
@ -4425,9 +4385,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
#region Objects/m_sceneObjects #region Objects/m_sceneObjects
case PacketType.ObjectLink: case PacketType.ObjectLink:
ObjectLinkPacket link = (ObjectLinkPacket)Pack; ObjectLinkPacket link = (ObjectLinkPacket)Pack;
@ -4816,9 +4776,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
#region Inventory/Asset/Other related packets #region Inventory/Asset/Other related packets
case PacketType.RequestImage: case PacketType.RequestImage:
RequestImagePacket imageRequest = (RequestImagePacket)Pack; RequestImagePacket imageRequest = (RequestImagePacket)Pack;
@ -5346,8 +5306,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
case PacketType.UUIDNameRequest: case PacketType.UUIDNameRequest:
UUIDNameRequestPacket incoming = (UUIDNameRequestPacket)Pack; UUIDNameRequestPacket incoming = (UUIDNameRequestPacket)Pack;
@ -5361,7 +5320,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#region Parcel related packets #region Parcel related packets
case PacketType.ParcelAccessListRequest: case PacketType.ParcelAccessListRequest:
ParcelAccessListRequestPacket requestPacket = (ParcelAccessListRequestPacket)Pack; ParcelAccessListRequestPacket requestPacket = (ParcelAccessListRequestPacket)Pack;
@ -5518,14 +5477,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
#region Estate Packets #region Estate Packets
case PacketType.EstateOwnerMessage: case PacketType.EstateOwnerMessage:
EstateOwnerMessagePacket messagePacket = (EstateOwnerMessagePacket)Pack; EstateOwnerMessagePacket messagePacket = (EstateOwnerMessagePacket)Pack;
switch (Helpers.FieldToUTF8String(messagePacket.MethodData.Method)) switch (Helpers.FieldToUTF8String(messagePacket.MethodData.Method))
{ {
case "getinfo": case "getinfo":
@ -5772,9 +5730,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
#region GodPackets #region GodPackets
case PacketType.RequestGodlikePowers: case PacketType.RequestGodlikePowers:
RequestGodlikePowersPacket rglpPack = (RequestGodlikePowersPacket)Pack; RequestGodlikePowersPacket rglpPack = (RequestGodlikePowersPacket)Pack;
@ -5822,9 +5780,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
//OutPacket(kupack, ThrottleOutPacketType.Task); //OutPacket(kupack, ThrottleOutPacketType.Task);
break; break;
#endregion #endregion
#region Economy/Transaction Packets #region Economy/Transaction Packets
case PacketType.MoneyBalanceRequest: case PacketType.MoneyBalanceRequest:
MoneyBalanceRequestPacket moneybalancerequestpacket = (MoneyBalanceRequestPacket)Pack; MoneyBalanceRequestPacket moneybalancerequestpacket = (MoneyBalanceRequestPacket)Pack;
@ -5856,9 +5814,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
break; break;
#endregion #endregion
#region unimplemented handlers #region unimplemented handlers
case PacketType.StartPingCheck: case PacketType.StartPingCheck:
// Send the client the ping response back // Send the client the ping response back
@ -5935,7 +5893,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString()); m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString());
break; break;
#endregion #endregion
} }
} }

View File

@ -398,8 +398,10 @@ namespace OpenSim.Region.Communications.OGS1
public RegionInfo RequestClosestRegion(string regionName) public RegionInfo RequestClosestRegion(string regionName)
{ {
foreach (RegionInfo ri in m_remoteRegionInfoCache.Values) foreach (RegionInfo ri in m_remoteRegionInfoCache.Values)
if(ri.RegionName == regionName) {
if (ri.RegionName == regionName)
return ri; return ri;
}
RegionInfo regionInfo = null; RegionInfo regionInfo = null;
try try
@ -441,7 +443,7 @@ namespace OpenSim.Region.Communications.OGS1
regionInfo.RegionID = new LLUUID((string) responseData["region_UUID"]); regionInfo.RegionID = new LLUUID((string) responseData["region_UUID"]);
regionInfo.RegionName = (string) responseData["region_name"]; regionInfo.RegionName = (string) responseData["region_name"];
if(!m_remoteRegionInfoCache.ContainsKey(regionInfo.RegionHandle)) if (!m_remoteRegionInfoCache.ContainsKey(regionInfo.RegionHandle))
m_remoteRegionInfoCache.Add(regionInfo.RegionHandle, regionInfo); m_remoteRegionInfoCache.Add(regionInfo.RegionHandle, regionInfo);
} }
catch (WebException) catch (WebException)

View File

@ -1,66 +1,66 @@
/* /*
* 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.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
using OpenSim.Region.Environment.Scenes; using OpenSim.Region.Environment.Scenes;
using System.Reflection; using System.Reflection;
using log4net; using log4net;
namespace OpenSim.Region.Environment.Modules.World.Archiver namespace OpenSim.Region.Environment.Modules.World.Archiver
{ {
/// <summary> /// <summary>
/// Handles an individual archive read request /// Handles an individual archive read request
/// </summary> /// </summary>
public class ArchiveReadRequest public class ArchiveReadRequest
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private Scene m_scene; private Scene m_scene;
private string m_loadPath; private string m_loadPath;
public ArchiveReadRequest(Scene scene, string loadPath) public ArchiveReadRequest(Scene scene, string loadPath)
{ {
m_scene = scene; m_scene = scene;
m_loadPath = loadPath; m_loadPath = loadPath;
DearchiveRegion(); DearchiveRegion();
} }
protected void DearchiveRegion() protected void DearchiveRegion()
{ {
TarArchiveReader archive = new TarArchiveReader(m_loadPath); TarArchiveReader archive = new TarArchiveReader(m_loadPath);
// Just test for now by reading first file // Just test for now by reading first file
string filePath = "ERROR"; string filePath = "ERROR";
byte[] data = archive.Read(out filePath); byte[] data = archive.Read(out filePath);
m_log.DebugFormat("[ARCHIVER]: Successfully read {0} ({1} bytes) from archive {2}", filePath, data.Length, m_loadPath); m_log.DebugFormat("[ARCHIVER]: Successfully read {0} ({1} bytes) from archive {2}", filePath, data.Length, m_loadPath);
archive.Close(); archive.Close();
} }
} }
} }

View File

@ -1,108 +1,108 @@
/* /*
* 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.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
using System; using System;
using System.IO; using System.IO;
//using System.Reflection; //using System.Reflection;
//using log4net; //using log4net;
namespace OpenSim.Region.Environment.Modules.World.Archiver namespace OpenSim.Region.Environment.Modules.World.Archiver
{ {
/// <summary> /// <summary>
/// Temporary code to do the bare minimum required to read a tar archive for our purposes /// Temporary code to do the bare minimum required to read a tar archive for our purposes
/// </summary> /// </summary>
public class TarArchiveReader public class TarArchiveReader
{ {
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
protected static System.Text.ASCIIEncoding m_asciiEncoding = new System.Text.ASCIIEncoding(); protected static System.Text.ASCIIEncoding m_asciiEncoding = new System.Text.ASCIIEncoding();
/// <summary> /// <summary>
/// Binary reader for the underlying stream /// Binary reader for the underlying stream
/// </summary> /// </summary>
protected BinaryReader m_br; protected BinaryReader m_br;
public TarArchiveReader(string archivePath) public TarArchiveReader(string archivePath)
{ {
m_br = new BinaryReader(new FileStream(archivePath, FileMode.Open)); m_br = new BinaryReader(new FileStream(archivePath, FileMode.Open));
} }
public byte[] Read(out string filePath) public byte[] Read(out string filePath)
{ {
TarHeader header = ReadHeader(); TarHeader header = ReadHeader();
filePath = header.FilePath; filePath = header.FilePath;
return m_br.ReadBytes(header.FileSize); return m_br.ReadBytes(header.FileSize);
} }
/// <summary> /// <summary>
/// Read the next 512 byte chunk of data as a tar header. /// Read the next 512 byte chunk of data as a tar header.
/// </summary> /// </summary>
/// <returns>A tar header struct</returns> /// <returns>A tar header struct</returns>
protected TarHeader ReadHeader() protected TarHeader ReadHeader()
{ {
TarHeader tarHeader = new TarHeader(); TarHeader tarHeader = new TarHeader();
byte[] header = m_br.ReadBytes(512); byte[] header = m_br.ReadBytes(512);
tarHeader.FilePath = m_asciiEncoding.GetString(header, 0, 100); tarHeader.FilePath = m_asciiEncoding.GetString(header, 0, 100);
tarHeader.FileSize = ConvertOctalBytesToDecimal(header, 124, 11); tarHeader.FileSize = ConvertOctalBytesToDecimal(header, 124, 11);
return tarHeader; return tarHeader;
} }
public void Close() public void Close()
{ {
m_br.Close(); m_br.Close();
} }
/// <summary> /// <summary>
/// Convert octal bytes to a decimal representation /// Convert octal bytes to a decimal representation
/// </summary> /// </summary>
/// <param name="bytes"></param> /// <param name="bytes"></param>
/// <returns></returns> /// <returns></returns>
public static int ConvertOctalBytesToDecimal(byte[] bytes, int startIndex, int count) public static int ConvertOctalBytesToDecimal(byte[] bytes, int startIndex, int count)
{ {
string oString = m_asciiEncoding.GetString(bytes, startIndex, count); string oString = m_asciiEncoding.GetString(bytes, startIndex, count);
int d = 0; int d = 0;
foreach (char c in oString) foreach (char c in oString)
{ {
d <<= 3; d <<= 3;
d |= c - '0'; d |= c - '0';
} }
return d; return d;
} }
} }
public struct TarHeader public struct TarHeader
{ {
public string FilePath; public string FilePath;
public int FileSize; public int FileSize;
} }
} }

View File

@ -357,7 +357,7 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
else else
{ {
lsri.OwnerName = "waiting"; lsri.OwnerName = "waiting";
lock(uuidNameLookupList) lock (uuidNameLookupList)
uuidNameLookupList.Add(sog.OwnerID); uuidNameLookupList.Add(sog.OwnerID);
} }

View File

@ -104,7 +104,7 @@ namespace OpenSim.Region.Environment.Modules
private ulong CurrentTime private ulong CurrentTime
{ {
get { get {
return (ulong)(((System.DateTime.Now.Ticks) - TicksToEpoch + TicksOffset)/10000000); return (ulong)(((System.DateTime.Now.Ticks) - TicksToEpoch + TicksOffset)/10000000);
} }
} }
@ -346,7 +346,7 @@ namespace OpenSim.Region.Environment.Modules
{ {
if (m_rootAgents.ContainsKey(avatar.UUID)) if (m_rootAgents.ContainsKey(avatar.UUID))
{ {
m_rootAgents[avatar.UUID] = avatar.RegionHandle; m_rootAgents[avatar.UUID] = avatar.RegionHandle;
} }
else else
{ {

View File

@ -192,7 +192,7 @@ namespace OpenSim.Region.Environment.Scenes
public void LoadCurrentSceneFromXml2(string filename) public void LoadCurrentSceneFromXml2(string filename)
{ {
CurrentOrFirstScene.LoadPrimsFromXml2(filename); CurrentOrFirstScene.LoadPrimsFromXml2(filename);
} }
/// <summary> /// <summary>
/// Save the current scene to an OpenSimulator archive. This archive will eventually include the prim's assets /// Save the current scene to an OpenSimulator archive. This archive will eventually include the prim's assets

View File

@ -62,7 +62,6 @@ namespace OpenSim.Region.Physics.Meshing
public float pathTaperX = 0.0f; public float pathTaperX = 0.0f;
public float pathTaperY = 0.0f; public float pathTaperY = 0.0f;
public Mesh Extrude(Mesh m) public Mesh Extrude(Mesh m)
{ {
startParameter = float.MinValue; startParameter = float.MinValue;
@ -129,8 +128,8 @@ namespace OpenSim.Region.Physics.Meshing
v.Y = v2.Y; v.Y = v2.Y;
v.Z = v2.Z; v.Z = v2.Z;
} }
} }
foreach (Vertex v in workingMinus.vertices) foreach (Vertex v in workingMinus.vertices)
{ {
if (v == null) if (v == null)
@ -159,10 +158,8 @@ namespace OpenSim.Region.Physics.Meshing
} }
result.Append(workingMinus); result.Append(workingMinus);
result.Append(workingMiddle); result.Append(workingMiddle);
int iLastNull = 0; int iLastNull = 0;
for (int i = 0; i < workingMiddle.vertices.Count; i++) for (int i = 0; i < workingMiddle.vertices.Count; i++)
@ -228,6 +225,7 @@ namespace OpenSim.Region.Physics.Meshing
new Triangle(workingPlus.vertices[iNext], workingMiddle.vertices[i], workingMiddle.vertices[iNext]); new Triangle(workingPlus.vertices[iNext], workingMiddle.vertices[i], workingMiddle.vertices[iNext]);
result.Add(tSide); result.Add(tSide);
} }
if (twistMid != 0) if (twistMid != 0)
{ {
foreach (Vertex v in result.vertices) foreach (Vertex v in result.vertices)
@ -245,6 +243,7 @@ namespace OpenSim.Region.Physics.Meshing
} }
return result; return result;
} }
public Mesh ExtrudeCircularPath(Mesh m) public Mesh ExtrudeCircularPath(Mesh m)
{ {
//startParameter = float.MinValue; //startParameter = float.MinValue;
@ -294,8 +293,6 @@ namespace OpenSim.Region.Physics.Meshing
//System.Console.WriteLine("taperBotFactorX: " + taperBotFactorX.ToString() + " taperBotFactorY: " + taperBotFactorY.ToString() //System.Console.WriteLine("taperBotFactorX: " + taperBotFactorX.ToString() + " taperBotFactorY: " + taperBotFactorY.ToString()
// + " taperTopFactorX: " + taperTopFactorX.ToString() + " taperTopFactorY: " + taperTopFactorY.ToString()); // + " taperTopFactorX: " + taperTopFactorX.ToString() + " taperTopFactorY: " + taperTopFactorY.ToString());
do do
{ {
float percentOfPath = 1.0f; float percentOfPath = 1.0f;
@ -328,10 +325,6 @@ namespace OpenSim.Region.Physics.Meshing
//System.Console.WriteLine("Extruder: radius: " + radius.ToString() + " radiusScale: " + radiusScale.ToString()); //System.Console.WriteLine("Extruder: radius: " + radius.ToString() + " radiusScale: " + radiusScale.ToString());
float twist = twistBot + (twistTotal * (float)percentOfPath); float twist = twistBot + (twistTotal * (float)percentOfPath);
float zOffset = (float)(System.Math.Sin(angle) * (0.5f - yPathScale)) * radiusScale; float zOffset = (float)(System.Math.Sin(angle) * (0.5f - yPathScale)) * radiusScale;
@ -404,13 +397,6 @@ namespace OpenSim.Region.Physics.Meshing
} }
lastLayer = newLayer; lastLayer = newLayer;
// calc next angle // calc next angle
if (angle >= endAngle) if (angle >= endAngle)
@ -421,10 +407,7 @@ namespace OpenSim.Region.Physics.Meshing
if (angle > endAngle) if (angle > endAngle)
angle = endAngle; angle = endAngle;
} }
} } while (!done);
while (!done);
// scale the mesh to the desired size // scale the mesh to the desired size
float xScale = size.X; float xScale = size.X;
@ -432,12 +415,14 @@ namespace OpenSim.Region.Physics.Meshing
float zScale = size.Z; float zScale = size.Z;
foreach (Vertex v in result.vertices) foreach (Vertex v in result.vertices)
{
if (v != null) if (v != null)
{ {
v.X *= xScale; v.X *= xScale;
v.Y *= yScale; v.Y *= yScale;
v.Z *= zScale; v.Z *= zScale;
} }
}
return result; return result;
} }

View File

@ -255,7 +255,7 @@ namespace OpenSim.Region.Physics.Meshing
holeHull.AddVertex(IPM); holeHull.AddVertex(IPM);
} }
//if (hshape == HollowShape.Circle && pbs.PathCurve == (byte)Extrusion.Straight) //if (hshape == HollowShape.Circle && pbs.PathCurve == (byte)Extrusion.Straight)
if ( hshape == HollowShape.Circle ) if (hshape == HollowShape.Circle)
{ {
float hollowFactorF = (float)fhollowFactor / (float)50000; float hollowFactorF = (float)fhollowFactor / (float)50000;
@ -1346,7 +1346,7 @@ namespace OpenSim.Region.Physics.Meshing
// || (primShape.ProfileCurve & 0x07) == (byte) ProfileShape.Square) // || (primShape.ProfileCurve & 0x07) == (byte) ProfileShape.Square)
{ {
//Console.WriteLine("Meshmerizer thinks " + primName + " is a TORUS"); //Console.WriteLine("Meshmerizer thinks " + primName + " is a TORUS");
if ( hollowShape == HollowShape.Same ) if (hollowShape == HollowShape.Same)
hollowShape = HollowShape.Circle; hollowShape = HollowShape.Circle;
// build the profile shape // build the profile shape
@ -1381,7 +1381,7 @@ namespace OpenSim.Region.Physics.Meshing
else if ((primShape.ProfileCurve & 0x07) == (byte)ProfileShape.Square) // a ring else if ((primShape.ProfileCurve & 0x07) == (byte)ProfileShape.Square) // a ring
{ {
//Console.WriteLine("Meshmerizer thinks " + primName + " is a TUBE"); //Console.WriteLine("Meshmerizer thinks " + primName + " is a TUBE");
if ( hollowShape == HollowShape.Same ) if (hollowShape == HollowShape.Same)
hollowShape = HollowShape.Square; hollowShape = HollowShape.Square;
outerHull.AddVertex(new Vertex(+0.5f, +0.5f, 0.0f)); outerHull.AddVertex(new Vertex(+0.5f, +0.5f, 0.0f));
@ -1393,7 +1393,7 @@ namespace OpenSim.Region.Physics.Meshing
else if ((primShape.ProfileCurve & 0x07) == (byte)ProfileShape.EquilateralTriangle) else if ((primShape.ProfileCurve & 0x07) == (byte)ProfileShape.EquilateralTriangle)
{ {
//Console.WriteLine("Meshmerizer thinks " + primName + " is a RING"); //Console.WriteLine("Meshmerizer thinks " + primName + " is a RING");
if ( hollowShape == HollowShape.Same ) if (hollowShape == HollowShape.Same)
hollowShape = HollowShape.Triangle; hollowShape = HollowShape.Triangle;
outerHull.AddVertex(new Vertex(+0.255f, -0.375f, 0.0f)); outerHull.AddVertex(new Vertex(+0.255f, -0.375f, 0.0f));

View File

@ -1432,7 +1432,7 @@ namespace OpenSim.Region.ScriptEngine.Common
m_host.Sound = key; m_host.Sound = key;
} }
// else try to locate the name in inventory of object. found returns key, // else try to locate the name in inventory of object. found returns key,
// not found returns LLUUID.Zero // not found returns LLUUID.Zero
else else
{ {
m_host.Sound = InventoryKey(sound.ToString()); m_host.Sound = InventoryKey(sound.ToString());
@ -1477,7 +1477,7 @@ namespace OpenSim.Region.ScriptEngine.Common
m_host.Sound = LLUUID.Zero; m_host.Sound = LLUUID.Zero;
m_host.SoundGain = 0; m_host.SoundGain = 0;
m_host.SoundFlags = 0; m_host.SoundFlags = 0;
m_host.SoundRadius = 0; m_host.SoundRadius = 0;
m_host.SendFullUpdateToAllClients(); m_host.SendFullUpdateToAllClients();
@ -3871,7 +3871,7 @@ namespace OpenSim.Region.ScriptEngine.Common
{ {
// Finally got to the first line of the notecard // Finally got to the first line of the notecard
// now find the end of the notecard text delimited by }<LF> // now find the end of the notecard text delimited by }<LF>
// parse the lines, delimited by <LF> // parse the lines, delimited by <LF>
notecardIndex = dataString.IndexOf("\n", notecardIndex); notecardIndex = dataString.IndexOf("\n", notecardIndex);
notecardIndex++; // get past delimiter notecardIndex++; // get past delimiter
@ -5627,10 +5627,10 @@ namespace OpenSim.Region.ScriptEngine.Common
RegionInfo info = m_ScriptEngine.World.RequestClosestRegion(simulator); RegionInfo info = m_ScriptEngine.World.RequestClosestRegion(simulator);
switch(data) switch (data)
{ {
case 5: // DATA_SIM_POS case 5: // DATA_SIM_POS
if(info == null) if (info == null)
return LLUUID.Zero.ToString(); return LLUUID.Zero.ToString();
reply = new LSL_Types.Vector3( reply = new LSL_Types.Vector3(
info.RegionLocX * Constants.RegionSize, info.RegionLocX * Constants.RegionSize,
@ -5638,18 +5638,18 @@ namespace OpenSim.Region.ScriptEngine.Common
0).ToString(); 0).ToString();
break; break;
case 6: // DATA_SIM_STATUS case 6: // DATA_SIM_STATUS
if(info != null) if (info != null)
reply = "up"; // Duh! reply = "up"; // Duh!
else else
reply = "unknown"; reply = "unknown";
break; break;
case 7: // DATA_SIM_RATING case 7: // DATA_SIM_RATING
if(info == null) if (info == null)
return LLUUID.Zero.ToString(); return LLUUID.Zero.ToString();
int access = (int)info.EstateSettings.simAccess; int access = (int)info.EstateSettings.simAccess;
if(access == 21) if (access == 21)
reply = "MATURE"; reply = "MATURE";
else if(access == 13) else if (access == 13)
reply = "MATURE"; reply = "MATURE";
else else
reply = "UNKNOWN"; reply = "UNKNOWN";

View File

@ -59,9 +59,9 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
public LLUUID RegisterRequest(uint localID, LLUUID itemID, public LLUUID RegisterRequest(uint localID, LLUUID itemID,
string identifier) string identifier)
{ {
lock(DataserverRequests) lock (DataserverRequests)
{ {
if(DataserverRequests.ContainsKey(identifier)) if (DataserverRequests.ContainsKey(identifier))
return LLUUID.Zero; return LLUUID.Zero;
DataserverRequest ds = new DataserverRequest(); DataserverRequest ds = new DataserverRequest();
@ -84,9 +84,9 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
{ {
DataserverRequest ds; DataserverRequest ds;
lock(DataserverRequests) lock (DataserverRequests)
{ {
if(!DataserverRequests.ContainsKey(identifier)) if (!DataserverRequests.ContainsKey(identifier))
return; return;
ds=DataserverRequests[identifier]; ds=DataserverRequests[identifier];
@ -101,11 +101,11 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
public void RemoveEvents(uint localID, LLUUID itemID) public void RemoveEvents(uint localID, LLUUID itemID)
{ {
lock(DataserverRequests) lock (DataserverRequests)
{ {
foreach (DataserverRequest ds in new List<DataserverRequest>(DataserverRequests.Values)) foreach (DataserverRequest ds in new List<DataserverRequest>(DataserverRequests.Values))
{ {
if(ds.itemID == itemID) if (ds.itemID == itemID)
DataserverRequests.Remove(ds.handle); DataserverRequests.Remove(ds.handle);
} }
} }
@ -113,11 +113,11 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
public void ExpireRequests() public void ExpireRequests()
{ {
lock(DataserverRequests) lock (DataserverRequests)
{ {
foreach (DataserverRequest ds in new List<DataserverRequest>(DataserverRequests.Values)) foreach (DataserverRequest ds in new List<DataserverRequest>(DataserverRequests.Values))
{ {
if(ds.startTime > DateTime.Now.AddSeconds(30)) if (ds.startTime > DateTime.Now.AddSeconds(30))
DataserverRequests.Remove(ds.handle); DataserverRequests.Remove(ds.handle);
} }
} }

View File

@ -57,7 +57,7 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
bool handled = false; bool handled = false;
// Request must be taken out of the queue in case there is no handler, otherwise we loop infinitely // Request must be taken out of the queue in case there is no handler, otherwise we loop infinitely
xmlrpc.RemoveCompletedRequest(rInfo.GetMessageID()); xmlrpc.RemoveCompletedRequest(rInfo.GetMessageID());
// And since the xmlrpc request queue is actually shared among all regions on the simulator, we need // And since the xmlrpc request queue is actually shared among all regions on the simulator, we need
// to look in each one for the appropriate handler // to look in each one for the appropriate handler
@ -96,9 +96,9 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
// Request must be taken out of the queue in case there is no handler, otherwise we loop infinitely // Request must be taken out of the queue in case there is no handler, otherwise we loop infinitely
xmlrpc.RemoveCompletedSRDRequest(srdInfo.GetReqID()); xmlrpc.RemoveCompletedSRDRequest(srdInfo.GetReqID());
// And this is another shared queue... so we check each of the script engines for a handler // And this is another shared queue... so we check each of the script engines for a handler
foreach (ScriptEngine sman in ScriptEngine.ScriptEngines) foreach (ScriptEngine sman in ScriptEngine.ScriptEngines)
{ {
if (sman.m_ScriptManager.GetScript(srdInfo.m_localID,srdInfo.m_itemID) != null) { if (sman.m_ScriptManager.GetScript(srdInfo.m_localID,srdInfo.m_itemID) != null) {
@ -116,7 +116,7 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase.AsyncCommandPlugin
handled = true; handled = true;
} }
} }
if (! handled) if (! handled)
{ {
Console.WriteLine("Unhandled xml_srdrequest: " + srdInfo.GetReqID()); Console.WriteLine("Unhandled xml_srdrequest: " + srdInfo.GetReqID());

View File

@ -87,9 +87,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
string quote = String.Empty; string quote = String.Empty;
bool last_was_escape = false; bool last_was_escape = false;
int quote_replaced_count = 0; int quote_replaced_count = 0;
string removefwnoncomments = nonCommentFwsl.Replace(Script, "\"\";"); string removefwnoncomments = nonCommentFwsl.Replace(Script, "\"\";");
string removecomments = conelinecomments.Replace(removefwnoncomments, ""); string removecomments = conelinecomments.Replace(removefwnoncomments, "");
removecomments = cstylecomments.Replace(removecomments, ""); removecomments = cstylecomments.Replace(removecomments, "");
string[] localscript = removecomments.Split('"'); string[] localscript = removecomments.Split('"');
@ -121,9 +121,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
// ignores alpha.x alpha.y, alpha.z for refering to vector components // ignores alpha.x alpha.y, alpha.z for refering to vector components
Match SecurityM; Match SecurityM;
SecurityM = Regex.Match(checkscript, @"([a-zA-Z])\.(?:[a-wA-Z]|[a-zA-Z][a-zA-Z])", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline); SecurityM = Regex.Match(checkscript, @"([a-zA-Z])\.(?:[a-wA-Z]|[a-zA-Z][a-zA-Z])", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
if (SecurityM.Success) if (SecurityM.Success)
throw new Exception("CS0103: 'The . symbol cannot be used in LSL except in float values or vector components'. Detected around: " + SecurityM.Captures[0].Value); throw new Exception("CS0103: 'The . symbol cannot be used in LSL except in float values or vector components'. Detected around: " + SecurityM.Captures[0].Value);
SecurityM = Regex.Match(checkscript, @"typeof\s", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline); SecurityM = Regex.Match(checkscript, @"typeof\s", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);