Commit Graph

1735 Commits (4ab479bf58652573606fa08136e182260b180a0b)

Author SHA1 Message Date
John Hurliman 1bd9202f24 * Simplified the prioritization packet creation code to reduce CPU usage and increase throughput. Apologies to Jim for hacking on your code while it's only halfway done, I'll take responsibility for the manual merge
* Changed LLUDP to use its own MTU value of 1400 instead of the 1200 value pulled from the currently shipped libomv
2009-10-16 14:17:13 -07:00
John Hurliman e776dfb1d7 * Changing the "clean dropped attachments" MySQL command to a using statement inside a try/catch. This statement times out for me very frequently
* More verbose logging when zerocoding fails on an outbound packet
2009-10-16 13:22:45 -07:00
John Hurliman a18489dc9b * Change appearance packets from State to Task. This will hopefully fix the cloud issues
* Changed the throttling logic to obey the requested client bandwidth limit but also share bandwidth between some of the categories to improve throughput on high prim or heavily trafficked regions
2009-10-16 12:20:01 -07:00
John Hurliman 06354a093d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 10:09:19 -07:00
Melanie 0487092d15 Thank you, Fly man, for plumbing the AvatarInterestsUpdate packet 2009-10-16 13:28:40 +01:00
John Hurliman 4b75353cbf Object update prioritization by Jim Greensky of Intel Labs, part one. This implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon 2009-10-15 16:35:27 -07:00
jjgreens df2d5a460f Replaced the update lists with a priority queue implementation in LLClientView
Replaced the update lists with a priority queue implementation in LLClientView.
The priority queues are based on the MinHeap implementation also included in
this commit within the OpneSim.Framework namespace.  Initially setup to exactly
mimic the behavior beofre the change which was a first come first serve queue.
2009-10-15 15:52:53 -07:00
John Hurliman d44b50ee46 * Removed some of the redundant broadcast functions in Scene and SceneGraph so it is clear who/what the broadcast is going to each time
* Removed two redundant parameters from SceneObjectPart
* Changed some code in terse update sending that was meant to work with references to work with value types (since Vector3 and Quaternion are structs)
* Committing a preview of a new method for sending object updates efficiently (all commented out for now)
2009-10-15 15:25:02 -07:00
Teravus Ovares (Dan Olivares) 6d3d985511 * Request from lkalif to have the Sim send a coarselocationupdate for each avatar in the sim, including yourself.
* Apparently the LLClientView should have been doing this previously..      Also fixed the 'You' on the index block..   so the client doesn't display an extra green dot.
* Thanks lkalif for bringing it to our attention.
2009-10-15 02:01:29 -04:00
John Hurliman 06990b074c Allow the LLUDP server to run in either synchronous or asynchronous mode with a config setting, defaulting to synchronous mode 2009-10-14 16:48:27 -07:00
John Hurliman 82012ec4e3 * Clean up the SetThrottle() code and add a maxBurstRate parameter to allow more tweaking in the future 2009-10-14 16:21:48 -07:00
John Hurliman 1e9e9df0b3 * Switched to a plain lock for the ClientManager collections and protected the TryGetValues with try/catch instead of a lock
* Added ClientManager.ForEachSync() for operations that need to run synchronously, such as "show connections"
2009-10-14 14:25:58 -07:00
John Hurliman c033477d2f * Read scene_throttle_bps from the config file and use it
* Minor formatting cleanup
2009-10-14 11:52:48 -07:00
John Hurliman 4b5a2f8c02 Merge branch 'htb-throttle' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-14 11:44:17 -07:00
John Hurliman 0d2e6463d7 * Minimized the number of times textures are pulled off the priority queue
* OnQueueEmpty is still called async, but will not be called for a given category if the previous callback for that category is still running. This is the most balanced behavior I could find, and seems to work well
* Added support for the old [ClientStack.LindenUDP] settings (including setting the receive buffer size) and added the new token bucket and global throttle settings
* Added the AssetLoaderEnabled config variable to optionally disable loading assets from XML every startup. This gives a dramatic improvement in startup times for those who don't need the functionality every startup
2009-10-14 11:43:31 -07:00
Melanie d83ace0d3b Merge branch 'master' into htb-throttle 2009-10-14 05:10:43 +01:00
John Hurliman 4135b0c4dc * Split Task category into Task and State
* Crude prioritization hack
2009-10-13 19:45:38 -07:00
John Hurliman e8c1e69a0d * Copied LocklessQueue.cs into OpenSim.Framework and added the .Count property and .Clear() method
* Changed the way the QueueEmpty callback is fired. It will be fired asynchronously as soon as an empty queue is detected (this can happen immediately following a dequeue), and will not be fired again until at least one packet is dequeued from that queue. This will give callbacks advanced notice of an empty queue and prevent callbacks from stacking up while the queue is empty
* Added LLUDPClient.IsConnected checks in several places to prevent unwanted network activity after a client disconnects
* Prevent LLClientView.Close() from being called twice every disconnect
* Removed the packet resend limit and improved the client timeout check
2009-10-13 18:56:54 -07:00
John Hurliman dc11643c00 * Consolidated adding / removing ClientManager IClientAPIs to two places in Scene
* Added some missing implementations of IClientAPI.RemoteEndPoint
* Added a ClientManager.Remove(UUID) overload
* Removed a reference to a missing project from prebuild.xml
2009-10-13 17:33:45 -07:00
John Hurliman 395a8680c3 * Fixed a bug where clients were being added to ClientManager twice
* Changed the ClientManager interface to reduce potential errors with duplicate or mismatched keys
* Added IClientAPI.RemoteEndPoint, which can (hopefully) eventually replace IClientAPI.CircuitCode
* Changed the order of operations during client shutdown
2009-10-13 16:53:19 -07:00
John Hurliman 23a334b9f5 * Rewrote ClientManager to remove Lindenisms from OpenSim core, improve performance by removing locks, and replace LLUDPClientCollection
* Removed the confusing (and LL-specific) shutdowncircuit parameter from IClientAPI.Close()
* Updated the LLUDP code to only use ClientManager instead of trying to synchronize ClientManager and m_clients
* Remove clients asynchronously since it is a very slow operation (including a 2000ms sleep)
2009-10-13 14:50:03 -07:00
John Hurliman c893761319 * Unregister event handlers in LLUDPServer when a client logs out and disconnects
* Move ViewerEffect handling to Scene.PacketHandlers
* Removing the unused CloseAllAgents function
* Trimming ClientManager down. This class needs to be reworked to keep LLUDP circuit codes from intruding into the abstract OpenSim core code
2009-10-13 12:50:59 -07:00
John Hurliman f55b282078 Avoid checking m_clients collection twice when a UseCircuitCode packet is received 2009-10-13 11:28:08 -07:00
John Hurliman 82ace481c9 * Broke the circular reference between LLClientView and LLUDPClient. This should speed up garbage collection on the large LLClientView objects, and also prevents handling packets for disconnected clients
* Renamed local LLUDPClient variables to udpClient to avoid naming confusion between LLUDPClient and LLClientView
2009-10-13 11:14:45 -07:00
John Hurliman 3828b3c0e8 * Eliminated unnecessary parameters from LLUDPServer.SendPacketData()
* Changed PrimMesher's Quat.Identity to return <0,0,0,1> instead of <0,0,0,1.1>
2009-10-13 10:38:35 -07:00
Diva Canto e3d5beebfb Better handling of missing assets. 2009-10-13 06:39:11 -07:00
Diva Canto f3d2192cd4 Better handling of missing assets. 2009-10-12 18:30:06 -07:00
Diva Canto 63ed605eba Stop the recurring texture requests for textures that truly don't exist. 2009-10-12 17:36:13 -07:00
Diva Canto c0beeb929e * Fixes http://opensimulator.org/mantis/view.php?id=4225
* Fixes http://opensimulator.org/mantis/view.php?id=3959
* Allows for viewing inventory textures outside home grid
2009-10-12 17:00:01 -07:00
Diva Canto 36dcfd2b80 * Changed logic of enabling LLProxyLoginModule to follow the new style -- true/false on the name, rather than gridmode=true.
* Better error messages on Add/Remove clients.
2009-10-11 10:23:16 -07:00
Diva Canto 3f78ff6ee0 Slight variation on the locking scheme: now locking always, except the ForEach, which gets a copy of the Array. I think the ForEach was the big gorilla. 2009-10-09 19:16:03 -07:00
John Hurliman 29543514e6 * Changed the "Packet exceeded buffer size" log line to debug and include the packet type. This message is normal, but could be evidence of a message marked for zerocoding that probably shouldn't be
* Changing OpenSimUDPBase back to high concurrency. High concurrency mode seems to make other problems happen faster, so it's helpful for working out other bugs and will probably
2009-10-09 16:33:50 -07:00
Diva Canto c8cc14a98b This is to *try* to avoid the exception we are seeing repeatedly:
#13:53:03 - [LLUDPSERVER]: Packet exceeded buffer size during zerocoding. Removing MSG_ZEROCODED flag
#13:53:03 - [Scene]: Failed with exception System.ArgumentException: Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.
#  at System.Buffer.BlockCopy (System.Array src, Int32 srcOffset, System.Array dst, Int32 dstOffset, Int32 count) [0x000b7] in /home/grid/install/mono24/mono-2.4.2.3/mcs/class/corlib/System/Buffer.cs:116
#  at OpenSim.Region.ClientStack.LindenUDP.LLUDPServer.SendPacketData (OpenSim.Region.ClientStack.LindenUDP.LLUDPClient client, System.Byte[] data, Int32 dataLength, PacketType type, Boolean doZerocode, ThrottleOutPacketType category) [0x00060] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs:290
#  at OpenSim.Region.ClientStack.LindenUDP.LLUDPServer.SendPacket (OpenSim.Region.ClientStack.LindenUDP.LLUDPClient client, OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType category, Boolean allowSplitting) [0x00077] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs:265
#  at OpenSim.Region.ClientStack.LindenUDP.LLClientView.OutPacket (OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType throttlePacketType) [0x00000] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs:5244
#  at OpenSim.Region.ClientStack.LindenUDP.LLClientView.SendCoarseLocationUpdate (System.Collections.Generic.List`1 users, System.Collections.Generic.List`1 CoarseLocations) [0x0012a] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs:3424
#  at OpenSim.Region.Framework.Scenes.ScenePresence.SendCoarseLocationsDefault (UUID sceneId, OpenSim.Region.Framework.Scenes.ScenePresence p) [0x000fa] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2536
#  at OpenSim.Region.Framework.Scenes.ScenePresence.SendCoarseLocations () [0x0000d] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2491
#  at OpenSim.Region.Framework.Scenes.ScenePresence.Update () [0x00011] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2404
#  at OpenSim.Region.Framework.Scenes.SceneGraph.UpdateEntities () [0x0001b] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/SceneGraph.cs:164
#  at OpenSim.Region.Framework.Scenes.Scene.Update () [0x000dc] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/Scene.cs:1031  On Region: Wright Plaza
2009-10-09 14:25:01 -07:00
Diva Canto 8231cb2231 Putting this to exactly what it was yesterday around this time, so we can do the 100-ppl load test in WP. We need to carefully play with this code in order to understand all the problems. 2009-10-09 11:32:53 -07:00
Melanie 23586b69a1 Slow down the packet receiving code again after new reports of thread storms. 2009-10-09 12:17:55 +01:00
John Hurliman 76a5cae0b4 Forgot to initialize m_writeLock 2009-10-09 02:18:25 -07:00
John Hurliman a3e31cdeaf Added more debugging output to the "unrecognized source" warning 2009-10-09 02:13:21 -07:00
John Hurliman a5b9971fd7 * Added a lock object for the write functions in LLUDPClientCollection (immutable != concurrent write safety)
* Allow the UDP server to bind to a user-specified port again
* Updated to a newer version of OpenSimUDPBase that streamlines the code even more. This also reintroduces the highly concurrent packet handling which needs more testing
2009-10-09 01:53:06 -07:00
John Hurliman 56a27c37d3 Simplified LLUDPClientCollection from three collections down to one. This will prevent any potential problems from inconsistency between the internal collections 2009-10-08 21:51:53 -07:00
John Hurliman 3a04d706c9 Fear the lockless LLUDP implementation! 2009-10-08 17:34:51 -07:00
Diva Canto 51ea39199b Putting the lock back in TryGetValue. 2009-10-08 15:42:08 -07:00
Melanie a0dd9f4bb4 Fork UDPBase from libOMV into opensim 2009-10-08 22:25:14 +01:00
Diva Canto fc41f2e461 Added guards against the exception reported:
#2009-10-08 12:58:34,462 ERROR - OpenSim.Application [APPLICATION]:
#APPLICATION EXCEPTION DETECTED: System.UnhandledExceptionEventArgs
#
#Exception: System.Exception: Object reference not set to an instance of an object. ---> System.NullReferenceException: Object reference not set to an instance of an object.
#   at OpenSim.Region.ClientStack.LindenUDP.J2KImage.SendFirstPacket(LLClientView client) in c:\Opensim\OpenSim\Region\ClientStack\LindenUDP\J2KImage.cs:line 230
#   at OpenSim.Region.ClientStack.LindenUDP.J2KImage.SendPackets(LLClientView client, Int32 maxpack) in c:\Opensim\OpenSim\Region\ClientStack\LindenUDP\J2KImage.cs:line 84
2009-10-08 07:55:06 -07:00
Diva Canto 68961ec092 One last attempt at tunning the locking/no locking behaviour. The previous one was too lax and made the important login packets fail. 2009-10-07 20:36:24 -07:00
Diva Canto dd80380df5 Another go at the deadlock: not locking TryGetValue, and just catch/ignore exceptions. 2009-10-07 19:45:57 -07:00
Diva Canto c71b3e730d Changed the locking mechanism, because the existing one is causing deadlocks to occur. 2009-10-07 18:54:08 -07:00
Melanie d33b6fef2b replace LLClientView with proper version 2009-10-07 04:37:12 +01:00
Melanie adc208e568 Replace LLClientView on the branch with master. UNCOMPILABLE! 2009-10-07 04:36:36 +01:00
Melanie 9618c196c2 Revert "Merging in diva's locking fixes"
This reverts commit 832cc68513.
2009-10-07 01:44:36 +01:00
John Hurliman 312438f145 Commented noisy debugging about packet splitting 2009-10-06 15:55:39 -07:00
John Hurliman 832cc68513 Merging in diva's locking fixes 2009-10-06 15:54:00 -07:00
Diva Canto e992ca0255 Rewrote parts of the code that were double-locking different objects. This is about half of the code base reviewed. 2009-10-06 15:39:53 -07:00
John Hurliman 9cb5db3621 Applying the real fix (thank you for tracking that MSDN doc down Melanie) 2009-10-06 15:08:09 -07:00
John Hurliman 74fe284a20 Trying Melanie's fix 2009-10-06 14:50:46 -07:00
John Hurliman 25676ac5cf * Added a sanity check for Mono before trying to enumerate over an empty SortedDictionary
* Changed the order of a log line from DotNetEngine so you can tell whether or not it is actually loading
2009-10-06 13:39:10 -07:00
John Hurliman 61b5372153 * Added missing references to prebuild.xml and commented out the LindenUDP tests until a new test harness is written
* Clients are no longer disconnected when a packet handler crashes. We'll see how this works out in practice
* Added documentation and cleanup, getting ready for the first public push
* Deleted an old LLUDP file
2009-10-06 12:13:16 -07:00
John Hurliman fb19d1ca0a * Try/catch around EndInvoke() when Util.FireAndForget() returns to catch exceptions thrown in the async method
* Added packet stats handling to the new LLUDP implementation
* Attempting to avoid a race condition when creating a new LLUDPClient
2009-10-06 10:12:59 -07:00
John Hurliman e7c877407f * Continued work on the new LLUDP implementation. Appears to be functioning, although not everything is reimplemented yet
* Replaced logic in ThreadTracker with a call to System.Diagnostics that does the same thing
* Added Util.StringToBytes256() and Util.StringToBytes1024() to clamp output at byte[256] and byte[1024], respectively
* Fixed formatting for a MySQLAssetData error logging line
2009-10-06 02:38:00 -07:00
John Hurliman 7ddb6fbced Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-05 17:38:27 -07:00
John Hurliman 429a84f390 Beginning work on the new LLUDP implementation 2009-10-05 17:38:14 -07:00
Diva Canto 05c1ec7faf Changed the lock object, to see if this helps at all. Also switched the order of lock and try/catch in RemoveImageFromQueue. 2009-10-05 11:01:45 -07:00
Diva Canto 5b19d5a7b7 Reduced locking. 2009-10-04 14:05:58 -07:00
Diva Canto d93e0a0503 Guarding a line that is sometimes throwing a null pointer exception. 2009-10-04 10:30:21 -07:00
Diva Canto 366bfe17ae Trying to avoid the null pointer exception in J2KImage, RunUpdate. 2009-10-04 07:41:10 -07:00
Melanie 6878b26b0d Merge branch 'diva-textures-osgrid' 2009-10-04 05:49:16 +01:00
John Hurliman 387e9f7a7f * Creates Util.UTF8 and switches some references of Encoding.UTF8 to Util.UTF8 (not all references were switched since not all OpenSim libraries reference OpenSim.Framework)
* Shrinks the largest in-memory object, the LLRAW.HeightmapLookupValue struct (only used for exporting to LLRAW terrain files), to the minimum possible size. This seems to have the odd side effect of cutting the size of the two double[256,256] terrain objects in half. Possibly an alignment optimization?
2009-10-02 18:31:08 -07:00
John Hurliman 332d3eb1bb * Removed code that is no longer used with Melanie's queue callback optimization
* Moved all priority queue access to helper functions to improve reliability and readability
* New version of CSJ2K.dll (from libomv source tree) that fixes a JPEG2000 comment decoding bug
2009-10-02 16:53:35 -07:00
Melanie 36c8d55827 Merge branch 'diva-textures-osgrid' 2009-10-03 00:03:09 +01:00
Melanie 73fa409318 Merge branch 'diva-textures-osgrid' 2009-10-02 23:25:17 +01:00
John Hurliman bdc1345501 * Removed even more unnecessary state variables from J2KImage
* Fixed the incorrect "out of memory?" exception messages and replaced them with useful information
* Cleaned up J2KImage and LLImageManager to conform to coding conventions
2009-10-02 13:08:15 -07:00
John Hurliman 9b342d3e0d * Changed the flush logic to drop packets in non-transactional streams, and to not fire any "put more data in the queues" callbacks
* Minor tweaks to code formatting to make the callback chain for packet queuing easier to follow
2009-10-02 12:00:42 -07:00
Melanie 6def897556 Merge branch 'diva-textures-osgrid' into diva-textures 2009-10-02 19:02:38 +01:00
Melanie 31d8cec0f8 Merge branch 'master' into diva-textures 2009-10-02 08:23:38 +01:00
Melanie 3ba36bb4d8 Restore the missing image handling to the image manager. The missing
image packet crashes Hippo without a message.
2009-10-02 05:49:27 +01:00
Melanie 9a429610e2 Merge branch 'diva-textures-osgrid' into texturetest 2009-10-02 04:19:22 +01:00
Diva Canto 746dad7b74 Locking the priority queue to see if it gets pass that exception. 2009-10-01 20:32:22 -07:00
Melanie 18a744cac1 Change texture sending to be driven by the queue empty event from the
packet queue, rather than a timer
2009-10-02 04:04:14 +01:00
John Hurliman 54ff84050f Removing console debug spew 2009-10-01 18:12:13 -07:00
John Hurliman aaf8fbcef9 Merge branch 'diva-textures-osgrid' of ssh://opensimulator.org/var/git/opensim into diva-textures-osgrid 2009-10-01 17:53:28 -07:00
John Hurliman 6e0c79b8fe * Rewrote LLImageManager to use a real priority queue and hold minimal state
* Rewrote the logic in J2KImage.RunUpdate()
* Added a default avatar texture (I made it myself)
2009-10-01 17:42:13 -07:00
Melanie 54a912bb9c Add a method to determine the count of packets in a throttle 2009-10-01 22:35:57 +01:00
Melanie 5e9da4daab Add OnQueueEmpty event to the packet layers. No user functinality yet 2009-10-01 21:08:17 +01:00
James J Greensky 44776fea72 Fixing LLClientView memory leak
Fixing LLClientView memory leak by disposing of all timers utilized
in LLClientView as they contain references to the callback method.
This required the use of the Terminate and Close infrastructure that
was already in place but was not being utilized.
2009-10-01 04:11:32 +01:00
Jeff Ames 606e831ff5 Formatting cleanup. 2009-10-01 09:38:36 +09:00
John Hurliman 5dfd2643df * Change the signature of the agent set appearance callback to prevent unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes
* Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures
* Properly handle appearance updates that do not have a TextureEntry set
2009-09-30 15:53:03 -07:00
Melanie 041aaaa62c Prevent null data being sent to the decoder 2009-09-30 22:21:22 +01:00
Melanie 400abed271 Add RebakeAvatarTexturesPacket to the client view 2009-09-30 21:33:20 +01:00
Melanie b0c0d6f9d1 Squelch the debug noise from diva's patch 2009-09-30 20:36:20 +01:00
John Hurliman f56dc5fcda Attempting to improve the robustness of texture decoding by always ignoring LayerInfo.End values and creating guessed default layer boundaries on failed decodes Changed a noisy J2K decode log message from Info to Debug Replacing openjpeg-dotnet decoding with managed CSJ2K decoding. Should be much more reliable, faster, and use less memory
* Re-added openjpeg-dotnet files since they are used elsewhere in OpenSim * Updated prebuild.xml with a reference to CSJ2K

* Renamed IJ2KDecoder and J2KDecoder member names to follow standard naming conventions * Removed j2kDecodeCache cruft and replaced it with the OpenSim cache system * Rewrote the default layer boundary algorithm to use percentages instead of an exponent * Switched from an infinite in-memory cache to an expiring cache (10 minute timeout) * Slightly quieted logging errors for failed texture decodes
2009-09-30 19:26:53 +01:00
Diva Canto 4bf47fa592 This releases the texture assets from LLImageManager cache, and re-requests them later if the client asks for them again. Needs more testing in texture-rich sims. 2009-09-30 18:41:41 +01:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Diva Canto 5d09c53a1a Unpacking the mess with OtherRegionUp, so we can have a real cache of the neighbours in the grid service modules. 2009-09-27 10:14:10 -07:00
Adam Frisby 5dc3e560d3 * Makes SimulatorEnable messages 'reliable' and subject to redelivery. 2009-09-23 10:30:18 +10:00
Jeff Ames c41387b864 Formatting cleanup. 2009-09-10 15:57:53 +09:00
Teravus Ovares (Dan Olivares) c605509da3 * Lock timers when Calling Start() and Stop() when the Thread Context is murky. This affects Mono only. 2009-09-09 16:20:19 -04:00
Diva Canto b03eeeb9f6 * Fixes mantis http://opensimulator.org/mantis/view.php?id=4044. Turns out folders were never being removed from trash when they were singled out for purging in trash. They were being removed when Trash was purged as a whole. That behavior is now fixed for the new InventoryService set.
* Removed left-overs from AssetInventoryServer.
2009-08-22 10:24:26 -07:00
Diva Canto 9e64427262 Putting the inventory packets back to ThrottleOutPacketType.Asset, because that didn't work. 2009-08-20 21:56:06 -07:00
Diva Canto 922007443e Changed most of inventory packets to LowPriority, to see if that helps with freezing on searching large inventories. 2009-08-20 21:36:57 -07:00
Diva Canto 118f710a79 Fixed a missing field in SendBulkInventoryFolderUpdate. 2009-08-20 16:18:32 -07:00
Diva Canto d519f1885f Added MoveItems, which is most useful upon viewer-delete inventory operation. Moving a batch of items is a 1-time operation. Made it async anyway, so that the viewer doesn't wait in case the DB layer is dumb (which is the case currently). 2009-08-19 10:56:08 -07:00
Diva Canto c5af39239f A better purge of trash folder. 2009-08-19 00:13:51 -07:00
Diva Canto 124f66bfc2 jhurliman's patch in http://opensimulator.org/mantis/view.php?id=4024 2009-08-18 22:17:47 -07:00
dahlia 465d1095dd Added new OpenSim.ini setting: "client_throttle_max_bps" which overrides user's viewer network throttle settings 2009-08-18 17:06:14 -07:00
Melanie 9ad3e72ae1 Did I say that i don't like git? Remove some stuff that shouldn't have
gone in.
2009-08-17 22:06:51 +01:00
Diva Canto fa8a94577a Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-08-17 05:55:38 -07:00
Melanie 644db1e540 Add System.Xml reference to the console project 2009-08-17 09:40:38 +01:00
Teravus Ovares (Dan Olivares) acc14c472d Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-08-16 12:15:14 -04:00
Teravus Ovares (Dan Olivares) 5e391b9f7c * ShortVersion, another attempt at fixing the test thread death that randomly occurs.
* LongVersion nIni may be causing the test thread death.  Pausing OpenSimulator during startup causes a nIni error that makes debugging startup operations difficult for users.  It might be because when it's in pause mode, something else reads from the nini config passed?   If it is, it might not be fixable..   however, if it's concurrency that causes nini death it would make sense to give each section of the tests a new IConfigSource so that they don't read from the same configsource at the same time.
2009-08-16 12:14:49 -04:00
Diva Canto 6808b9109e Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim into inventory-connector 2009-08-16 08:59:58 -07:00
Adam Johnson a42569d896 Thanks dmiles for a patch that adds PacketType.RequestMultipleObjects Packet Handler - ref mantis #4010 2009-08-16 15:06:06 +09:00
Diva Canto 034c9cf606 Added GetAssetPermissions. Few last bugs nixed. This is ready for testing. 2009-08-13 17:34:15 -07:00
Diva Canto 5246dc33dc Renamed QueryItem/QueryFolder to GetItem/GetFolder. The word 'query' starting to get on my nerves. 2009-08-13 14:10:12 -07:00
Diva Canto 6b9cc6c48d Inventory redirects from CachedUserInfo to InventoryService COMPLETE! 2009-08-13 11:30:29 -07:00
Justin Clark-Casey (justincc) 655438a59d Apply http://opensimulator.org/mantis/view.php?id=1448
Store and retrieve user profile url at runtime
Not yet persisted
Thanks Fly-Man
2009-08-11 17:29:15 +01:00
Diva Canto 0d8284c7a1 Removed IAssetCache.
WARNING: PLEASE MAKE SURE TO USE THIS NEW bin/OpenSim.addin.xml
2009-08-10 08:14:57 -07:00
Teravus Ovares (Dan Olivares) bff26ccdbb * More tweaking of the various services to work with nonstandard region sizes. * Now, what's available of the terrain will show and it'll be truncated if it's larger on Linden Clients. Parcel minimum is 64 (256/4) for the client to accept it. 2009-08-08 00:10:19 -04:00
Justin Clark-Casey 190bdc8a2e * Remove some mono compiler warnings 2009-08-05 17:33:23 +01:00
dr scofield (aka dirk husemann) 4ffc284a36 trying to fix rare timer related exception. 2009-08-04 17:24:32 +02:00
Teravus Ovares f727f26bcc * An attempt to fix mantis #3953 2009-07-29 20:32:54 +00:00
Melanie Thielker f94985a939 Add the missing block to the alert message 2009-07-28 20:27:31 +00:00
Melanie Thielker aa06d9f98b Add the new StatusData block to the other two searchh packets 2009-07-28 19:28:01 +00:00
Melanie Thielker 64c874a951 Fix a null data block in DirClassifiedReply packet, preventing a session
crash in search.
Fixes Mantis #3952
2009-07-28 18:46:45 +00:00
diva 5ca02f0a08 This does NOT address the issue in mantis #3940, but it may avoid the exception reported there by WiLLuMPJuH Huisman pertaining to TeleportFailedPacket. 2009-07-27 19:20:48 +00:00
Teravus Ovares 5ae1ad995d * Fix Groups Module Null Reference when you were not a member of any group. 2009-07-25 17:29:25 +00:00
Melanie Thielker 7317bd7675 Correct an issue in group packet sending that causes a nullref with
libomv-0.7.
2009-07-25 16:55:11 +00:00
Teravus Ovares 64bd9a3354 * Updates libOMV to version 0.7.0
* Uses mantis #3811 as a base (thanks jhuliman) with changes.
* E-mail regarding interface changes sent to the opensim-dev list 
* Archive: https://lists.berlios.de/pipermail/opensim-dev/2009-July/007219.html
2009-07-25 15:49:10 +00:00
Teravus Ovares cf712075e5 * Remove a noisy debug console message that was used for testing the camera constraints. Ooops. 2009-07-19 02:41:32 +00:00
Teravus Ovares 08819bcbea * Created a way that the OpenSimulator scene can ask the physics scene to do a raycast test safely.
* Test for prim obstructions between the avatar and camera.  If there are obstructions, inform the client to move the camera closer.  This makes it so that walls and objects don't obstruct your view while you're moving around.   Try walking inside a hollowed tori.   You'll see how much easier it is now because your camera automatically moves closer so you can still see.
* Created a way to know if the user's camera is alt + cammed or just following the avatar.
* Changes IClientAPI interface by adding SendCameraConstraint(Vector4 CameraConstraint)
2009-07-19 02:32:02 +00:00
MW acea31518b fixed the bug where changing the rotation of a selection of prims in a linkset, made each of those prims rotate around its own centre rather than around the geometric centre of the selection like they should do (and like the client expects).
This involved adding a new OnUpdatePrimSingleRotationPosition event to IClientAPI so that we can get the changed position from the client. 
Btw adding new events to IClientAPI is really tedious where you have to copy the change across to at least 5 or 6 other files. 
[Note this doesn't fix the bug where any rotation changes to the root prim (but not the whole linkset) cause rotation errors on the child prims.]
2009-07-17 14:58:54 +00:00
MW d9a8ecf238 Changed the DeRezObject event so it passes a list<uint> of localIDs in one event trigger rather than triggering the event once for every localid in the derez packet. 2009-07-12 12:32:39 +00:00
Jeff Ames 1d01d6d919 Formatting cleanup. 2009-07-01 23:37:09 +00:00
Melanie Thielker 3564271c2d Restore the functionality that was removed in r9928. This lets the load
balancer plugin work again. Create a new method, GetClientEP, to retrieve
only the EndPoint for script usage. Marked the purpose of the method
in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo
functionality.
2009-07-01 15:47:52 +00:00
Arthur Valadares 4f6efa0249 * C# compiler is not smart enough to understand ClientLoop is under very heavy usage and inline DebugPacket, so DebugPacket is run as a method, causing Packet
to be constantly pushed and popped uselessly, if you are not debugging packets. This showed some really big difference in a mock test, let's see how it behaves here.
2009-06-29 19:24:30 +00:00
Arthur Valadares 6da88dceb0 * Changing List to Dictionary in PacketQueue.Dequeue for great justice (and performance) 2009-06-29 16:55:00 +00:00
Jeff Ames 715f2f2798 Update svn properties, add copyright header, formatting cleanup. 2009-06-29 15:40:00 +00:00
Dr Scofield c1976d1200 moving the m_PendingAcksMap.Remove() out of the foreach and clearing
it instead after the foreach as we are going through the whole
m_PendingAcks list anyhow
2009-06-25 11:30:31 +00:00
Dr Scofield aba4b0bd20 have to clear m_PendingAcks not m_PendingAcksMap 2009-06-25 11:30:16 +00:00
Dr Scofield e2db6c07ba hmph: missing '{'/'}', thx to nebadon for reporting it and rob smart
for spotting it!
2009-06-25 10:26:10 +00:00
Dr Scofield 74f7b586d3 fixing windows specific compile error. 2009-06-25 08:28:59 +00:00
Dr Scofield 17d37aa60d cosmetic change 2009-06-25 08:01:02 +00:00
Dr Scofield 1b06da0c54 streamlining m_NeedAck logic 2009-06-25 08:00:43 +00:00
Dr Scofield 9f83f124c7 streamling m_PendingAcks logic to get rid of gratuitous List<...>
instantiations and object copies.
2009-06-25 08:00:18 +00:00
Dr Scofield b84834c45b commenting out expensive bits (who in the world even uses SetClientInfo()?) 2009-06-25 07:59:58 +00:00
Dr Scofield e8e0ce5fc6 changing DropSend()'s foreach loop so that it does not copy the
LLQueItem m_NeedAck queue each time.
2009-06-25 07:59:47 +00:00
Dr Scofield fa060a7282 commenting out rather expensive bits of GetClientInfo() --- the only
bit of GetClientInfo that is actually used seems to be userEP as part of the
OSSL osGetAgentIP() script function. Now commented are the parts where
we serialize and copy out the *entire* packet queue of the client
(locking the packet handler in the process).
2009-06-25 07:59:38 +00:00
Dr Scofield 77122d7861 more efficient way of checking for already seen packets:
- uses Environment.TickCount for all timestamps (instead of more
  costly Util.UnixTimeSinceEpoch()
- takes care of Environment.TickCount overflow (which will happens
  after 24.8 days of system uptime)
- avoids instantiating List copies for each check
- gets rid of one lock() invocation
- moves calculation of loop invariant variable out of the loop itself
2009-06-25 07:59:25 +00:00
Dr Scofield a1ba9dee8d adding logging statement for receive buffer size 2009-06-25 07:50:19 +00:00
Dr Scofield 8f5efc4994 - adds the possibility of setting the socket receive buffer size
option for LLUDPServer. On windows .NET the default socket receive
  buffer size is 8192 bytes, on recent linux systems it's about
  111K. both value can be a bit small for an OpenSim instance serving
  many clients. The socket receive buffer size can be configured via
  an OpenSim.ini config option

- adds a general catch clause to LLUDPServer.OnReceivedData() to
  prevent it submerging when an unexpected Exception occurs.
2009-06-25 07:50:02 +00:00
Dr Scofield afd5f76648 From: Alan Webb <alan_webb@us.ibm.com>
This change moves texture send processing out of the main
  packet processing loop and moves it to a timer based
  processing cycle.

  Texture packets are sent to the client consistently over
  time. The timer is discontinued whenever there are no
  textures to transmit.

  The behavior of the texture sending mechanism is controlled
  by three variables in the LLCLient section of the config
  file:

   [1] TextureRequestRate (mS) determines how many times per second
       texture send processing will occur. The default is 100mS.
   [2] TextureSendLimit determines how many different textures
       will be considered on each cycle. Textures are selected
       by priority. The old mechanism specified a value of 10 for
       this parameter and this is the default
   [3] TextureDataLimit determines how many packets will be sent for
       each of the selected textures. The old mechanism specified a
       value of 5, so this is the default.

  So the net effect is that TextureSendLimit*TextureDataLimit
  packets will be sent every TextureRequestRate mS.

  Once we have gotten a reasonable feeling for how these parameters
  affect overall processing, it would be nice to autonmically manage
  these values using information about the current status of the
  region and network.

  Note that this also resolves the pathologcal problem that
  previously existed which was that a seated avatar generated very
  few in-bound packets (theoretically) and would therefore be the
  least able to retrieve the images being displayed by a
  projector script.
2009-06-25 07:42:06 +00:00
Melanie Thielker 41b8e2de9e Also fix group role membership packet sizes to stay safely below MTU 2009-06-23 22:11:34 +00:00
Melanie Thielker 8cf16f6ea4 Can I be this dumb? 2009-06-23 21:17:20 +00:00
Melanie Thielker 2a766b9082 Fix an error in group membership sending when the memebr count exceeds 60
Also reduce limit to 40 to allow for last logon dates and titles
2009-06-23 20:27:35 +00:00
Melanie Thielker a2635e43da Allow the member list of groups with more than 70 members to be viewed
without crashing
2009-06-23 14:37:51 +00:00
Melanie Thielker 56d0966a32 Commenting out the jhurliman fix, since our libOMV doesnt' have those fields
yet.
2009-06-23 08:56:45 +00:00
Melanie Thielker 2d7dd5f63e Correct an uninitialized field in a packet. Thanks, jhurliman.
Fixes Mantis #3831
2009-06-23 08:51:35 +00:00
Melanie Thielker bc1dce071a Correct the behaviro of group deeding and llGetOwner() within deeded objects 2009-06-21 19:49:11 +00:00
Sean Dague 1adeb8ad77 From: Chris Yeoh <yeohc@au1.ibm.com>
This patch ensures that the touch positions are set during touch_end
events (currently only working for touch_start and touch events).
2009-06-19 12:21:20 +00:00
Dahlia Trimble 00d042f3d1 Thanks Michelle Argus for Mantis #0003742: Terrain editor - Flatten tool lowers Land 2009-06-18 23:02:12 +00:00
Melanie Thielker 8aaeec598e Fix an uninitialized data block. Thanks, jhurliman 2009-06-17 23:46:13 +00:00
Jeff Ames a23d64dec1 Formatting cleanup. 2009-06-10 04:28:56 +00:00
Jeff Ames 840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
diva 275e53b126 This may bring the missing texture back. 2009-05-28 15:05:00 +00:00
Jeff Ames e0bc5c5db2 Add copyright headers, formatting cleanup. 2009-05-20 01:32:06 +00:00
Dr Scofield 14f0d5e77f trying to fix exception with in LLPacketQueue probably caused by
missing locks where the queue was modified.
2009-05-19 18:46:20 +00:00
Dr Scofield a885556063 From: Chris Yeoh <yeohc@au1.ibm.com>
We've encountered problems with textures never fully downloading and
objects not moving or being deleted (from the client's point of view)
even when the bandwidth settings on the client have been set very
low. This can happen over reasonably lossy links (eg you're on the
other side of the world from the server) as the server retries 3 times
and then gives up.

Whilst its possible to set ReliableIsImportant, this forces the server
to keep retrying no matter what which potentially could lead to
problems. This patch allows for the setting of MaxReliableResends
explicitly (is set to 3 normally) in OpenSim.ini so if you know you
will have clients connecting with poor connections you can set it a
bit higher (10-15 works quite well even for very poor connections).
2009-05-18 16:10:48 +00:00
diva 0379dbe2fd Removing a superfluous message, just to make bamboo run again. 2009-05-17 02:15:08 +00:00
Homer Horwitz 99cf8e3f5a Send the owner name, not the client name on SendDialog.
This modifies IClientAPI.SendDialog slightly.
Fixes Mantis #3661.
2009-05-16 16:01:25 +00:00
diva 5e4fc6e91e Heart surgery on asset service code bits. Affects OpenSim.ini configuration -- please see the example. Affects region servers only.
This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing.
Known problems: 
* HG asset transfers are borked for now
* missing texture is missing
* 3 unit tests commented out for now
2009-05-15 05:00:25 +00:00
Melanie Thielker fca73f3ae4 Add more group notify glue 2009-05-12 15:52:28 +00:00
Melanie Thielker 1b7d0a6c93 Paving the way for syncing group permissions across a grid 2009-05-12 14:59:11 +00:00
Adam Frisby 6dcafec22d * Implements IP and DNS based ban facilities to OpenSim.
* User interface is ... primitive at best right now.
* Loads bans from bans.txt and region ban DB on startup, bans.txt is in the format of one per line. The following explains how they are read;

DNS bans are in the form "somewhere.com" will block ANY matching domain (including "betasomewhere.com", "beta.somewhere.com", "somewhere.com.beta") - make sure to be reasonably specific in DNS bans.

IP address bans match on first characters, so, "127.0.0.1" will ban only that address, "127.0.1" will ban "127.0.10.0" but "127.0.1." will ban only the "127.0.1.*" network
2009-05-11 19:23:51 +00:00
Adam Frisby 53a350573e * Further testing against core packet issue. 2009-05-10 20:31:45 +00:00
Adam Frisby da948a992a * Attempting to diagnose a core packet issue on Windows/.NET. Adding additional locks to see if it fixes the problem. 2009-05-10 20:25:05 +00:00
Melanie Thielker e4236a4233 Fox a boo-boo in ExtraParams - a packet with no data blocks could crash
the session. Also allow multiple data blocks.
2009-05-09 12:04:40 +00:00
Sean Dague ce0a84cbc0 instrument most of the tests with a new InMethod function that may help us figure
out where that pesky deadlock is during test runs.
2009-05-07 19:07:08 +00:00
Melanie Thielker aa4e42069b Change avatar updates to be processed the same way object updates are, e.g.
packet length check. More changes to come
2009-05-07 12:06:07 +00:00
Jeff Ames 8ea12ad6c0 Add copyright header. Formatting cleanup. Ignore some generated files. 2009-05-05 09:59:15 +00:00
Melanie Thielker acfb5051cd Intermediate commit. WILL NOT COMPILE! 2009-05-04 20:15:39 +00:00
Justin Clarke Casey 257fc5515a * minor: remove some mono compiler warnings, minor cleanup 2009-05-04 15:38:36 +00:00
Melanie Thielker 36dd346a91 Add a method to flush the prim update buffers once a frame, since the timer
appear to be too slow to be useful, or fail too fire. I may remove the timers
as a consequence if this.
2009-05-04 14:25:19 +00:00
Melanie Thielker b44a56e0b4 Add a parameter that limits the max size of the outbound packet. Defaulted
at 1400 since the headers get added to that (32 bytes plus UDP headers)
2009-05-04 02:24:30 +00:00
Melanie Thielker e8b532b26a Make a race condition in packet resending smaller 2009-05-03 09:43:52 +00:00
Adam Frisby 0c639e08ea * Reversing experimental change in previous rev. 2009-05-02 23:00:51 +00:00
Adam Frisby 1027668359 * Experimental: Speeds maximum resend per second from 80 packets to 400. (From maximum 117kbit to 585kbit) 2009-05-02 22:01:47 +00:00
Melanie Thielker 229a4d54ca If a packet pooling blows up, fail gracefully instead of disconnecting
the user
2009-05-02 21:21:20 +00:00
Melanie Thielker 780f34275b Handle resends better 2009-05-02 20:08:26 +00:00
Adam Frisby 0b2a34438c * Makes ObjectUpdate compressing tweakable in OpenSim.ini - introduces:
TerseUpdatesPerPacket=10
FullUpdatesPerPacket=14
TerseUpdateRate=10
FullUpdateRate=14
2009-05-02 19:09:48 +00:00
Melanie Thielker 66e25abbfe Plumb conifg into the client views. Add config option to configure packet
dropping.
2009-05-02 17:31:49 +00:00
Melanie Thielker 74ce07e971 Move a lock to attempt to cut down packet loss 2009-05-02 14:47:01 +00:00
Melanie Thielker 62bcf0e694 Numerous packet improvements.
Don't allow packets to be resent before they have actually been sent for the
first time. Switch from serializing a packet to get it's length to the LibOMV
provided Length property. Fix resend timing. Fix the use of dangling references
to Acked packets. Fix the packet handler to play nice with the packet pool.
Fix the packet pool. Add data block recycling to the packet pool. Packet pool
is now ENABLED by default. Add config option to disable packet and data block
reuse. Add ObjectUpdate and ImprovedTerseObjectUpdate to the packets being
recycled.
2009-05-02 13:16:41 +00:00
Melanie Thielker ac944def3f Fix the issue that stopped the packet pool from working. Add a mechanism
to recycley data blocs within a packet. Recycle the ObjectUpdate* data
blocks. Speeds up loading even more.
This may mean that the packet pool is now viable.
2009-05-02 00:14:04 +00:00
Melanie Thielker 55a69f3f2d Improve prim sending by combining multiple prim updates into a single packet 2009-05-01 16:29:15 +00:00
Melanie Thielker e901c8be17 Thank you, mpallari, for a patch that correct the behavior of the avatar
performance patch.
Fixes Mantis #3562
2009-04-30 15:26:37 +00:00
Melanie Thielker 334738fca9 Thank you, mpallari, for a patch that increses efficiency by combining
avatar updates into a single packet.
Applied with changes.
Fixes Mantis #3136
2009-04-30 11:58:23 +00:00
Melanie Thielker e2327384e0 Catch another j2k decode exception that can be caused by a bad asset 2009-04-29 21:01:01 +00:00
Melanie Thielker 98cdc1efdd Fix a crash that will hit when an image asset is truncated in storage 2009-04-29 20:32:40 +00:00
Dr Scofield 84701701ef fixes exception thrown when client session is shutdown while
packethandler still active
2009-04-29 12:31:43 +00:00
Dahlia Trimble 4792e6139a Thanks Bluewall for Mantis #3519: a patch that adds simulator uptime and version to REST/json statistics reporting 2009-04-25 05:06:01 +00:00
Dr Scofield 458f7eb9b3 cleaning up, fixing warnings 2009-04-22 09:42:44 +00:00
Jeff Ames 6aa5d3904d Add copyright headers. Formatting cleanup. 2009-04-22 00:48:56 +00:00
Melanie Thielker 01a22d940f Change a bad use of a type name as a variable. Thanks, Fly-Man
Fixes Mantis #3497
2009-04-20 21:58:32 +00:00
Melanie Thielker d91330ea35 Add PlacesQuery packet 2009-04-20 20:43:48 +00:00
Melanie Thielker dd0fa5745e It is possible that apacket is recieved before the clint stack is fully ready.
This causes a nullref we need to catch here.
2009-04-20 17:24:09 +00:00
Charles Krinke 2578db3dfa Thank you kindly, RemedyTomm for a patch that:
Following feedback from 0003440, i've made some changes to the new texture pipeline to optimise
 performance. The changes are:
 - Fixed a math issue where a small percentage of images with a certain size (on the packet boundary) would not have their final data delivered. This issue has been present since pre- 0003440
 - It was suggested that a discardlevel of -1 and a prioriy of 0 meant to abandon the transfer, this is incorrect and caused some textures to clog.
 - The texture throttle blocking queue is now only filled in relation to the actual throttle amount.. i.e, on a connection throttled to 300k, only twenty packets will be placed in the queue at a time, on a larger connection it will be much more. This is to balance responsiveness to requests and speed, and to minimise wasted packets.
 - The engine now keeps track of the number of pending textures, and the stack will not be walked if there's no textures pending, saving CPU. Textures are only considered "pending" when they've already been decoded.
 - As part of the above, some textures may receive twice as much data per cycle if the number of pending textures is below the cycle threshold, this should prevent loading from slowing down when there are fewer textures in the queue.
2009-04-18 18:35:03 +00:00
Charles Krinke b4cb45bb79 Fixes Mantis # 3469. Thank you kindly, BlueWall, for a patch that:
This patch adds extended status reporting with the url 
http://server:port/simstatusx/ [^] . The data is returned 
in json format as "text/plain" type.
2009-04-17 21:48:48 +00:00
Melanie Thielker 4b85cbf0b6 Correctly flag group owned prims in the land prim list 2009-04-16 01:01:40 +00:00
Melanie Thielker ac96722c1d Fix build break and change some groups interfaces 2009-04-16 00:46:24 +00:00
Melanie Thielker 7306b73f02 Commit the group deeding support, thank you, mcortez 2009-04-15 21:07:09 +00:00
Justin Clarke Casey 9f6b8ec9b0 minor: Remove some mono compiler warnings. Uncomment code when it's actually being used. 2009-04-15 19:46:37 +00:00
Johan Berntsson 119aeeed7d Another cleanup: Region_Status renamed to RegionStatus, and a usage comment added 2009-04-15 04:15:47 +00:00
Melanie Thielker a0417f5791 Thank you, Fly-Man, for a patch that adds the stub to handle the
avatar interests update.
2009-04-14 03:44:27 +00:00
Teravus Ovares c2e75aecd1 * Commit a variety of fixes to bugs discovered while trying to fix the NaN singularity.
* WebStatsModule doesn't crash on restart.   GodsModule doesn't crash when there is no Dialog Module.  LLUDPServer doesn't crash when the Operation was Aborted.  
* ODEPlugin does 'Almost NaN' sanity checks.
* ODEPlugin sacrifices NaN avatars to the NaN black hole to appease it and keep it from sucking the rest of the world in.
2009-04-14 01:57:35 +00:00
Teravus Ovares ab83af0341 * Set eol-style: native on J2KImage.cs 2009-04-13 23:06:29 +00:00
Teravus Ovares 9371df52cb *Bypass J2kDecoder when asset is null 2009-04-13 15:18:38 +00:00
Sean Dague 532ae6d925 if Data is null, shortcut to client.SendImageNotFound, as any other
option at this point is going to give us a NullReferenceException
2009-04-13 15:08:06 +00:00
Sean Dague 15d39f33ca scream out a bit warning if we failed to set default image 2009-04-13 14:52:29 +00:00
Sean Dague b2e5f03942 catch for a null asset so we don't get an exception here, though this
probably just makes the decoder break somewhere else.
2009-04-13 14:52:23 +00:00
Sean Dague 58fd013929 put J2KImage into it's own file, please no doubling up on classes in
files
2009-04-13 14:52:14 +00:00
Teravus Ovares 515bf6d7dc * Patch from RemedyTomm Mantis 3440
* Revamps the server side texture pipeline
* Textures should load faster, get clogged less, and be less blurry
* Minor tweak to ensure the outgoing texture throttle stays private.
* Fixes mantis 3440
2009-04-10 08:30:21 +00:00
nlin 8e6c20b27f Handle ObjectSpin* packets to spin physical prims on Ctrl+Shift+Drag
Addresses Mantis #3381

The current implementation works as expected if the object has no rotation or 
only rotation around the Z axis; you can spin the object left or right (around
the world Z axis).

It works a little unexpectedly if the object has a non-Z-axis rotation; in this
case the body is spun about its local Z axis, not the world Z-axis. (But SL 
also behaves oddly with a spin on an arbitrarily rotated object.)
2009-04-10 06:39:52 +00:00
Justin Clarke Casey 601fa22185 * minor: remove some mono compiler warnings 2009-04-09 20:06:30 +00:00
lbsa71 6af0751cc5 * Tagged long running tests with LongRunningAttribute.
* Now, the 144 unit tests takes roughly as long time to run (16s on my laptop) that the 10 long running takes. The database tests takes forever.
* Feel free to run the unit tests as you code, and the rest before commit.
2009-04-09 20:06:27 +00:00
Justin Clarke Casey f3c7298fc5 * Make it possible to store creator strings in user inventory items as well as UUIDs
* All existing functionality should be unaffected.
* Database schemas have not been changed.
2009-04-08 17:50:57 +00:00
Teravus Ovares 8d8c45b659 * Fix the remainder of the packets that require sessionId checks. 2009-04-08 16:31:56 +00:00
Adam Frisby 5118f88bc4 * [SECURITY] Implements additional packet security checks for Object related packets.
* Note: as with the last commit, this requires additional testing.
* This represents 2/8ths of packets now being checked appropriately.
2009-04-08 06:41:52 +00:00
Adam Frisby 2bd6a915a0 * [SECURITY] Implements a large number of new security checks into Scene/Avatar packet processing within ProcessInPacket.
* Notes: this requires heavy testing, it may cause new issues where LL have recycled agent block data for non-security purposes. It can be disabled on Line 4421 of LLClientView.cs by changing m_checkPackets to false.
* This represents approx 1/8th of the packets being checked.
2009-04-08 06:31:19 +00:00
Justin Clarke Casey 0752dd65cc * Ooops, really put this on the task queue and not texture 2009-04-07 19:30:10 +00:00
Justin Clarke Casey 952960e375 * Put AgentTextureCached? response packet on the task queue rather than the wind queue
* Thanks to rtomita for pointing this out.
2009-04-07 19:23:17 +00:00
Justin Clarke Casey ed6165ab9c * Apply http://opensimulator.org/mantis/view.php?id=3227
* Implement "Add To Outfit"
* Thanks FredoChaplin
2009-04-07 17:46:23 +00:00
Homer Horwitz 8136cf4075 Thanks jonc, for a patch that adds rendering of classic clouds.
First part of Mantis #964, the necessary clouds image will follow separately.
2009-04-04 15:43:02 +00:00
nlin 449bebf16e Preliminary work to support ObjectSpin* packets when user invokes CTRL / SHIFT / MOUSE DRAG on a physical object
Addresses Mantis #3381
2009-04-04 13:13:14 +00:00
lbsa71 7f4bf5871d * Proactively fixed bug-potential concerning the fact that m_httpServer property was differently referred to between RegionApplicationBase and all other grid services. 2009-04-03 20:56:36 +00:00
Melanie Thielker a4ba587df7 Adding the Length override to the KillPacket 2009-03-31 21:34:29 +00:00
Jeff Ames 20e1a8d7f6 Thanks rtomita for a patch to add a handler for the RemoveInventoryObjects packet. (bug #3304) 2009-03-31 05:47:53 +00:00
Justin Clarke Casey 176f263d23 * minor: remove mono compiler warnings 2009-03-30 18:34:43 +00:00
Melanie Thielker f88d755f96 Add PickInfoReply packet.
Fixes Mantis #3324
2009-03-30 11:51:34 +00:00
Melanie Thielker c483206fd7 Change the client API to use GridInstantMessage for the "last mile" of IM
sending. With this change, all methods that handle IM now use GridInstantMessage
rather than individual parameters.
2009-03-29 05:42:27 +00:00
Melanie Thielker 404bfdc9a6 Finish the offline IM module (still needs a server). Add rudimentary
support for the mute list (no functionality yet, but allows the
RetrieveInstantMessages event to fire now).
2009-03-29 00:48:34 +00:00
Melanie Thielker 4f6c4378da Add mute list request event and dummy response 2009-03-28 04:21:44 +00:00
Teravus Ovares f5812b3702 * Adds AgentUUIDs into the CourseLocationUpdate to improve compatibility with LibOMV based clients.
* Modifies the IClientAPI!  So client stacks will need to be modified!
2009-03-28 01:40:33 +00:00
Melanie Thielker cbef90fec6 Add the events needed for profiles.
Fixes Mantis #3324
2009-03-27 22:47:41 +00:00
Teravus Ovares 52c482a7a7 * This updates LibOMV to the current release 0.6.0 on March 19 2009
* Important:  HttpServer.dll was changed to HttpServer_OpenSim.dll so that the HttpServer references do not conflict if you've copied the OpenMetaverse.Http.dll and requirements to the OpenSimulator bin folder.
This means that if you reference HttpServer.dll in any projects, you will need to change the reference to HttpServer_OpenSim.dll.   It still uses the Same HttpServer namespace though.
2009-03-27 22:13:09 +00:00
Melanie Thielker 37e81c7d54 Remove a hardcoded flow/dependency on the money module from LLCLientView 2009-03-27 18:51:45 +00:00
lbsa71 3cb06cc4cc * Changed a recursive BeginRobustReceive loop to a flat while loop to avoid lethal stack overflows. 2009-03-25 19:30:36 +00:00
Melanie Thielker f86c13f48e Send proper creation date on item gives, so objects will appear at the top of
"Objects", not at the bottom
2009-03-22 20:05:11 +00:00
Jeff Ames fec8aef03a Thanks rtomita for a patch to add handlers for prim scale updates from libomv-based clients. (#3291) 2009-03-14 22:55:17 +00:00
Melanie Thielker ddbf81fa07 Thank you, mcortez, for a patch that fixes a number of long standing
issues with the sun module.
Fixes Mantis #3295
2009-03-13 23:45:02 +00:00
Jeff Ames 6462014250 Thanks rtomita for a patch to fix inventory listings for clients using libomv. (#3285) 2009-03-11 18:46:52 +00:00
idb aab1601642 Limit the message length from llInstantMessage to 1024 characters http://wiki.secondlife.com/wiki/LlInstantMessage
Also truncate messages that may exceed the limit set by the packet size. The limit in OpenMetaverse is 1100 bytes including a zero byte terminator.
Fixes Mantis #3244
2009-03-07 14:16:26 +00:00
Justin Clarke Casey 6c735e0828 * Replace some string to byte conversions for object/item name/description fields with the LLUtil function that prevents the max string size from being breached 2009-03-05 19:32:27 +00:00
MW 3c46ee9326 Moved the SetupScene methods from RegionApplicationBase to OpenSimBase [Do we really still need RegionApplicationBase?]
Added a flag (bool m_autoCreateLindenStack = true) which says if the ClientStack will be autocreated and initialised when creating regions. This helps with moving ClientStacks to Region modules. 
Currently this flag is hardcoded to true, as it is only for testing at the moment, so you need to change the value in the code if you want to turn off auto creating.
2009-03-02 16:33:11 +00:00
MW ff76102644 Changed IClientNetworkServer.AddScene method from void AddScene(Scene x) to void AddScene(IScene x). As there should be no need for the client view to have a reference to Scene. IScene should be all it needs. 2009-03-02 14:42:01 +00:00
Melanie Thielker ed2de7ac82 Plumb in the RetrieveInstantMessages event that is sent by the viewer
when it is ready to receive offline IM
2009-02-26 20:11:55 +00:00
MW 33e7c09b7b Added IRegistryCore and RegistryCore to OpenSim.Framework.
Added a ApplicationRegistry to OpenSimBase.
Changed LoadRegionsPlugin so it registers itself to that application registry.
Added a event to LoadRegionsPlugin, that is triggered when it creates a new scene ,although maybe this event should actually be in opensimBase incase other plugins are creating regions (like the RemoteAdminPlugin).
2009-02-26 20:01:20 +00:00
Justin Clarke Casey 36e648a37a * minor: Remove most mono compiler warnings 2009-02-25 20:53:02 +00:00
Charles Krinke 6515d8be0e Fixes Mantis #3220. Thank you kindly, MPallari, for a patch that:
This patch changes InformClientOfNeighbour, CrossRegion and 
SendRegionTeleport methods to virtual.
2009-02-25 04:38:06 +00:00
Mike Mazur bdf95e54a2 A few updates necessary for load balancer.
- handle GetUser request for nonexistent user gracefully
- include throttle levels in ClientInfo
- code to save/restore throttles in client stack
- only update/send updates to active clients
- make animation classes serializable
2009-02-25 00:32:26 +00:00
Charles Krinke 8f55b9d735 Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added log4net dependency to physxplugin in prebuild.xml.
* Added missing m_log fields to classes.
* Replaced Console.WriteLine with appropriate m_log.Xxxx
* Tested that nant test target runs succesfully.
* Tested that local opensim sandbox starts up without errors.
2009-02-22 20:52:55 +00:00
MW 89006da793 Added a check to LLClientView.RegisterInterface<T>(T iface), so that it can't try to add duplicate interfaces and cause a exception. 2009-02-21 14:30:17 +00:00
lbsa71 1cadad9ec6 * Applied a patch that: Added estate ban table to migration scripts and nhibernate mapping. Refactored property getters and setters for estate ban object to support NHibernate.
* Added estate ban table to migration scripts of all supported databases.
* Added nhibernate mapping for EstateBans property of EstateSettings
* Refactored property accessors for EstateBan object.
* Added comments for EstateBan properties.
* Ensured that NHibernate tests pass with NUnitGUI.
* Ensured that nant test target passes.  

This fixes mantis #3210. Thank you, tlaukkan!
2009-02-21 09:39:33 +00:00
Melanie Thielker 863556f2cc Thank you, Snowdrop, for a patch that makes the callback ID parameter
usable. Applied with formatting changes, please don't introduce
K&R style indentations into OpenSim
Fixes Mantis #3190
2009-02-19 03:09:56 +00:00
Melanie Thielker 3130784934 Re-add the objectID field to the anim pack, that was deemed unneccessary
and dropped nonths ago, because it is required to get smooth region
crossings with AO running. Without it, in some corner cases, anims will
continue to run in an unstoppable state.
2009-02-17 04:16:42 +00:00
Mike Mazur 76c0935ec7 - remove the Metadata property from AssetBase and return all previous
properties as before
- prefix private variables with m_ in AssetBase.cs
- related to Mantis #3122, as mentioned in
  https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html
- all services will likely need to be upgraded after this commit
2009-02-17 01:36:44 +00:00
Justin Clarke Casey 42bd38960c * Apply http://opensimulator.org/mantis/view.php?id=3149
* If the texture does not contain any discard levels the last image packet was not sent
* Thanks Snowdrop
2009-02-13 17:02:26 +00:00
Justin Clarke Casey 88b273bc71 * refactor: Move export map function to world map module from scene 2009-02-13 16:43:20 +00:00
lbsa71 801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
diva 5dae1ddb5a Fixes mantis #3121. 2009-02-12 01:09:51 +00:00
diva b6e7e5ed42 Enforce estate bans on Teleports. 2009-02-11 21:07:41 +00:00
Justin Clarke Casey 8645c7482d * Change SendBulkUpdateInventory from two methods to one which accepts an InventoryNode 2009-02-11 19:57:45 +00:00
Dr Scofield 180be7de07 this is step 2 of 2 of the OpenSim.Region.Environment refactor.
NOTHING has been deleted or moved off to forge at this point.  what
has happened is that OpenSim.Region.Environment.Modules has been split
in two:

- OpenSim.Region.CoreModules: all those modules that are either
  directly or indirectly referenced from  other  OpenSim packages, or
  that provide functionality that the OpenSim developer community
  considers core functionality:

      CoreModules/Agent/AssetTransaction
      CoreModules/Agent/Capabilities
      CoreModules/Agent/TextureDownload
      CoreModules/Agent/TextureSender
      CoreModules/Agent/TextureSender/Tests
      CoreModules/Agent/Xfer
      CoreModules/Avatar/AvatarFactory
      CoreModules/Avatar/Chat/ChatModule
      CoreModules/Avatar/Combat
      CoreModules/Avatar/Currency/SampleMoney
      CoreModules/Avatar/Dialog
      CoreModules/Avatar/Friends
      CoreModules/Avatar/Gestures
      CoreModules/Avatar/Groups
      CoreModules/Avatar/InstantMessage
      CoreModules/Avatar/Inventory
      CoreModules/Avatar/Inventory/Archiver
      CoreModules/Avatar/Inventory/Transfer
      CoreModules/Avatar/Lure
      CoreModules/Avatar/ObjectCaps
      CoreModules/Avatar/Profiles
      CoreModules/Communications/Local
      CoreModules/Communications/REST
      CoreModules/Framework/EventQueue
      CoreModules/Framework/InterfaceCommander
      CoreModules/Hypergrid
      CoreModules/InterGrid
      CoreModules/Scripting/DynamicTexture
      CoreModules/Scripting/EMailModules
      CoreModules/Scripting/HttpRequest
      CoreModules/Scripting/LoadImageURL
      CoreModules/Scripting/VectorRender
      CoreModules/Scripting/WorldComm
      CoreModules/Scripting/XMLRPC
      CoreModules/World/Archiver
      CoreModules/World/Archiver/Tests
      CoreModules/World/Estate
      CoreModules/World/Land
      CoreModules/World/Permissions
      CoreModules/World/Serialiser
      CoreModules/World/Sound
      CoreModules/World/Sun
      CoreModules/World/Terrain
      CoreModules/World/Terrain/DefaultEffects
      CoreModules/World/Terrain/DefaultEffects/bin
      CoreModules/World/Terrain/DefaultEffects/bin/Debug
      CoreModules/World/Terrain/Effects
      CoreModules/World/Terrain/FileLoaders
      CoreModules/World/Terrain/FloodBrushes
      CoreModules/World/Terrain/PaintBrushes
      CoreModules/World/Terrain/Tests
      CoreModules/World/Vegetation
      CoreModules/World/Wind
      CoreModules/World/WorldMap

- OpenSim.Region.OptionalModules: all those modules that are not core
  modules:

      OptionalModules/Avatar/Chat/IRC-stuff
      OptionalModules/Avatar/Concierge
      OptionalModules/Avatar/Voice/AsterixVoice
      OptionalModules/Avatar/Voice/SIPVoice
      OptionalModules/ContentManagementSystem
      OptionalModules/Grid/Interregion
      OptionalModules/Python
      OptionalModules/SvnSerialiser
      OptionalModules/World/NPC
      OptionalModules/World/TreePopulator
2009-02-10 13:10:57 +00:00
Sean Dague 8088802c21 From Alan Webb <awebb@linux.vnet.ibm.com>
These changes replace all direct references to the AssetCache with
IAssetCache. There is no change to functionality. Everything works as
before.

This is laying the groundwork for making it possible to register
alternative asset caching mechanisms without disrupting other parts of
OpenSim or their dependencies upon AssetCache functionality.
2009-02-09 21:47:55 +00:00
Dahlia Trimble 8cc327cfa3 send group name in binary bucket in chatterbox invitation eventqueue message 2009-02-08 10:50:22 +00:00
Melanie Thielker 54c6a920ba Replace the console for all OpenSim apps with a new console featuring command
line editing, context sensitive help (press ? at any time), command line
history, a new plugin command system and new appender features thet let you
type while the console is scrolling. Seamlessly integrates the ICommander
interfaces.
2009-02-07 12:25:39 +00:00
Dr Scofield 9b66108081 This changeset is the step 1 of 2 in refactoring
OpenSim.Region.Environment into a "framework" part and a modules only
part. This first changeset refactors OpenSim.Region.Environment.Scenes,
OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces
into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region
modules in OpenSim.Region.Environment.

The next step will be to move region modules up from
OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and
then sort out which modules are really core modules and which should
move out to forge.

I've been very careful to NOT BREAK anything. i hope i've
succeeded. as this is the work of a whole week i hope i managed to
keep track with the applied patches of the last week --- could any of
you that did check in stuff have a look at whether it survived? thx!
2009-02-06 16:55:34 +00:00
Mike Mazur 0c03a48fb2 - add OpenSim.Framework.AssetMetadata class. AssetBase is now composed of it
- trim trailing whitespace
2009-02-04 00:01:36 +00:00
diva 360eb239b3 Hopefully fixes mantis #3063. 2009-01-31 00:15:13 +00:00
Dahlia Trimble c747990187 Send groups list via event queue 2009-01-27 06:14:11 +00:00
Dahlia Trimble 4dace03696 add a definition for a parcel properties CAP
send parcel properties via eventqueue rather than UDP to facilitate libomv clients - see Mantis #3040
2009-01-26 10:42:24 +00:00
Dahlia Trimble fa99f01378 more eventqueue IM nonsense 2009-01-26 08:04:12 +00:00
Teravus Ovares 76206543e8 * Adds console command, 'predecode-j2k <number of threads>' to load all of the texture assets from the scene and decode the j2k layer data to cache. The work is split between the number of threads you specify. A good number of threads value is the number of cores on your machine minus 1.
* Increases the number of ImageDataPackets we send per PriorityQueue pop and tweak it so that the number of packets is ( (2 * decode level) + 1 ) * 2, and (((2 * (5-decode level)) + 1) * 2).  The first one sends more data for low quality textures, the second one sends more data for high quality textures.
2009-01-25 04:34:00 +00:00
Justin Clarke Casey c277440e73 * minor: remove mono compiler warning 2009-01-23 20:44:35 +00:00
Dahlia Trimble 68978e6e2a add event queue code for sending group IM for future group support 2009-01-23 01:49:32 +00:00
Teravus Ovares 178fd97bd0 * Fixing a group title 2009-01-23 00:08:35 +00:00
Teravus Ovares 28ddc38deb * Remove a few unnecessary locks to try and prevent lock contention in LLImageManager 2009-01-22 18:28:32 +00:00
Teravus Ovares 9ebba37a7c * discovered! darn! Removing I <3 OpenSimulator from firstname 2009-01-22 10:04:15 +00:00
Teravus Ovares a7ccbb3de0 * Added some more comments
* Fixed up an outgoing packet
* I <3 OpenSimulator
2009-01-22 09:31:01 +00:00
Justin Clarke Casey 37fa677548 * refactor: Extract caps related code from scene and put into a region module
* No functional changes in this revision
2009-01-21 21:14:17 +00:00
Justin Clarke Casey d2d273aebe * minor: move connection success log message so that it doesn't get printed again if a duplicate use circuit code packet comes in 2009-01-21 18:46:44 +00:00
Justin Clarke Casey 22aeda3ba1 minor: find in existing senderUUID field for chat messages originating from a client 2009-01-21 17:56:25 +00:00
Teravus Ovares 68baf9096a * Another image packet edge case. Thanks nebadon for printing a log of it 2009-01-19 21:29:44 +00:00
Teravus Ovares 4823f2ae8e * Set SVN Properties 2009-01-19 18:33:25 +00:00
Teravus Ovares 8e01f75784 * Progressive texture patch + PriorityQueue put into the LLClient namespace.
* Updates LibOMV to r2362
2009-01-19 17:11:57 +00:00
Justin Clarke Casey eca6442bae * Rig up enough infrastructure to actually perform a successful 'standalone' teleport unit test with checks that the scene presence disappeared from sceneA and appeared in
sceneB
* However, I'm not convinced that the actual process in the test completely reflects reality, and a lot of stuff had to be rigged up (which should get resolved over time)
2009-01-16 21:56:13 +00:00
Justin Clarke Casey 093adb2113 * Add new unit test for simple teleport in a standalone.
* Does not yet check results.
2009-01-15 21:27:55 +00:00
Justin Clarke Casey 75ea84f3d2 * minor: Change around more debugging messages 2009-01-14 18:46:33 +00:00
Justin Clarke Casey 6ae1b80d20 * Do some log tweaking to better see incoming connection success (and failure) 2009-01-14 17:34:04 +00:00
Justin Clarke Casey 1e365df495 * minor: Stop friendship termination crashing the client thread if the friend to be terminated could not be found 2009-01-13 16:49:01 +00:00
Justin Clarke Casey efcf6ff095 * Extend current stub packet handler test into a really basic one that checks that a sent in packet ends up on the client queue ready for processing 2009-01-12 20:42:44 +00:00
Justin Clarke Casey ade107f04f * Separate starting a client thread into a separate Start() method (which matches the existing Stop() and Restart() methods) 2009-01-12 19:37:56 +00:00
Justin Clarke Casey d4d2c19594 * Extend PacketHandlerTest to fire in a packet.
* Can't test result yet since the Client thread handles it with unpredictable timing
2009-01-12 18:45:03 +00:00
Justin Clarke Casey 6e9d5e4ea7 * refactor: move packet handler interface into a separate class 2009-01-12 17:31:30 +00:00
MW e1eb1b2cfa a little bit more work on LLFileTransfer.cs, from over the christmas/new year period. Still not working/in use but hopefully I can finish it soon. 2009-01-12 10:16:33 +00:00
Justin Clarke Casey 7cd8748096 * minor: Put in stub LLPacketHandler testing code 2009-01-09 21:05:53 +00:00
Melanie Thielker 7c7ea57c5c Finish dwell sending, adding the forgotten method body.
Add UserInfo and a dummy reply to enable Hippo Viewer users to
disable IM logging (option was greyed out in OpenSim before)
2009-01-09 02:59:56 +00:00
Justin Clarke Casey 17f783457b * refactor: move code for sending a message to all users in a region to the DialogModule 2009-01-08 18:50:46 +00:00
Justin Clarke Casey a31792ee5c * prune and regrade log messages relating to client login and logout 2009-01-06 21:39:55 +00:00
Adam Frisby 3b0eb958a8 * Another minor GenericMessage fix - If we assume the method names are case-insensitive, we should process them as such. 2009-01-04 19:41:55 +00:00
Adam Frisby 00a0f4a286 * Added some information to HandleGenericMessage to indicate that it's not the packet that isnt being processed, but instead the method-type. 2009-01-04 19:39:17 +00:00
Adam Frisby f0864b5154 * Minor tweak to crash logger to copy ini with log if save-to-dir is on.
* Added BinaryGenericMessage handler for cases where GenericMessage isnt transmitting pure-utf8 characters.
2009-01-04 19:09:22 +00:00
Melanie Thielker 7beb8a5abb Plumb the remaining dwell packets 2009-01-03 20:45:33 +00:00
Teravus Ovares e9cef70f89 * Updates the sim stats module. Cleans out some of the rot.
* Adds a prototype web stats module which is disabled by default.  It's functional with one report right now, however, the database structure may change, so I don't recommend enabling this to keep actual stats right now.  I'll let you know when it's safe.
* Adds Prototype for ajaxy web content
* removed a warning or two.
2009-01-03 03:30:03 +00:00
Melanie Thielker a7708413ee Plumb in dwell in a couple of places 2009-01-03 00:03:41 +00:00
Justin Clarke Casey a3af0e61eb * Add Nini.Config and System.Xml references to MockScene for Windows compilers 2009-01-02 20:11:20 +00:00
Jeff Ames 2be0f7a6f0 Update svn properties, minor formatting cleanup. 2008-12-30 01:08:07 +00:00
Melanie Thielker 23844a9073 Plumb the profile reply packets for picks, classifieds and notes 2008-12-25 20:28:13 +00:00
Melanie Thielker 3b6ffd9e41 Plumb yet another groups packet 2008-12-25 18:22:50 +00:00
Melanie Thielker 318de200bd Plumb in EventNotification* and EventGodDelete 2008-12-23 23:41:46 +00:00
Melanie Thielker fc053a6af8 Plumb in the 4 missing classified events and the 3 packet methods 2008-12-23 18:16:30 +00:00
Justin Clarke Casey cce1b096db * refactor: Replace part of SceneObjectPart with the identical sound playing code in the SoundModule 2008-12-23 17:54:13 +00:00
Teravus Ovares 119104e35b * Re-implement packet tracking in IClientAPI so we can see what's going on in the client network in the simstats manager. This makes packets in per second, packets out per second, and unacked bytes work again in the simulator stats section. 2008-12-21 00:11:54 +00:00
Justin Clarke Casey 899f2a80d7 minor: remove mono compiler warning 2008-12-19 19:50:46 +00:00
lbsa71 56f1b03cd0 * Added "show queues" command that shows throttling queues for all clients.
*** This only works for LLCLientView at the moment ***
2008-12-18 13:16:41 +00:00
Melanie Thielker a9e38bcafc Reapply the packet optimization patch, with changes 2008-12-17 21:00:18 +00:00
Melanie Thielker 2bcf315ea2 Revert 7754 and 7755 pending a rework 2008-12-17 20:34:37 +00:00
Melanie Thielker 5320f0f33c Stop packets that may be resent from being returned to the packet pool.
FWIW
2008-12-17 20:21:48 +00:00
Justin Clarke Casey 2108d328df * revert r7724 so that PresenceChildStatus() starts throwing NRE's again
* apparantly logout code relies on this happening in certain circumstances.  Really, the root issue needs to be investigated.
2008-12-17 19:12:56 +00:00
Melanie Thielker 7ef5a79fef Change the PacketQueue to use the stored size as well 2008-12-17 19:01:47 +00:00
Melanie Thielker 0d3a9b45ae Marry AckData to LLQueItem, and store packet data and length there for
use everywhere. Each packet gets serialized only once now in PacketHandler
2008-12-17 18:56:47 +00:00
Justin Clarke Casey ab77b22f0f * Only serialize packets once for the length calculation for throttle queues rather than twice 2008-12-17 17:33:57 +00:00
Melanie Thielker 35ec496f98 Revamp packet handler to smooth out the stream of resent packets.
Eliminates the bursting in resends observed in the prior implementation
2008-12-17 17:19:14 +00:00
Justin Clarke Casey 72ff5322f5 * Replace manually zeroing with Array.Clear(). Thanks cmickeyb 2008-12-17 17:18:52 +00:00
Melanie Thielker 8e5fe0257c Mantis #2850
Applying the patch to reduce the load caused by the throttle loop even more
2008-12-17 17:05:12 +00:00
Justin Clarke Casey 2e79fd0f0c * minor: Minor documentation and small minor change on LLPacketThrottle to remove some unnecessary lines 2008-12-17 17:01:02 +00:00
Justin Clarke Casey b4680f653d * Implement 'Save Object Back to My Inventory'. On the Linden client this is in the Tools menu available when editing an object
* This facility allows you to save changes to an object that you've rezzed into a region back into their original inventory item without having to take a copy of the rezzed 
object.
2008-12-17 16:11:03 +00:00
Melanie Thielker a5343c5404 Add repecting the min and max values back in 2008-12-17 09:55:10 +00:00
Melanie Thielker e394e1c06f Remove a major bottleneck in throttling code. 2008-12-17 09:52:52 +00:00
Melanie Thielker 02a28a6992 Avoid checking the throttle limit for empty queues 2008-12-17 09:30:56 +00:00
MW 1110ee877f More work on moving Xfer file transfer handling code to the Client stack from the various region modules that it is currently in.
Still not enabled yet.
2008-12-15 21:46:57 +00:00
Justin Clarke Casey 41ad030a5a * minor: method documentation and miscellaneous tidy 2008-12-15 20:32:49 +00:00
Justin Clarke Casey 3b0db66b92 * Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaks
* This pushes an identifier for the OpenSim scene to the physics scene.  This allows log messages from the physics scene to identify which OpenSim scene they relate to.
* Thanks Gerhard
2008-12-15 18:39:54 +00:00
Melanie Thielker 008e1fe8df Plumb the TP-Sending packets 2008-12-14 05:49:07 +00:00
Charles Krinke e6eb571c1d Mantis#2725. Thank you kindly, Diva, for a patch that:
Adds missing protocol pieces for EstablishAgentCommunication
event which allows the client to activate CAPS and the EQ for 
child agents.
2008-12-14 02:17:12 +00:00
MW 40bbf886f2 more work on moving FileTransfer code to the clientstack.
Still not enabled.
2008-12-13 15:04:24 +00:00
Jeff Ames 8929bfc369 Add copyright headers. 2008-12-13 12:30:46 +00:00
Jeff Ames 4f9d5d955b Update svn properties. 2008-12-13 12:22:52 +00:00
MW e0765fa6c8 more work on moving FileTransfer code to the clientstack.
Although its still not enabled.
2008-12-12 22:20:13 +00:00
MW 6e07ef9cb9 Add OpenSim.Framework.IClientFileTransfer. 2008-12-12 21:17:49 +00:00
MW e9d905f48c Started to move xfer file transfer code to the LLClientStack, rather than having it in a region module (like it was).
Note:None of this is enabled yet.
2008-12-12 21:08:23 +00:00
Justin Clarke Casey 557567dcf8 * minor: remove some old logging messages 2008-12-09 16:16:16 +00:00
Homer Horwitz 6ab09bc139 Send the creation-date of items to the viewer. This fixes Mantis#2769. 2008-12-06 22:51:41 +00:00
Justin Clarke Casey 5ffbba9a8f * minor: Take out some of the test log output I accidentally left in a couple of commits ago 2008-12-04 21:06:25 +00:00
Justin Clarke Casey 38ca31b37a * Put in the code necessary to allow inventory transfer of whole folders (and their contents) between agents, not just single items
* However, this is not currently activated since it's not absolutely fully tested and there's a bug lurking in there to do with the sending of the BulkInventoryUpdate packets
2008-12-04 19:57:36 +00:00
Justin Clarke Casey 18ba6c3510 * minor: A few tiny bits of documentation and log message cleanup before starting something different 2008-12-01 20:28:00 +00:00
Jeff Ames 077314cdd3 Update svn properties. Add copyright header. Minor formatting cleanup. 2008-11-30 00:51:40 +00:00
Melanie Thielker ef4a80eeaf Should have tried with something other than attachments. Make normal prim
render again :)
2008-11-29 03:18:06 +00:00
Melanie Thielker 287c724b55 A try to better attachment crossing. 2008-11-29 01:33:10 +00:00
Teravus Ovares c9a5215d6d * Fixes Location == Location, and Location != Location 2008-11-28 20:37:21 +00:00
Justin Clarke Casey dfbec673a4 * simplify AddNewClient since making this root without using MakeRootAgent() no longer sets everything up properly 2008-11-28 20:11:17 +00:00
Teravus Ovares 414bf2aaf1 * The equals override of 'Location' is not working as expected. This caused sim restarts to fail because the test that searches for and shutsdown the UDP server listener for that region never found and shutdown the udp server. hence the error message, "only one listener on port".
* This is a high profile candidate for a unit test. (big)
2008-11-28 19:44:44 +00:00
Justin Clarke Casey df9b0e9e11 * refactor: Replace derez destiation magic numbers with an enumeration 2008-11-28 17:18:10 +00:00
Melanie Thielker d20a3c6e5a Cause attachment nibbles to be swapped in terse object updates, too.
This error may have been the root cause of the head attachment bug.
2008-11-27 22:30:54 +00:00
Justin Clarke Casey 8ba6b2b11a * minor: remove mono compiler warnings 2008-11-27 19:51:11 +00:00
Charles Krinke 921692a15f Thank you kindly, Nlin for a patch that:
Adds a new method to IClientAPI to allow adding message handlers 
for GenericMessages (of which "autopilot" is one). Part 2 adds a 
specific autopilot handler in ScenePresence.cs.
2) Removing unused variables and functions.
3) Simplifying the navigation logic in ScenePresence.cs. The 
original patch was somewhat complex because it included orientation
logic for a future enhancement of orienting the avatar to point 
towards the direction being walked. Currently this isn't working, 
though, so I removed the orientation code, which leaves just the 
smaller and hopefully simpler-to-understand movement code.
2008-11-27 05:16:47 +00:00
Justin Clarke Casey 7c2f8e2ee9 * Get rid of the phenomena where the avatar sometimes reverts to the stand animation when flying across borders
* Applies to both standalone and grid mode
* The slight retardation on border cross remains - this is a separate issue
2008-11-26 16:56:57 +00:00
Homer Horwitz 1148d9a11c Removing some direct console output for outputting ImprovedInstantMessage packets. 2008-11-22 17:42:23 +00:00
Melanie Thielker c71863d83e First stage group permissions plumbing 2008-11-22 01:58:36 +00:00
Melanie Thielker ba723a4cf6 Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make all
the internals of the permissions module adapter sane
2008-11-21 22:14:57 +00:00
Justin Clarke Casey 915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life
* A proper inventory interface to follow
* Parallel changes for other inventory partial classes to follow at a later date
2008-11-21 21:16:42 +00:00
Jeff Ames ecac5c9c5a Update svn properties, minor formatting cleanup. 2008-11-21 18:44:48 +00:00
Melanie Thielker e9ad6f7913 Plumb in the list if user IDs to the land module to allow selection
of objects by owner name
2008-11-21 04:41:39 +00:00
Justin Clarke Casey b9c07730f5 * refactor: change some method names and doc in the physics plugin manager
* move the directory choice for plugins outside into RegionApplicationBase
2008-11-20 19:52:55 +00:00
Charles Krinke 164ed57ad3 Mantis#2638. Thank you kindly, Sacha Magne for a patch that:
Implementing "Play sound inworld". Currently a WIP .
2008-11-19 18:41:10 +00:00
Melanie Thielker f518ca7feb Reapply r7369 r7367 r7366 r7370 r7381. This brings it back up to the new
libOMV.
2008-11-19 06:25:34 +00:00
Melanie Thielker 3234472d62 Reverting the texture sending patch and the new libOMV. This makes this
release a direct descendant of the stable 7364, with all the features and
none of the issues.
This omits the following patch chain: r7383 r7382 r7381 r7377 r7375 r7373
r7372 r7370 r7369 r7368 r7367 r7366
2008-11-19 06:15:21 +00:00
Adam Frisby 434afaf717 * Added and removed debug information relating to client connections
* Minor client fixes
* Added the ability for a client to login without a UserProfile, allowing certain alternate clients to connect to the region.
2008-11-18 00:47:30 +00:00
Melanie Thielker 2b8915d679 Make newly created prims be the correct group 2008-11-17 23:43:46 +00:00
Justin Clarke Casey c25a0ea792 * Update libOMV to r2359. This is necessary for the progressive texture patch
* Update libopenjpeg as well for this patch.
* Appears to be okay on a very short sniff test
* Source code will be placed in opensim-libs shortly
2008-11-17 21:00:34 +00:00
Melanie Thielker 0a01826843 Change some comments that have been superseded 2008-11-17 18:16:08 +00:00
Justin Clarke Casey 558704be8b * Remove the TransferRequest and hip debugging console output that crept in recently 2008-11-17 16:14:23 +00:00
Melanie Thielker 4d23d22fb1 Remove a redundant parameter 2008-11-16 23:25:36 +00:00
Melanie Thielker 5e2e05a1c1 Megapatch. Completely remove the multiparameter IM methods. Remove the insecure
fromAgentSession field.
2008-11-16 22:04:01 +00:00
Melanie Thielker 27e557eb98 Introduces the message transfer module. It splits the transfer mechanics off
the IM module and makes it into a module of it's own, which can be used by
all other modules. Removes some ugly hacks. Refer to the IM module to see
how it's used. Also fixes the persistence issue (Mantis #2598)
2008-11-16 00:47:21 +00:00
Justin Clarke Casey 2bb4b45626 * Move test scene construction infrastructure methods to a separate class for future common use 2008-11-14 20:06:44 +00:00
Melanie Thielker d66f3993de Add group permissions to agent inventory.
Contains a migration. May contain nuts.
Please back up your inventory data store. This revision changes the interface
version!! No older regions can connect to these new UGAIM, and the new regions
can't connect to the old UGAIM. Fixes a long-standing issue of permissions loss
Currently persisted on MySQL only.
2008-11-14 18:54:38 +00:00
Teravus Ovares 3e4b094921 * Implements terrain raw upload. You can now upload your .raw terrain files using the Estate Tools.
* Could this be extended in the future to support .oar uploads too?  Only time will tell!
2008-11-14 14:42:00 +00:00
Melanie Thielker 4f91da2488 More groups plumbing 2008-11-14 05:18:39 +00:00
Justin Clarke Casey e2ab576572 * Stop locking the scene presences dictionary for the entire agent crossing part of the login sequence
* This may alleviate a little the freezing experienced by existing avatars when a new client logs in
* Race condition risks look minimal since one wouldn't expect another thread to start fiddling with that presence
2008-11-12 18:12:18 +00:00
Melanie Thielker 47a5d71b7e Prevent pieces from other people's HUDs from displaying at the center of
every user's HUD
2008-11-11 19:08:59 +00:00
Adam Frisby 1493f7349f * Minor typing fixes in AssetCache - now uses base types for nearly everything.
* Code Cleanliness Fixes in LLClientView
* Using field instead of local variable for handlerUpdatePrimGroupRotation (if you notice any new oddities with prim group rotation after this patch, please mantis)
2008-11-11 17:48:36 +00:00
Mike Mazur 32b9975468 If the proxy is on, we need to ignore the extra 6 bytes in the packet. 2008-11-11 03:41:28 +00:00
Melanie Thielker 302d65569f Allow gods to terraform without limits. Respect the Allow Others To
Terraform flag in land.
2008-11-11 01:47:40 +00:00
Jeff Ames 5276c4bdf8 Update svn properties, minor formatting cleanup. 2008-11-11 00:52:47 +00:00
Teravus Ovares d145700115 * Commit allows downloading of the .raw terrain from the estate tools.
* Implements the SendInitiateDownload method in IClientAPI 
* Uses the ITerrainModule Interface to write a terrain file to disk then uses a FileStream to read the binary file from the disk and put it in a byte array. and save to the xFer list.
* It then tells the client to download the file and the client initiates an Xfer request.
2008-11-10 23:56:58 +00:00
Johan Berntsson 22b70495ab The region proxy for the load balancer module works again. The incoming proxy messages were not properly decoded. 2008-11-10 09:50:05 +00:00
Melanie Thielker 298ab2f9cb Prevent updates about other people's HUD objects being sent 2008-11-09 22:52:00 +00:00
Adam Frisby c43e466301 * Enabled GTCache for AssetCache
* Items will now be locally cached for only 24 hours from last access. (Rather than until restart)
* Caveat: Implementing the new caching mechanism means statistics gathering on AssetCache is no longer functional. (Justin - you might want to take a look and see if you can somehow get that back and running if you still need it)
2008-11-09 15:00:26 +00:00
Jeff Ames 8da726c3a8 Update svn properties. Add copyright headers. Minor formatting cleanup. 2008-11-09 01:31:38 +00:00
Melanie Thielker bdf9add8d1 Reintroduce transactionID to the parameter list for SendInstantMessage.
It is required by group IM and also for a proper implementation of item
give, group notice attachments and offline IM.
2008-11-09 01:16:42 +00:00
Adam Frisby ddca72530d * Quick test for Dahlia, returns Packet Processing Loop to Infinite Loop. 2008-11-08 23:17:30 +00:00
Adam Frisby 7308f35a96 * Fixed issue where incorrect braces nesting resulted in a section of PacketQueue getting disabled.
* This means the recent memory fix should now be working correctly - so the current largest memory leak should be fixed. AssetCache still needs to be addressed however.
2008-11-08 21:08:01 +00:00
Adam Frisby fb2a1a6b7c * Fixed a major memory leak in packet processing - PacketQueue.Close is never called, causing the PacketQueue for dead clients to be preserved (including it's contents).
* This patch is highly experimental and may cause clients to not be able to connect, if this is the case, it will be rolled back in approximately 5 minutes.
2008-11-08 20:52:48 +00:00
Adam Frisby 4e94989106 * Added IClientChat to IClientCore
* Updated LLClientView
* Removed defunct SendChatMessage(bytes[]...) method, see http://opensimulator.org/wiki/OpenSim_0.6_IClientAPI#Porting_Guide
2008-11-08 19:29:35 +00:00
Adam Frisby cf0a14bec9 * Added IClientIM to IClientCore interfaces
* Changed SendInstantMessage, dropped fromAgentSession and imSessionID as security precaution, see http://opensimulator.org/wiki/OpenSim_0.6_IClientAPI#Porting_Guide for details on porting.
* Removed unused usings from Framework.*
2008-11-08 17:20:54 +00:00
Adam Frisby b0a90642de * Made ClientLoop non-infinite, ClientLoop will now disengage when the client has logged out.
* Cleaned up a section of LLClientView
* Removed unused 'using' from HTTPServer 
* Please test this patch.
2008-11-08 16:22:36 +00:00
Adam Frisby 6d5248441d * Implementing first of the 0.6 IClientAPI Changes
* Introducing IClientCore - this will be the key replacement for IClientAPI in the long run, it has a very minimal set of methods designed to allow you to access specialist API's.
* See https://lists.berlios.de/pipermail/opensim-dev/2008-September/003049.html for the early discussion on this.
2008-11-08 16:09:15 +00:00
Justin Clarke Casey bf9384d594 * Apply http://opensimulator.org/mantis/view.php?id=2582
* Send prim flags as booleans from LLClientView rather than in the native LL array
* Thanks idb
2008-11-07 22:57:32 +00:00
Melanie Thielker 48c6d052d9 Attachments, attachments, and, did I say attachments?
Too many fixes to list.
2008-11-07 05:48:44 +00:00
Teravus Ovares f0bf3df024 * Fix half of the issue behind the long standing 'UseCircuitCode' packet spam from libOMV clients. AckPacket.Header.Sequence was 0. This caused LibOMV to ignore it.
* There's another patch over at http://jira.openmv.org/browse/LIBOMV-415 to fix the 'resend forever' issue.
2008-11-07 01:05:22 +00:00
Jeff Ames 486ac1e12f Update svn properties, minor formatting cleanup. 2008-11-06 22:24:34 +00:00
Justin Clarke Casey c6dad833f5 * minor: remove some mono compiler warnings 2008-11-06 21:01:16 +00:00
Justin Clarke Casey d31d02c373 * refactor: Split BeginRecieve() into BeginReceive() and BeginRobustReceive() 2008-11-06 20:10:39 +00:00
Justin Clarke Casey 5a852321e0 * Stop passing along epSender explicitly where we are really using the constantly reused ep sender field 2008-11-06 19:59:59 +00:00
Justin Clarke Casey 427a80bba5 * test: Add assert checking that the circuit which trigger the socket exception has been closed 2008-11-06 19:52:06 +00:00
Justin Clarke Casey 29691a3d36 * Test to ensure that the udp server stays active after receiving a SocketException on BeginReceive 2008-11-06 19:35:57 +00:00
Justin Clarke Casey 8477aab8e0 * refactor: factor out test packet send method in client stack unit tests 2008-11-06 18:27:56 +00:00
Justin Clarke Casey f7f448bc78 * Fix capitalization typoes in packet throttle that happened to be the name of existing fields
* This should (hopefully) allow TestClient and stuff built on top of it to work again
* Will probably come back later and change variable names to stop this happening again
2008-11-05 22:17:47 +00:00
Justin Clarke Casey 892e7bf9fb * Properly use the default value if the LindenUDP.ClientStack section exists by the client throttle setting does not
* Old behaviour was to throw an exception on startup
* Print out client stack setting temporarly for debug purposes
2008-11-05 20:42:37 +00:00
Justin Clarke Casey fc36d7fdf2 * Set default client throttle multiplier to 2 (old value was effectively 8). See OpenSim.ini.example for details as to what this means
* Really this should be 1, but I think that this would be too slow compared to a Second Life server until we improve our ability to send textures of variable quality
* This may improve one aspect of sim performance where there are many avatars.  However, there are still other performance problems that are unrelated to this change
* Value may be further tuned
* Removed temporary decals since the multipler setting will stick around now
2008-11-05 19:23:59 +00:00
MW 204ef95843 Moved a couple of more configuration fields to ConfigSettings 2008-11-05 18:00:45 +00:00
Justin Clarke Casey 4ff0c39153 * Expose a client_throttle_multiplier setting in OpenSim.ini. This multiplier is applied to all the client throttle settings received by the client
* This should probably be 1, but currently by default it is 8, to reflect what was being eon3 in OpenSim before this revision.  So if the client requested a maximum throttle 
of 1500 kilobits per second, we would actually send out 1500 kilobytes per second
* Adjusting this multiplier down towards 1 may improve your OpenSim experience, though in other situations it may degrade (e.g. if you're using a standalone over high bandwidth 
links)
* This is currently a user setting because adjusting it down may currently reveal other OpenSim bugs.
2008-11-03 21:09:30 +00:00
Justin Clarke Casey 8dbd0118a8 * Pull client throttle multipler setting out of config source. Not an adjustable setting yet (and then only for debug purposes) 2008-11-03 19:02:44 +00:00
Justin Clarke Casey 6ea24799dd * minor: don't need to null check config source in clientstack settings since this is always non null 2008-11-03 18:49:25 +00:00
Justin Clarke Casey 8c71954e08 * Use nini to pass config information to the client stack, rather than the ClientStackUserSettings class
* This conforms better to other module usage
2008-11-03 18:33:35 +00:00
Adam Frisby 4c24b1bc9b * Massive cleanup of LLClientView, removed a few hundred unnecessary value initialisers, etc. 2008-11-01 22:34:04 +00:00
Homer Horwitz 38e8853e57 Megapatch that fixes/adds: friend offer/deny/accept, friendship termination,
on-/offline updates, calling cards for friends.
This adds methods in the DB layer and changes the MessagingServer, so a full
update (incl. UGAIM) is necessary to get it working. Older regions shouldn't
break, nor should older UGAIM break newer regions, but friends/presence will
only work with all concerned parts (UGAIM, source region and destination
region) at this revision (or later).
I added the DB code for MSSQL, too, but couldn't test that.
BEWARE: May contain bugs.
2008-11-01 22:09:48 +00:00
Justin Clarke Casey b03e34dd2d * Fix http://opensimulator.org/mantis/view.php?id=2517
* Don't save attachments on saving oar, which stops them coming back as ghost prims
2008-11-01 21:28:52 +00:00
Justin Clarke Casey 465a931c05 * In the client stack, if the BeginReceive() throws an exception then do print this out to the log once
* This may help us detect if mysterious UDP disconnects are happening because of this.
* Shouldn't be any functional change but I would appreciate a buddy check from Teravus if he has time (as for all client stack changes)
2008-10-31 19:41:07 +00:00
Justin Clarke Casey 5feaff8524 test: Extend malformed packet test to actually check that a valid packet can get through after the malformed ones have been sent 2008-10-30 22:32:23 +00:00
Justin Clarke Casey 419775c72b * test: Test that the client stack doesn't completely blow up if a client passes it malformed data 2008-10-30 20:17:30 +00:00
Justin Clarke Casey 2fb8089d8c * Slightly tweak to teardown test, try a circuit which never existed in the first place 2008-10-30 19:46:52 +00:00
Justin Clarke Casey 22ec3e7952 * minor: spacing adjustment before next commit 2008-10-30 19:43:58 +00:00
Justin Clarke Casey bc1b69b2fd * test: fill out circuit teardown test 2008-10-30 19:42:25 +00:00
Justin Clarke Casey 80e87747f3 * test: Refactor test infrastructure for future client teardown test 2008-10-30 19:26:38 +00:00
Justin Clarke Casey 8a3157aa6a * Check in (disabled) results of not persisting avatar textures but rather sending ImageNotFound to clients if avatar textures are missing
* Whilst this does automatically get the client to rebake, on crossing a region border the 'local' assets are left behind
* There may be a cunning solution (such as squirting the assets on region crossing, or having them fetched from the original region) but 
instead I'm going to opt for the easy solution of keeping them in the asset database, for now
2008-10-29 18:38:10 +00:00
Melanie Thielker f9eb3712ed Remove a debug output 2008-10-29 00:32:41 +00:00
Melanie Thielker 766269a59b Plumbing along.... 2008-10-29 00:15:39 +00:00
Justin Clarke Casey 1ff9709ea3 * Possibly fix grey avatar appearance problems
* And hopefully rebaking all the time should no longer be necessary now
* It turns out that when the client baked the texture, the uploaded asset had the Temporary flag to true (Temporary is actually deprecated).  
* It also had the StoreLocal flag set to true, which signifies that the asset should be stored locally.  If it disappears we should reply to the asset request with 
ImageNotInDatabasePacket
* However, last time this was enabled some clients started crashing.  This may well no longer be the case and needs to be tested, but in the mean time we will store 
the asset instead.
* This needs to be resolved in a better way, possibly by starting to send the ImageNotInDatabase packet again instead
2008-10-28 21:31:23 +00:00
Justin Clarke Casey 247b806134 * minor: Add documentation to some of the appearance methods, change some logging messages 2008-10-28 17:35:36 +00:00
Jeff Ames b2d6b0a3d4 Update svn properties, minor formatting cleanup. 2008-10-27 01:43:59 +00:00
Melanie Thielker f7e44250bf Committing a small fix for EventData along with more plumbing work 2008-10-26 19:32:41 +00:00
Melanie Thielker c49e1b8fb6 A few more bots to yesterday's plumbing: change instant message method
signature
2008-10-25 13:53:17 +00:00
Melanie Thielker 26643c4a9d More plumbing and some wires 2008-10-25 01:42:43 +00:00
Melanie Thielker f85be9b39a Fix a leak in the plumbing 2008-10-24 23:55:28 +00:00
Melanie Thielker 64f9f03e9a Plumb some more 2008-10-24 23:04:55 +00:00
Justin Clarke Casey c519b80680 * minor: eliminate some mono compiler warnings 2008-10-24 21:40:05 +00:00
Justin Clarke Casey 7b224677c1 * Stop passing in unnecessary pameters to CreateNewCircuit 2008-10-24 21:34:18 +00:00
Justin Clarke Casey 3340a579e7 * Stop creating a circuit if the client fails authentication (i.e. the region server wasn't told that it was coming)
* This moves authentication from the client thread (where failure was difficult to detect) to the particular thread handling that packet
* I've kept the authentication outside of the crucial clientCircuits lock (though any delay here is probably swamped by the other delays associated with login)
* Also added more to the unit test to ensure this doesn't regress
2008-10-24 21:22:54 +00:00
Justin Clarke Casey 91c2e53277 * Change AddClient test such that we now successfully authenticate
* The fact that the assert passed even when authentication failed reveals a bug in the code that will be corrected soonish
2008-10-24 19:40:45 +00:00
Justin Clarke Casey 9fa7264c73 * minor: refactor out AddUser test setup to common method 2008-10-24 19:10:25 +00:00
Melanie Thielker a9b1119e49 Remove a debug output dump 2008-10-24 15:04:35 +00:00
Melanie Thielker 6775b7d02d Lotsa plumming :) 2008-10-24 14:53:13 +00:00
Justin Clarke Casey 369aa8f46b * minor: Remove unused public PacketServer variable.
* If this was important to you please reinsert and we can put it in a recognized interface.
2008-10-23 20:10:19 +00:00
Justin Clarke Casey c379c66c7c * Reenable assert for the add circuit test
* This checks that a client circuit is established when the udp server is given a use client circuit code packet
* And checks that other circuit codes do not exist
2008-10-23 19:51:10 +00:00
Justin Clarke Casey 6101202403 * Revert to executing existing setup if an added circuit did not already exist
* Not sure why things still worked in the presence of this bug - possibly the problem is compensated for later on.  If you are having udp session problems this bug fix may help 
(though no guarantees).
2008-10-23 19:25:40 +00:00
Justin Clarke Casey d30a596989 * Add missing file from last commit. Yay for continuous integration! 2008-10-23 19:16:33 +00:00
Justin Clarke Casey f4ad99f89d * Introduce a basic udp circuit test for adding a client
* Temporarily disabled assert because it just picked up an existing bug.  Yay for tests!
2008-10-23 19:08:54 +00:00
Justin Clarke Casey ee3c428040 * Refactor LLUDPServer slightly so that unit tests can pass in data synchronously. Shouldn't be any functional change 2008-10-23 17:16:13 +00:00
Melanie Thielker f44742f75f Pare the groups module down to basics. Adjust dependent files so that a
real groups module can even be implemented.
2008-10-21 22:54:31 +00:00
Justin Clarke Casey 923f9fb749 * minor: remove mono warnings 2008-10-19 18:45:41 +00:00
Teravus Ovares ed8a20dd60 * Fixed UDP server (again)
* Guys, there's an endless loop there *ON PURPOSE*.  Please don't try to *fix* it.  We must continue to process the UDP stream buffer on clients that disconnected nastily until it ends or the UDP server accept thread will die a horrible death.
2008-10-19 17:02:39 +00:00
Homer Horwitz 1ee10d919a Added calling cards. Fixes Mantis#2409 and part of #1515. 2008-10-19 16:49:10 +00:00
Teravus Ovares 6362760d30 * Null check before UseCircuitCode Check or the server crashes on packet loss! 2008-10-19 01:06:50 +00:00
Melanie Thielker efe3f3eb2a Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
2008-10-18 05:51:36 +00:00
Justin Clarke Casey 739f1591da * Remove mono warnings 2008-10-17 20:45:07 +00:00
Justin Clarke Casey 400314e884 * Finally, don't worry about doing containment checks on other dictionaries if we are adding a client
* Regarding an earlier change, I think it would be possible to eliminate the creation of new IPEndPoints on every end receive if we did the client circuit lookup before starting 
the next receive.  However, this would be a performance trade off and hence not worth trying without performance testing
2008-10-17 20:38:00 +00:00
Justin Clarke Casey 4ccac88cf6 * Don't worry about trying to populate the other dictionaries if a client's circuitcode is already found in the first one 2008-10-17 20:30:50 +00:00
Justin Clarke Casey 90d69a0523 * close two potential race conditions where a new asynchronous UDP recieve could overwrite an existing endpoint that had not yet been used by the previous thread
* in practice these race conditions were probably pretty rare
2008-10-17 20:14:31 +00:00
Justin Clarke Casey 84492fee01 * Temporarily resume creation of IPEndPoint on every call
* This widened what I think is an existing race condition where asynchronous recieves could potentially stomp on each other's end points (though this must occur very rarely, if at 
all, in reality)
2008-10-17 19:08:53 +00:00
Justin Clarke Casey 7891f821e2 * Instead of creating a new IPEndPoint on every udp packet receive, reuse the existing one
* This requires copying details into a new endpoint when it needs to be stored in client/circuit code hashes
2008-10-17 17:57:18 +00:00
Justin Clarke Casey e4b8912296 * reverse part of a change that accidentally crept in with the last revision 2008-10-17 17:08:14 +00:00
Justin Clarke Casey 138bcf6fff * Apply a modified version of http://opensimulator.org/mantis/view.php?id=2290
* This allows multiple user profile providers to be specified in OpenSim.ini separated by commas
* If multiple providers are specified then a request for a user profile will query each in turn until the profile is either found or all have been queried
* Unfortunately I don't believe this order can currently be specified, which if true is something that will need to be fixed.
* Thanks to smeans for the original patch.
2008-10-17 16:44:05 +00:00
Justin Clarke Casey 82b7374ed2 * minor: get rid of pointless ipeSender 2008-10-16 19:50:12 +00:00
Justin Clarke Casey 98fdf504d9 * Truncate outgoing media and music urls to 254 characters.
* Hopefully this will resolve http://opensimulator.org/mantis/view.php?id=2383
2008-10-15 20:24:44 +00:00
Justin Clarke Casey 230835dbaa * refactor: Remove OutPacket from the IClientAPI
* I believe this is reasonable since code outside the Linden client stack shouldn't be aware of the packet format being used
* I would love to have made the method protected, but the LoadBalancerPlugin is still calling it and resolving that would require more work
2008-10-15 17:06:47 +00:00
Justin Clarke Casey 87e85489f3 * refactor: move viewer effect packet into LLClientView 2008-10-15 16:52:48 +00:00
Justin Clarke Casey 9324c3f110 * refactor: Move error logging from GetUserDetails up to callers, since there are some circumstances in which not finding a user is not an error 2008-10-15 16:35:27 +00:00
Justin Clarke Casey 2226626fec * refactor: move code concerned with creating a subsequent image packet to LLClientView 2008-10-15 15:30:27 +00:00
Justin Clarke Casey 063ba29ff8 * refactor: rename SendImagePart to SendImageFirstPart since this is more descriptive of its actual function 2008-10-15 14:56:58 +00:00
Justin Clarke Casey b70a285373 * Send an avatar update to other clients when an avatar rotates, as well as when it moves
* This should fix a long standing issue where you often wouldn't see other people simply turn around without moving at all
* Arguably lastPhysRot (to mirror lastPhysPos) is not a good name, may change variable names later
2008-10-14 20:28:34 +00:00
Justin Clarke Casey 58f8c042f6 * minor: change m_debug to m_debugPacketLevel since that's what it is 2008-10-14 18:53:56 +00:00
Justin Clarke Casey 3b9400bcea * refactor: rename SendKiPrimitive to SendKillObject since this appears more descriptive of what it actually does 2008-10-14 14:43:46 +00:00
Justin Clarke Casey 8ab50fe3ee * Make KillObjectPackets reliable
* This may help http://opensimulator.org/mantis/view.php?id=2377 where large linksets do not always correctly delete - since a lost kill packet to the client could result in 
the symptoms described
2008-10-14 14:27:00 +00:00
Homer Horwitz f52c5febd3 Add EventInfoRequest and EventInfoReply packets.
Note: New file, run prebuild.
2008-10-12 16:29:29 +00:00
Adam Frisby d7aedf343a * Small fix for when PacketPool is disabled to prevent it from crashing immedietly. 2008-10-12 01:09:58 +00:00
Adam Frisby dcdfde834f LLUDP Client View
* Experimenting with the PacketPool mechanism.
* It's still disabled in the code, however there's now a flag to enable it.
* Converted to use Generic Collections vs Hashtables, also now uses a list of 'OK to pool' packets, starting with the high volume PacketAck packet.
2008-10-12 00:56:54 +00:00
Homer Horwitz bed6c763a5 * Rework llParcelMediaCommandList
* Add missing PARCEL_MEDIA_COMMAND_* constants
* Fix a copy/paste error in SendParcelMediaUpdate
llParcelMediaCommandList should work now
2008-10-11 15:18:55 +00:00
Melanie Thielker 544daf1c76 Plumb the remaining search packets and replies. 2008-10-11 05:59:12 +00:00
MW 0644977819 added a list of SurfaceTouchEventArgs to the IClientAPI.OnGrab event, for the new surface touch parameters in 1.21 viewers. 2008-10-10 17:05:43 +00:00
MW 5be7442736 added a list of SurfaceTouchEventArgs to the IClientAPI.OnGrabUpdate event, for the new surface touch parameters in 1.21 viewers.
TODO: add the touch args to OnGrabObject and OnDeGrabObject.
2008-10-10 16:01:59 +00:00
Melanie Thielker 5c5a640aba A bit more estate fudging 2008-10-10 02:06:34 +00:00
Justin Clarke Casey 7bdfc16535 * fix windows build break - it helps if one actually puts in using statements and spells dlls correctly 2008-10-09 21:43:43 +00:00
Justin Clarke Casey 997eec671a * minor: get rid of an unecessary casting and logic check 2008-10-09 20:02:40 +00:00
Justin Clarke Casey 8ad0249969 * refactor: separate process of extracting packet from received data from actually processing that packet 2008-10-09 18:09:25 +00:00
Justin Clarke Casey 285ae803e2 * minor: initialize udp server in unit test 2008-10-09 18:00:38 +00:00
Justin Clarke Casey 919d907a3d * Create project for LindenUDP ClientStack tests
* No functional tests yet
2008-10-09 16:52:33 +00:00
Justin Clarke Casey db0d90c737 * minor: very small doc addition 2008-10-09 16:23:11 +00:00
Teravus Ovares ac674ccbfc * Fixes simstats reporter. I'm sure this issue caused all sorts of things related to regionflags and capacity. I'm sorry, the object capacity that you dialed is not valid.. please check the number and dial again. 2008-10-09 11:44:26 +00:00
Charles Krinke ac443559d1 Mantis#2354. Thank you kindly, Tglion for a patch that:
The average-value of modify.ModifyBlock.Height in LLClientView.cs:4170 
seem to be incorrect or it isn't the average? Mhhh...
So the terrain build -> Flaten Sphere is unuseable.
I have put in a patch that contains a workaround while 
the main problem is not solved.
2008-10-08 14:51:55 +00:00
Justin Clarke Casey 4ed6e78d1a * Comment out debug throttle output that I had accidentally left in 2008-10-07 21:44:29 +00:00
Justin Clarke Casey 914c733505 * Temporarily revert r6714 which changed agent throttle number interpretation
* I suspect the restriction stopped the very large number of packet resends that occur on certain operations, which led to other failures.
2008-10-07 20:04:43 +00:00
Justin Clarke Casey 48d86fb23f * Apply http://opensimulator.org/mantis/view.php?id=1207
* Implmements llModifyLand() and a check for the "Allow others to terraform flag"
* Thanks tglion!
2008-10-07 14:49:12 +00:00
Justin Clarke Casey cb7a9eaa09 * Stop the sim stats reporter reusing the same SimStatsPacket for all clients
* I believe this was the cause of the remaining packet_out_of_order messages in the Linden client logs
* There were race conditions where multiple clientstacks would overwrite each other's sequence numbers
2008-10-06 19:52:54 +00:00
Justin Clarke Casey d18aff3310 * restore Header.Resent field setting for resent packets
* without this, the client appears to reset the sequence of packets its expecting
2008-10-06 16:57:58 +00:00
Justin Clarke Casey 33d957207c * Change interpretation of asset throttle values to bits per second rather than bytes per second
* Changing network bandwidth in the preferences will now have a much more noticeable effect - a user may want to increase this if data is being slow to download from opensim
2008-10-06 16:48:41 +00:00
Melanie Thielker d834996bbe Implement Parcel -> ForceOwnerToMe god mode packet 2008-10-06 08:19:18 +00:00
Charles Krinke e575ef7ad2 Revert r6697 patch as the build fails. 2008-10-06 00:58:43 +00:00
Charles Krinke 4f6cdc08d6 Mantis#1207. Thank you, TGlion for a patch that addresses:
Implementation of llModifyLand() and There is a bug on 
permission-check of land-terraforming: x an y-coordinates 
are interchanged on function-call ExternalChecksCanTerraformLand.
Correct: x is west, and y is north. 2) Missing check of 
"Other allow to terraform-flag" (Parcel.ParcelFlags.AllowTerraform)
2008-10-06 00:46:27 +00:00
Melanie Thielker 6ab5b523f8 Implements ObjectOwner god mode packet (Set Owner To Me admin option) 2008-10-06 00:09:49 +00:00
Teravus Ovares f8acdeb437 * Green dots on the mainmap for avatar.
* Initial implementation
* You'll only be able to seen green dots on regions on the map that have been updated.
2008-10-06 00:00:55 +00:00
Melanie Thielker a3136d2bb1 Revert the packet resend timing changes. They caused login issues in primmy
regions.
2008-10-05 16:43:58 +00:00
Melanie Thielker c84987426b Craters, take 2. Remove old discard logic and absolute discard timer.
Introduce a resend counter on the ack queue. The header "Resent" field is
now obsolete. Implement 3 resends on reliable packets, variable.
Increase default resend timeout to 3000ms and default silence threshold
to 350ms.
2008-10-05 14:44:26 +00:00
Teravus Ovares a243a4aaf5 * An update to the UDP Packet handler which might make the giant sized craters go away. 2008-10-05 13:06:03 +00:00
Melanie Thielker e5929f4a1c Remove a console debug output 2008-10-05 05:00:30 +00:00
Melanie Thielker 2cb89124c7 Small bug fix 2008-10-05 03:01:19 +00:00
Melanie Thielker 13e3ffada3 Plumb in the DirPlacesReply packet 2008-10-05 02:25:53 +00:00
Melanie Thielker f52d779550 Plumb packet DirPlacesQuery for search module 2008-10-04 22:29:37 +00:00
Melanie Thielker c28e8fcd67 Unclutter rezzing methods by removing the ad hoc permissions parameters.
Thise were client supplied untrusted values we never used anyway.
2008-10-04 15:54:21 +00:00
Melanie Thielker 74f89fb22d Add "Drop" functionality to pie menu 2008-10-04 01:09:22 +00:00
Justin Clarke Casey 4920e52f11 * oops, fix build break.
* refactoring
2008-10-03 19:42:35 +00:00
Justin Clarke Casey 743e336bf3 * Put in some infrastructure to allow tweaking of packet queue throttle values for the total throttle (the one that throttles all packet output)
* Not complete yet
2008-10-03 18:06:45 +00:00
Justin Clarke Casey 70124a3213 * refactor: make startup a template method 2008-10-03 15:11:29 +00:00
Dr Scofield 5c0a0bc2e0 This changeset changes the way chat from client is routed:
old way: each region module interested in chat from client had to
     	 - subscribe to scene.EventManager.OnNewClient
	 - then in its OnNewClient delegate it would subscribe to
           client.OnChatFromViewer to capture chat messages coming

     new way: ChatModule is the only region module that uses the "old
         way" approach but is now forwarding all client chat via
         scene.EventManager.OnChatFromClient
	 - each region module interested in chat from client now only
           subscribes to scene.EventManager.OnChatFromClient

this not only simplifies code, but also allows us to substitute
ChatModule with derived classes (ConciergeModule is going to be one
example).

Also, this changeset changes ChatFromViewer to ChatFromClient as it
doesn't necessarily have to be a viewer that is a chat source.

i've taken great care to only comment out those OnNewClient delegates
that were only used for getting at the client chat --- hope it's not
breaking anything.
2008-10-03 14:53:11 +00:00
Justin Clarke Casey 8c55f3eaa6 * minor: remove warnings (the code cleaners strike again) 2008-10-03 14:18:17 +00:00
Melanie Thielker 7f007d8ed0 Mantis #1360
Thank you, idb, for a patch to implement the packet and plumbing for
the material settings.
2008-10-03 12:00:13 +00:00
Teravus Ovares 8de395d379 * EventQueueGet is now working.
* Switched it on by default
* Updated OpenSim.ini.example to reflect this
* Caught a UDP Server issue that occurs when the network pipe is saturated
* Still experimental :D
2008-10-03 09:53:49 +00:00
Homer Horwitz 423d950a69 - Fixed a small off by one error in sending MapBlocks
- Removed MapBlockData.Flags; it isn't used anywhere (maybe MapBlockData.RegionFlags replaced it?)
2008-10-02 22:14:34 +00:00
Homer Horwitz b1c1de2fbe - Added SendScriptTeleportRequest to IClientView and classes implementing it.
- Implemented llMapDestination.
2008-10-01 21:30:48 +00:00
Justin Clarke Casey 7e35e4c816 * minor: oh, and comment out the now unused logger as well 2008-10-01 20:56:34 +00:00
Justin Clarke Casey 231b8c2a67 * minor: Comment out temporarily statistical counter I accidentally left in from the last commit 2008-10-01 20:55:09 +00:00
Justin Clarke Casey cbb9693ef4 * Try bumping packet resend timeout up to 2 seconds instead of 1
* This actually probably doesn't make a huge difference.  We still end up resending a massive number of packets in quite a few situations, but it's not easy to consistently 
reproduce this.
* Might really need some throttling of packet send to the client on the OpenSim end.
2008-10-01 20:54:28 +00:00
Justin Clarke Casey 4d32cd34e8 * refactor: rename interface to put standard I prefix in front 2008-10-01 20:30:30 +00:00
Justin Clarke Casey 95a3d6372d * Fix bug in LLPacketHandler where the tickcount when a packet was approximately sent was not being stored in the ack record
* This meant that acks were being sent out every 250ms when the ack timer fired, rather than when they had actually aged past m_ResendTimeout
2008-10-01 17:18:20 +00:00
Justin Clarke Casey 75b6011a24 * minor: remove warning 2008-09-29 19:11:48 +00:00
Charles Krinke 04be8726d3 Mantis#296. Thank you kindly, Idb for a patch that resolves:
Estate/ Manager Owner Uses the Region/Estate Menu Region TAB, 
and uses "Teleport Home All Users..." (Action Button), the 
action will complete but no one will be teleported and all 
users still function in the region ok.
2008-09-28 22:01:37 +00:00
Melanie Thielker 1d5b2bb8bc Add some methods to allow modules so set client view options 2008-09-28 19:45:42 +00:00
Melanie Thielker 95c3e0883c Mantis #2288
Correct a typo in namespace declaration
Also adds a new flag to the PacketManager to force retention of packets
marked reliable (default off)
2008-09-28 18:07:06 +00:00
Teravus Ovares 07b32c9320 * Replace a generic error handler. 2008-09-27 22:06:51 +00:00
Teravus Ovares 98632ee594 * Event queue is now polling..
* returns FAKEEVENT instead of the connection returning a 502.   It doesn't like our 502's for some reason..  so, in leau of this..    send it a fake event.
* Once again, this is still 'really early' code, so please don't blame us if you have no more threads left.
2008-09-27 22:05:36 +00:00
Teravus Ovares 16b6738cda * Patch from JHurliman
* Updates to libomv r2243, 
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman. 
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00
Justin Clarke Casey 97323345ee * minor: remove warnings 2008-09-26 15:28:14 +00:00
Teravus Ovares 6b13730bc7 * Wind updates. Still random.. but in 4 directions instead of two!
* It seems kind of silly to be building a 256x256 array just to use two 16 float blocks..  but for now the layerdata routine requires it so we'll go along with that.
* We only fill a 32x16 area of the 256x256 float array with data.
* We use patches 0,0 and 0,1 for the first and second patch to determine the direction and magnitude of the wind.
2008-09-26 12:56:17 +00:00
Charles Krinke 339671afc6 Mantis#2017. Thank you kindly, Tyre, for a patch that solves:
Check the client dialog box (from top menu) WORLD / REGION ESTATE 
/ REGION tab. The client dialog box seems to have a hard limit of 
about 32 characters per line available for displaying the region 
version number. Our regions are sending a string which is greater 
than the limit, causing the client to wrap the text and look ugly.
2008-09-25 14:57:40 +00:00
Teravus Ovares 4004172106 * Adds some Wind
* A little wind wouldn't hurt anyone, right?    This is the 'slightly breezy' setting..    hopefully you won't notice 'much' of a difference.
* It turns out the terrain patch routine is similar enough to the wind version that it can be used to hack together a breeze generator with a few mods.
* Not much configuration..   yet.  You only get breeze updates in the general vicinity of your camera now to keep bandwidth usage down.. and we're not talking about 'much' movement at the moment.
* initial version...      could use improvement I'm sure.
2008-09-25 11:46:05 +00:00
Melanie Thielker f3c8963c86 Convergence is almost complete. This brings the diff between the API to < 10k
and makes it use a common set of types in both engine. Fixes the issues with
running both engines and HTTP requests / listens / timers etc..
Also fixes a couple of minor Scene issues and a CTB by nullref.
2008-09-25 05:13:44 +00:00
Dr Scofield 201805172f cleanups, fixing REST appearance services. 2008-09-24 11:39:08 +00:00
Jeff Ames 3f79e6b3e7 Update svn properties, formatting cleanup. 2008-09-23 23:14:00 +00:00
Melanie Thielker 70d264ee6c Update the permissions system to handle scripts and notecards the way
it was meant to. No functional changes, just better code
2008-09-23 03:36:16 +00:00
Melanie Thielker 48672c7fd6 Move script and notecard open perms checks from ClientView to the
perms module
2008-09-22 22:33:00 +00:00
Dr Scofield 7def786ef4 cleanups in inventory REST code. also, disables digest authentications
for inventory REST calls for the time being, as firefox, curl, and
also python's urllib2 cannot authenticate using digest auth.

fix permission checking for prim inventory to be the same as for
normal edit ops.
2008-09-22 11:20:09 +00:00
Justin Clarke Casey 1a71a3a567 * Fix http://opensimulator.org/mantis/view.php?id=2189
* Allow a grid mode region simulator to properly shutdown even if the grid service is offline
2008-09-21 16:58:14 +00:00