Commit Graph

498 Commits (56dbab35e122e724c9277b05820417a05ad8a1be)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 315fa06c75 refactor: Move another RezSingleAttachment() from Scene.Inventory to AttachmentsModule 2010-03-12 23:20:38 +00:00
Justin Clark-Casey (justincc) 582375509c refactor: move RezSingleAttachmentFromInventory() from SceneGraph to AttachmentsModule 2010-03-12 22:48:49 +00:00
Justin Clark-Casey (justincc) b9f5cd75bc refactor: move client invoked AttachObject from SceneGraph to AttachmentsModule 2010-03-12 22:39:15 +00:00
Jeff Ames f58a0394ed Formatting cleanup. Add copyright notices. 2010-03-10 13:15:36 +09:00
unknown 98f91a252c - parcel blocking, region crossing blocking, teleport blocking
Signed-off-by: Melanie <melanie@t-data.com>
2010-03-09 22:43:55 +00:00
Diva Canto f4c165afe7 Bug fix: store correct position information upon logout. Fixes mantis #4608 2010-03-06 08:21:54 -08:00
John Hurliman 27b8d13057 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-05 17:05:15 -08:00
John Hurliman 36afd0bfd1 * Cache packed throttle data to avoid repeated allocations in CheckForSignificantMovement()
* Removed a lock on "return m_neighbours.Count" in GetInaccurateNeighborCount(). Dictionary<>.Count by itself does not benefit from locking
2010-03-05 17:04:20 -08:00
Justin Clark-Casey (justincc) 395f343498 refactor: Move DetachSingleAttachmentToInv to region module
need to rationalize method names later
2010-03-06 00:07:47 +00:00
Justin Clark-Casey (justincc) 60553e62a3 refactor: begin to move attachments code into a region module 2010-03-05 23:18:47 +00:00
Justin Clark-Casey (justincc) edb176447b Fix bug where approximately half the time, attachments would rez only their root prim until right clicked (or otherwise updated).
The root cause of this problem was that multiple ObjectUpdates were being sent on attachment which differed enough to confuse the client.
Sometimes these would eliminate each other and sometimes not, depending on whether the scheduler looked at the queued updates.
The solution here is to only schedule the ObjectUpdate once the attachment code has done all it needs to do.
2010-03-03 22:14:06 +00:00
Diva Canto 14073831d2 Fixes Region.Framework tests. Although these tests don't fail, they need to be rewritten, because they are doing agent manipulations in the wrong way, so they're fairly meaningless. 2010-03-02 07:53:52 -08:00
Diva Canto 5c5966545d Initial Online friends notification seems to be working reliably now. All this needs more testing, but everything is there. 2010-02-28 12:07:38 -08:00
John Hurliman 71c6559a91 Merge branch 'presence-refactor' of ssh://opensimulator.org/var/git/opensim into presence-refactor 2010-02-22 14:10:19 -08:00
John Hurliman 7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
Melanie 1f45e6c649 Merge branch 'master' into presence-refactor
This brings presence-refactor up to master again
2010-02-22 03:00:59 +00:00
Jeff Ames af265e001d Formatting cleanup. 2010-02-15 19:21:56 +09:00
Melanie c033223c63 Merge branch 'master' into presence-refactor 2010-02-15 00:20:48 +00:00
Revolution 9821c4f566 Revolution is on the roll again! :)
Fixes: Undo, T-pose of others on login, modifiedBulletX works again, feet now stand on the ground instead of in the ground, adds checks to CombatModule. Adds: Redo, Land Undo, checks to agentUpdate (so one can not fall off of a region), more vehicle parts. Finishes almost all of LSL (1 function left, 2 events).

Direct flames and kudos to Revolution, please

Signed-off-by: Melanie <melanie@t-data.com>
2010-02-14 22:18:46 +00:00
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
Melanie 1d75ad9fd5 Merge branch 'master' into presence-refactor 2010-02-08 21:54:26 +00:00
Justin Clark-Casey (justincc) 9f4883d146 refactor: Reuse SceneObjectGroup.IsAttachmentCheckFull() in Scene.AddSceneObject since this wraps a check that is much less clear 2010-02-08 19:10:54 +00:00
Justin Clark-Casey (justincc) 00947cf2ca Add EventManager.OnIncomingSceneObject event which is triggered by an incoming scene object
Add a read-only Attachments property to ScenePresence
2010-02-08 19:02:20 +00:00
Melanie baaf660511 Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken.
Please check!
2010-02-08 15:53:38 +00:00
Melanie 2953bee1f4 Revert "change position of OnAttach event firing so that this also happens when a user teleports into a region"
The behavior introduced here is not compatible with SL

This reverts commit b6bee4999c.
2010-02-04 17:11:06 +00:00
Justin Clark-Casey (justincc) b6bee4999c change position of OnAttach event firing so that this also happens when a user teleports into a region 2010-02-03 15:35:41 +00:00
Justin Clark-Casey (justincc) 05a3e37b85 Apply http://opensimulator.org/mantis/view.php?id=3334
Send continuous touch() events if the left mouse button is held down while moving over an object
This conforms with Linden Lab practice
Thanks Revolution
2010-01-29 23:12:08 +00:00
Diva Canto 00f7d622cb HG 1.5 is in place. Tested in standalone only. 2010-01-28 19:19:42 -08:00
Justin Clark-Casey (justincc) 38cfc9366c Fix a problem where llDie() calls were sometimes leaving dead objects behind.
When an object was deleted, the remove script instance call was aggregating the scripting events as normal.
This would queue a full update of the prim before the viewer was notifed of the deletion of that prim (QuitPacket)
On some occasions, the QuitPacket would be sent before the full update was dequeued and sent.
In principle, you would think that a viewer would ignore updates for deleted prims.  But it appears that in the Linden viewer (1.23.5),
a prim update that arrives after the prim was deleted instead makes the deleted prim persist in the viewer.  Such prims have no properties
and cannot be removed from the viewer except by a relog.
This change stops the prim event aggregation call if it's being deleted anyway, hence removing the spurious viewer-confusing update.
2010-01-25 21:51:58 +00:00
Diva Canto bbbe9e73cc * Fixed misspelling of field in GridService
* Moved TeleportClientHome to EntityTransferModule
2010-01-18 09:14:19 -08:00
Diva Canto 04e29c1bac Beginning of rewriting HG. Compiles, and runs, but HG functions not restored yet. 2010-01-16 21:42:44 -08:00
Diva Canto ee1fb81376 Finished moving object crossings into EntityTransferModule 2010-01-16 08:42:20 -08:00
Diva Canto bd6d1a2444 Moved prim crossing to EntityTransferModule. Not complete yet. 2010-01-16 07:46:07 -08:00
Diva Canto 32bfbdab6f Merge branch 'presence-refactor' of ssh://diva@opensimulator.org/var/git/opensim into presence-refactor 2010-01-15 17:24:41 -08:00
Diva Canto 4ac3c0e81b Renamed IAgentTransferModule to IEntityTransferModule -- accounts for objects too. 2010-01-15 17:14:48 -08:00
Melanie 10f8c2ea9b Merge branch 'master' into presence-refactor
This merge was very conflicted. I think I got them all, but I can't be sure.
I had to merge to master or risk divergence to the point of unmergeability.
2010-01-16 00:05:08 +00:00
Diva Canto f1c30784ac * General cleanup of Teleports, Crossings and Child agents. They are now in the new AgentTransferModule, in line with what MW started implementing back in May -- ITeleportModule. This has been renamed IAgentTransferModule, to be more generic.
* HGSceneCommunicationService has been deleted
* SceneCommunicationService will likely be deleted soon too
2010-01-15 15:11:58 -08:00
Diva Canto e90a5895ad Bug fix in releasing agent. In Scene, always use SimulatonService, and not m_SimulationService, because it may be null... 2010-01-13 21:32:48 -08:00
Diva Canto daa9866a9a Omit AuthorizationService from the default configurations, because the service doesn't exist in the distribution. 2010-01-13 19:25:33 -08:00
Diva Canto 7356860b48 Several more buglets removed. 2010-01-13 09:17:30 -08:00
Melanie e3a04fcb7b Change the error messages on region region registration. This changes URM
and region. The non-error case should be compatible, so no version bump.
Untested.
2010-01-13 03:08:34 +00:00
Diva Canto 011a1b3798 More appearance woes fixed, this time for child agents. Tested on a grid with 2 simulators. Everything seems to be working, including border crosses. TPs (prim crossing) need love now. 2010-01-12 09:49:27 -08:00
Diva Canto 66920a9047 Fixed more appearance woes that showed up using remote connectors. Appearance is now being passed with AgentCircuitData, as it should be. 2010-01-12 09:22:58 -08:00
Diva Canto 77e43f4801 Fixed a couple of bugs with Appearance. Appearance is all good now. 2010-01-11 17:30:05 -08:00
Diva Canto c5ea783526 OpenSim/Framework/Communications/Cache deleted. LibraryRootFolder deleted. 2010-01-11 07:51:33 -08:00
Diva Canto 001d369568 CommunicationsManager deleted. 2010-01-11 07:45:47 -08:00
Diva Canto dc4bbf6065 All Framework.Communications.Clients and Framework.Communications.Services deleted, including old LoginService. 2010-01-10 20:29:09 -08:00
Diva Canto 4dd523b45d * Changed IPresenceService Logout, so that it takes a position and a lookat
* CommsManager.AvatarService rerouted
2010-01-10 15:34:56 -08:00
Diva Canto 1e1b2ab221 * OMG! All but one references to UserProfileCacheService have been rerouted!
* HG is seriously broken here
* Compiles. Untested.
2010-01-10 10:40:07 -08:00
Melanie 45b19e5e2d Fix a small bug in login disable code 2010-01-10 04:05:19 +00:00
Melanie b0a7bcb2c8 Add "StartDisabled" to [Startup] to make all regions start up with
logins disabled until enabled from the console. Add the AccessModule (WIP)
2010-01-10 03:17:40 +00:00
Diva Canto 25fdbd6cbc Less refs to UserProfileCacheService. Compiles but likely doesn't run. 2010-01-09 09:09:32 -08:00
Melanie 673a52fa7a Implement the groups module query to make the estate allowed groups work 2010-01-09 15:58:18 +00:00
Diva Canto 6b60f3cce5 A few more inches... Old friends things removed. Less references to UserProfileService. 2010-01-08 20:31:29 -08:00
Diva Canto b63405c1a7 Inching ahead... This compiles, but very likely does not run. 2010-01-08 10:43:34 -08:00
Diva Canto f11a97f12d * Finished SimulationServiceConnector
* Started rerouting calls to UserService.
* Compiles. May run.
2010-01-07 15:53:55 -08:00
Melanie 7f960cd595 Merge branch 'master' into presence-refactor 2010-01-04 21:41:33 +00:00
Jeff Ames 70d5b1c34c Formatting cleanup. Add copyright headers. 2010-01-04 06:17:30 +09:00
Diva Canto 8a9677a531 The Library Service is now working. UserProfileCacheService.LibraryRoot is obsolete. Didn't delete it yet to avoid merge conflicts later -- want to stay out of core as much as possible. 2010-01-01 21:12:46 -08:00
Diva Canto 4240f2dec6 New LL login service is working! -- tested in standalone only. Things still missing from response, namely Library and Friends. Appearance service is also missing. 2010-01-01 16:54:24 -08:00
Diva Canto a8901a40f4 Simulation handlers (agents & objects) completed. 2009-12-31 09:25:16 -08:00
Melanie 0b5cdc539c Change teleports so the TeleportFlags are sent to the destination sim. It
can now determine if a connection is from login, teleport or crossing.
Needed for a meaningful banlines implementation
2009-12-29 18:35:06 +00:00
Melanie 37b07aa9ec Fix a case where an idle sim can eat 100% of a core 2009-12-20 16:44:31 +00:00
Melanie 0813dc8c1d Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2009-12-14 00:32:00 +00:00
Melanie c426549f53 Add an option to exit an instance rather than restarting a region within it 2009-12-14 00:31:15 +00:00
Adam Frisby 963cf25813 * Implements OSSL function: osGetSimulatorMemory - returns the current amount of memory allocated to the simulator process (Moderate Threat Level).
* Cleans redundant information out of the Simulator Version. Versions now look like:
"OpenSimulator 0.6.9(dev) Unix/Mono"
* [Minor] additional log info for MySQLInventoryData
2009-12-13 03:04:16 +11:00
Teravus Ovares (Dan Olivares) d9a20edfb0 * Move code from that last commit to LLClientView since it's a linden client specific limitation, it moves to the Linden Specific client handler. 2009-12-03 02:02:04 -05:00
Teravus Ovares (Dan Olivares) af04cd1ae0 * If the position that comes in on Scene.SetHomeRezPoint has a component that is 255.5, replace the component with the user's position in the simulator.
* Fixes mantis 4414: http://opensimulator.org/mantis/view.php?id=4414
2009-12-03 01:50:54 -05:00
Teravus Ovares (Dan Olivares) 75e28b3a16 * Fix Inconsistent line ending style on Scene 2009-12-01 10:48:11 -05:00
Teravus Ovares (Dan Olivares) 4338f4e1d7 * Patch from Misterblue to fix Environment.TickCount for statistics purposes. Resolves the wrap-around of the 32 bit uint.
* Teravus moved the Environment methods to the Util class
2009-11-29 05:06:25 -05:00
Justin Clark-Casey (justincc) 66f511c76a Remove unused GetDefaultAppearance() static function that is also available on AvatarFactoryModule 2009-11-27 19:45:33 +00:00
Jeff Lee d39c300d11 Added osGetRegionStats() function, to return a number of sim statistics 2009-11-26 17:43:00 +00:00
Melanie 9d63f90467 Remove the old (Remoting) region crossing code. Fix the new code to
pass script state and assembly again properly. Reintroduce respecting tht
TrustBinaries flag. Changes the interregion protocol! No version bump
because it was broken anyway, so with a version mismatch it will simply
stay broken, but not crash. Region corssing still doesn't work because
there is still monkey business with both rezzed prims being pushed across
a border and attached prims when walking across a border. Teleport is
untested by may work.
2009-11-26 17:03:09 +00:00
Melanie 05fc504ff3 Remove the old remoting-type interregion code for prim/script crossing 2009-11-26 12:16:42 +00:00
Teravus Ovares (Dan Olivares) 0ff3c28f90 * This doesn't fix mantis 3522, but it should mitigate it.
* If the start position is outside of the region on the X and Y, put the user in the center of the region and then damp the Z position at 720 if necessary.  If the start position is not outside of the region on the X or Y, then don't check the Z.
2009-11-22 20:21:33 -05:00
Justin Clark-Casey (justincc) 8f0db68424 Fix http://opensimulator.org/mantis/view.php?id=3874 - parenthesis in for statements cause script compile failures
This fixes a problem in OpenSim where statements of the form

for ((i = 0); (i < 10); (++i)) { ... }

do not compile even though they are valid lsl.
2009-11-20 18:39:39 +00:00
Justin Clark-Casey (justincc) 622003ab09 minor: tweak log message to say which region is being enabled for logins 2009-11-18 20:27:37 +00:00
dahlia 2e24415077 undo previous changes
add a GetGroupByPrim() method to Scene.cs
delete a redundant method
2009-11-13 22:13:40 -08:00
Teravus Ovares (Dan Olivares) 4a2d82e14b * Thanks to a little help from jhurliman, jradford, diva, mono's brajkovic, miguel, and the fabulous bug reports by our community members.. The workaround fix for the "ERROR:metadata.c:3211:mono_metadata_token_from_dor: code should not be reached" bug in the RegionCombinerModule. 2009-11-11 02:47:17 -05:00
John Hurliman e6d7303b29 Applying #4332, optional packet statistics logging 2009-11-05 12:01:40 -08:00
Justin Clark-Casey (justincc) 9dd5d63495 minor: remove some mono compiler warnings 2009-11-04 19:44:28 +00:00
John Hurliman 67ac9881fa Removing duplicate SceneObjectPart.RotationalVelocity property 2009-11-02 11:28:35 -08:00
Adam Frisby 838bc80ab9 * Implemented some tweaks to monitoring module.
* Output is prettier & more useful.
* Added 'Alerts' to allow rules to be constructed using Monitors to detect for events such as deadlocks. This will be translated to SNMP Traps when I get SNMP implemented.
2009-11-02 00:05:49 +11:00
Adam Frisby 711dde34e4 * Implements new 'Monitoring' system for reporting performance.
* Mostly the same set as the StatsMonitor used for Viewer notification, but exposes some new frametimes - including EventMS, PhysicsUpdateMS, LandUpdateMS; new memory monitoring - both GC.TotalMemory and Process.PrivateWorkingMemory64; also exposes ThreadCount (using System.Diagnostics.Process)
* Type 'monitor report' on the console to see output.
* SNMP Implementation forthcoming.
2009-11-01 19:37:40 +11:00
John Hurliman 59eb378d16 Small performance tweaks to code called by the heartbeat loop 2009-10-28 23:10:16 -07:00
John Hurliman a069a1ee68 Limit physics time dilation to 1.0 2009-10-28 14:44:05 -07:00
John Hurliman 0c466b28bb Move the calculation of time dilation from the scene to the physics engine. The scene is still the one reporting dilation so this does not break the API or remove flexibility, but it gets the calculation happening in the right place for the normal OpenSim usage. The actual calculation of physics time dilation probably needs tweaking 2009-10-27 16:24:43 -07:00
John Hurliman a718d7d56a Making the defaults for interest management variables match whether you have the [InterestManagement] section in your config or not 2009-10-27 10:17:20 -07:00
John Hurliman bcd7593dfb Forgot a line in the previous commit 2009-10-27 10:07:35 -07:00
John Hurliman 3a1ee79ee4 Finally hunted down the Parallel deadlock. Packets were being handled asynchronously (filling up the threadpool with handlers), which would turn around and try to do parallel operations on the starved threadpool. The solution for now is to disable Parallel.cs operations until we can gracefully handle parallel operations with a potentially starved threadpool 2009-10-27 02:36:57 -07:00
John Hurliman d199767e69 Experimental change of PhysicsVector to Vector3. Untested 2009-10-26 18:23:43 -07:00
John Hurliman 0b1726b524 Removing the ClientManager reference from IScene and hiding it entirely inside Scene as an implementation detail. This will reduce programming error and make it easier to refactor the avatar vs client vs presence mess later on 2009-10-26 16:48:43 -07:00
John Hurliman 4847e62e9f * Switched all operations on the list of clients that could be either sync or async to use Scene.ForEachClient() instead of referencing ClientManager directly
* Added a new [Startup] config option called use_async_when_possible to signal how to run operations that could be either sync or async
* Changed Scene.ForEachClient to respect use_async_when_possible
* Fixing a potential deadlock in Parallel.ForEach by locking on a temporary object instead of the enumerator (which may be shared across multiple invocations on ForEach). Thank you diva
2009-10-26 16:33:04 -07:00
John Hurliman 119cf80e13 Added calls to GC.AddMemoryPressure() when unmanaged memory is allocated for ODE (helps the GC make better scheduling choices), and a call to GC.Collect() right before logins are enabled for a region. Although this doesn't change actual memory usage, it improves the reported usage from OpenSim and the operating system 2009-10-26 15:52:59 -07:00
John Hurliman ac7ccdf7d7 * Changed the watchdog timer to improve the speed of UpdateThread(), only track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later
* Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
2009-10-26 14:41:27 -07:00
John Hurliman 730930955a Changing Scene.ForEachClient to use the synchronous for loop instead of Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff

* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()

* Improved the instantiation of PrimitiveBaseShape
2009-10-25 00:40:21 -07:00
John Hurliman 2c34619aea * Changed various modules to not initialize timers unless the module is initialized. Ideally, the timers would not initialize unless the module was actually enabled, but Melanie's work on configuring module loading from a config file should make that unnecessary
* Wrapped the Bitmap class used to generate the world map tile in a using statement to dispose of it after the JPEG2000 data is created
2009-10-23 14:22:21 -07:00
John Hurliman a41cd1d069 * Unregister Mono.Addins event handlers in PluginLoader.Dispose() and always handle PluginLoader with the using pattern. This freed up 121,634,796 bytes on my system
* Avoid allocating an Action<IClientAPI> object every round of the OutgoingPacketHandler
* Removed unnecessary semi-colon endings from OpenSim.ini.example [InterestManagement] section
2009-10-23 13:14:29 -07:00
John Hurliman 62f1a5e36d Implemented a "FrontBack" prioritizer, using distance plus the plane equation to give double weight to prims/avatars in front of you 2009-10-23 02:38:59 -07:00
John Hurliman 588361e2a2 Experimental change to use an immutable array for iterating ScenePresences, avoiding locking and copying the list each time it is accessed 2009-10-23 01:02:36 -07:00
John Hurliman b2ed348aa2 Implemented a Watchdog class. Do not manually create Thread objects anymore, use Watchdog.StartThread(). While your thread is running call Watchdog.UpdateThread(). When it is shutting down call Watchdog.RemoveThread(). Most of the threads in OpenSim have been updated 2009-10-22 12:33:23 -07:00
Melanie c4969d47d9 Merge branch 'master' into vehicles 2009-10-22 07:12:10 +01:00
John Hurliman bd03cbd815 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-19 15:19:37 -07:00
John Hurliman 142008121e * Change Util.FireAndForget to use ThreadPool.UnsafeQueueUserWorkItem(). This avoids .NET remoting and a managed->unmanaged->managed jump. Overall, a night and day performance difference
* Initialize the LLClientView prim full update queue to the number of prims in the scene for a big performance boost
* Reordered some comparisons on hot code paths for a minor speed boost
* Removed an unnecessary call to the expensive DateTime.Now function (if you *have* to get the current time as opposed to Environment.TickCount, always use DateTime.UtcNow)
* Don't fire the queue empty callback for the Resend category
* Run the outgoing packet handler thread loop for each client synchronously. It seems like more time was being spent doing the execution asynchronously, and it made deadlocks very difficult to track down
* Rewrote some expensive math in LandObject.cs
* Optimized EntityManager to only lock on operations that need locking, and use TryGetValue() where possible
* Only update the attachment database when an object is attached or detached
* Other small misc. performance improvements
2009-10-19 15:19:09 -07:00
Melanie ffd59868f5 Merge branch 'master' into vehicles 2009-10-19 21:58:51 +01:00
John Hurliman 233e16b99c * Rewrote the methods that build ObjectUpdate and ImprovedTerseObjectUpdate packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away
* Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters
* Made Parallel.ProcessorCount public
* Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes()
* More cleanup of the ScenePresences vs. ClientManager nightmare
* ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
2009-10-18 20:24:20 -07:00
Jeff Ames 0d29614ca1 Formatting cleanup. 2009-10-19 08:58:03 +09:00
John Hurliman fdb2a75ad3 Committing the second part of Jim Greensky @ Intel Lab's patch, re-prioritizing updates 2009-10-17 18:01:22 -07:00
John Hurliman b813058635 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 13:29:12 -07:00
Teravus Ovares (Dan Olivares) f5964347bd * fix previous commit 2009-10-16 16:25:48 -04:00
Teravus Ovares (Dan Olivares) ac31cb89d5 * Ensure that at least 20 frames run before letting avatar in. 2009-10-16 16:22:10 -04:00
John Hurliman 5a4fda9dc3 Updating OpenSim.ini.example with the section required to enable a useful prioritization scheme 2009-10-16 11:09:18 -07: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
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
Melanie 642084c2a9 Merge branch 'master' into vehicles 2009-10-15 21:16:05 +01:00
Melanie 6deef7d0f3 Merge branch 'master' into vehicles 2009-10-15 21:14:13 +01:00
John Hurliman 4790f8576c * Replaced (possibly broken?) math for calculating the unix timestamp in MySQLAssetData with Utils.DateTimeToUnixTime()
* Disabled UpdateAccessTime() function since it was only writing zeros anyways. This gave me a significant performance improvement for startup times and avatar logins in standalone mode
* Load attachments asynchronously so avatars with lots of attachments don't have to race the timeout clock to login
2009-10-14 19:23:44 -07:00
Melanie 6bdd6ae0a0 Merge branch 'master' into htb-throttle 2009-10-14 23:31:38 +01:00
Diva Canto bea13e3709 Setting changeY in border crossing. 2009-10-14 11:01:46 -07:00
Melanie d83ace0d3b Merge branch 'master' into htb-throttle 2009-10-14 05:10:43 +01:00
Dan Lake 5976ac16b0 Optimized heartbeat by calling Update() only on updated objects.
During the heartbeat loop, Update() is called on every SceneObjectGroup which in turn checks if any SceneObjectPart has changed. For large regions (> 100k prims) this work consumes 20-30% of a CPU even though there are only a few objects updating each frame.

There is only one other reason to check every object on every frame, and that is the case where a script has registered the object with an "at target" listener. We can easily track when an object is registered or unregistered with an AtTarget, so this is not a reason to check every object every heartbeat.

In the attached patch, I have added a dictionary to the scene which tracks the objects which have At Targets. Each heartbeat, the AtTarget() function will be called on every object registered with a listener for that event. Also, I added a dictionary to SceneGraph which stores references to objects which have been queued for updates during the heartbeat. At each heartbeat, Update() is called only on the objects which have generated updates during that beat.
2009-10-13 19:32:59 -07:00
Teravus Ovares (Dan Olivares) 31a61bbeec * Fixes some prim crossings on megaregions with regions beyond the 512m mark
* There's a slight chance that this could cause a problem with regular prim crossings..   but hopefully not.     Revert if it does.
2009-10-13 22:03:53 -04: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 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
Melanie 170d2c4660 Merge branch 'master' into htb-throttle 2009-10-12 15:25:42 +01:00
Melanie 70553a979e Merge branch 'master' into vehicles 2009-10-12 15:12:15 +01:00
Diva Canto ef6aa444bf Fixed tree crossing. This will alleviate
http://opensimulator.org/mantis/view.php?id=4163
2009-10-11 13:46:19 -07:00
John Hurliman 77e48a6725 Change the backup thread to run on a BackgroundWorker instead of a Thread. I don't have an explanation, but this seems to stop a slow but steady memory leak I was experiencing 2009-10-09 02:49:55 -07:00
Melanie f6b8bac0fa Merge branch 'master' into vehicles 2009-10-08 10:32:15 +01:00
John Hurliman eb205ef4f0 Added a debug line for nebadon 2009-10-06 14:07:04 -07:00
John Hurliman fa6027aa09 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-06 12:15:24 -07:00
Melanie 0374f1b144 Merge branch 'master' into vehicles 2009-10-06 17:44:59 +01:00
Melanie 40d0018d66 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-06 15:29:46 +01:00
Diva Canto d4d060b57d Commenting the DEBUG code that I added yesterday, because it's causing mono to fail with
https://bugzilla.novell.com/show_bug.cgi?id=538854
2009-10-06 07:49:05 -07:00
Melanie 2a060136bd Lock the heartbeat against multiple invocations. May prevent deadlocks and/or
runaway thread use
2009-10-06 15:28:38 +01:00
John Hurliman 2519f071f2 Fixing a few compile errors in the previous commit 2009-10-06 02:50:59 -07:00
Diva Canto 0c46df973a Correction on the DEBUG code. 2009-10-05 21:02:10 -07:00
Diva Canto e36a54ee2a #if DEBBUG code for monitoring the ThreadPool. 2009-10-05 20:39:23 -07:00
Melanie 46955f4260 Merge branch 'master' into vehicles 2009-10-02 19:04:46 +01:00
dr scofield (aka dirk husemann) 2107b67f1b - cleaning up LandData/ILandObject capitalization issues
- adding LandDataSerializer to OAR mechanics
2009-10-02 11:31:30 +02:00
Melanie 212e132e79 Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
This reverts commit 39842eb4af.
2009-10-02 00:47:01 +01:00
Melanie d6301db382 Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
This reverts commit 39842eb4af.
2009-10-02 00:45:31 +01:00
Melanie 41ff39414b Merge branch 'master' into vehicles 2009-10-01 14:08:15 +01:00
John Hurliman cb26878f96 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-09-30 17:51:34 -07:00
Jeff Ames 606e831ff5 Formatting cleanup. 2009-10-01 09:38:36 +09:00
John Hurliman acfe2d9f4e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-09-30 15:28:23 -07:00
opensim 827b0fb199 Commit initial version of KittoFlora's vehicle changes 2009-09-30 18:51:02 +02:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Diva Canto bc892c1d4c A little hack to see if this fixes the problems with ~20% of SOG's becoming phantom after an import to megaregions. 2009-09-29 07:54:56 -07:00
Diva Canto 2432cc607e Neighbours cache working. 2009-09-27 13:43:57 -07: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
Diva Canto 5757afe766 First pass at the heart surgery for grid services. Compiles and runs minimally. A few bugs to catch now. 2009-09-26 07:48:21 -07:00
John Hurliman 39842eb4af * Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity 2009-09-16 17:17:40 -07:00
Justin Clark-Casey (justincc) a4c093469a Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-09-16 18:21:46 +01:00
Justin Clark-Casey (justincc) 35260faead on iar save/load, let the user know if they put in the wrong password
refactor GetUserInfo() to eliminate copypasta
2009-09-16 18:20:55 +01:00
Rob Smart 281ad1251c updated the IAuthorizationService interface so that a message is passed back and can be displayed at the client when an avatar is denied access to a region 2009-09-16 10:04:07 -07:00
Jeff Ames 01ec93945e Formatting cleanup. 2009-09-13 13:56:09 +09:00
Diva Canto ce332f235c Changed the interface of IAuthorizationService to get less data. 2009-09-10 19:56:08 -07:00
Rob Smart 16940097be The stubs for an authorization service, at the moment the service will always grant access to an avatar entering the region if requested. 2009-09-10 17:51:28 -07:00
Justin Clark-Casey (justincc) f5feb25dd1 fix spurious loading... messages on iar load by creating folders as version 1 rather than version 0 2009-09-10 17:08:26 +01:00
Justin Clark-Casey (justincc) bb1f64fe51 minor: suppress mono warning 0162 generated when comparing const RegionSize against a literal number 2009-09-09 18:09:23 +01:00
Teravus Ovares (Dan Olivares) 9a06056c9a * Fixes a 'take object from mega region' and rez it in a regular region.. and have it appear 5 regions over bug by limiting the stored position in the asset to Constants.RegionSize. The stored position in the asset gets overwritten anyway by the rezzing routine, but at least this way, there's no chance of the objects border crossing before the rezzing routine finishes. 2009-09-08 04:43:00 -04:00
Teravus Ovares (Dan Olivares) 8797a82098 Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-09-06 16:15:20 -04:00
Teravus Ovares (Dan Olivares) 511bddc8bc * Moves another Legacy avatar inbounds check to Border 2009-09-06 16:15:06 -04:00
Melanie 998624544c Addendum to last commit. With the last commit, some other code that should
have been in this commit slipped in. If the last heartbeat is more than
2 seconds ago, kill that thread and start a new one. Untested.
his commit adds support to let the first heartbeat complete unconditionally,
since it is almost always longer.
2009-09-06 16:14:45 +01:00
Melanie dcebbc3f1b Remove the encryption from the IAuthenticationService interface. That
is too high up for that type of stuff. It needs to be at the
connector/handler level
2009-09-06 15:55:14 +01:00
Teravus Ovares (Dan Olivares) 016a648a30 * Fixes various quirks rezzing in virtual regions.
* Breaks up the Client event registrations in Scene into methods of similar event types.   The generic event registration registers all of the event types.
*Created symmetrical Un-Registration methods.
* Made the Registration and Unregistration methods public
* Hooks The events required for creating new prim and rezzing new prim into the proper scene.
2009-09-04 20:19:34 -04:00
Jeff Ames 56ddd6828c Add copyright headers. Formatting cleanup. 2009-09-03 02:04:17 +09:00
Teravus Ovares (Dan Olivares) 9505297fb1 * One last attempt to get the bordercrossing/primcrossing/attachmentcrossing right in the new border framework.
* This also contains some inactive preliminary code for disconnecting combined regions that will be used to make one root region a virtual region of a new root region.
2009-09-02 04:39:00 -04:00
Melanie f32de6fe88 Thank you, dslake, for a set of patches to improve OpenSim startup
and idle performance.
2009-09-02 03:33:31 +01:00
Teravus Ovares (Dan Olivares) 2245e2977e * The return of fuzzy borders! 2009-08-31 23:16:24 -04:00
Teravus Ovares (Dan Olivares) c09884a467 No more fuzzy borders 2009-08-31 22:50:27 -04:00
Teravus Ovares (Dan Olivares) 2068b6714a * -2 on the south and west side, -1 on the north and east side. Fuzzy borders! yay 2009-08-31 21:40:06 -04:00
Teravus Ovares (Dan Olivares) b997174d08 * Fix attachment cross issues with new borders. 2009-08-31 20:07:33 -04:00
Teravus Ovares (Dan Olivares) 9f2f3afe22 * Fixes a teleport issue when teleporting out of a region to a different one. 2009-08-30 02:49:50 -04:00
Teravus Ovares (Dan Olivares) d4dd179547 * whoops, forgot the other class initializer. 2009-08-30 00:29:43 -04:00
Teravus Ovares (Dan Olivares) 59c8a02a24 * When the RegionCombinerModule is off, make borders have an infinite aabb perpendicular to the cardinal 2009-08-30 00:22:38 -04:00
Teravus Ovares (Dan Olivares) d45f871d8f * Only lock the Borders when they're being changed, otherwise one avatar's movement could hinder another avatar's movement. 2009-08-29 03:36:41 -04:00
Teravus Ovares (Dan Olivares) 9eb8c14e87 * Deal with teleports to other virtual regions in the same scene. 2009-08-28 19:42:28 -04:00
Teravus Ovares (Dan Olivares) ac718843d9 * Allow corner prim crossings. Previously this was only on a single cardinal direction
* Some leg work in getting avatar teleports into 'virtual regions' moved to the proper region.
2009-08-28 14:45:17 -04:00
Teravus Ovares (Dan Olivares) 54e05a083d Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-08-26 11:48:05 -04:00
Adam Frisby 25dbf16cfb * Once more into the breach! 2009-08-21 13:44:20 +10:00
Adam Frisby d4600eec4d * Attempting to diagnose a connection bug. 2009-08-21 13:35:13 +10:00
Teravus Ovares (Dan Olivares) 66c40dd3de * Switch border cross tests over to the new Border class.
* Use List<Border> for each cardinal to allow for irregular regions.
2009-08-20 19:24:31 -04:00
Diva Canto 5d47e08dad Removed some debug messages 2009-08-16 17:11:20 -07:00
Diva Canto e02062051d Making attachments work again. Tons of debug more. This needs more testing and a lot of cleaning. 2009-08-16 16:17:19 -07: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 1bbf06405c Changed FromAssetID to FromItemID 2009-08-15 09:36:45 -07:00
Diva Canto dd8b9d5810 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-08-15 08:21:15 -07:00
Teravus Ovares (Dan Olivares) 95be3eccd2 * minor: comments
* also re-trigger panda
2009-08-15 00:01:58 -04:00
Teravus Ovares (Dan Olivares) f208628667 * minor : Comments
* Also re-trigger Panda.
2009-08-14 21:37:25 -04:00
Diva Canto 7aa54593e0 Redirected all calls to CachedUserProfile methods to the inventory service. Redirection of the RootFolder property is still todo. This compiles but probably inventory will be inconsistent. 2009-08-12 20:39:48 -07:00
Diva Canto 41ad610f3e * Added two new packet handler implementations for inventory ops. This is starting to work! - but can't be activated incrementally, the flip needs to be global for all inventory ops.
* Added a base inventory connector that does common processing of inventory among all reference connector implementations. E.g. AddItem requires additional processing before being forwarded to service.
* Added if (m_Enabled) upon RemoveRegion
2009-08-12 13:11:15 -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
Teravus Ovares (Dan Olivares) c8a68fb3fb * Remove hard coded 256 limitations from various places. There's no more 256m limitation within the OpenSimulator framework, however, the LLClient ClientView does not support regions larger then 256 meters so, if you try and make your region larger by setting Constants.RegionSize = 512; in OpenSim.Framework.Constants.cs, the terrain will not display on clients using the LLUDP protocol 2009-08-07 18:40:56 -04: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
lbsa71 169a353cca * minor ccc 2009-07-24 06:59:27 +00:00
Teravus Ovares 05c24a648d * Another attempt to remedy the 'ghost prim' situation. This time for attachments on teleport. 2009-07-17 18:38:03 +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
Teravus Ovares f74622c65f * Change the order of Update so Physics processes a frame before the scene manipulates the physics Scene.cs
* Remove the draconic locking around adding an avatar to the Scene
* Handle an extreme error case when border crossing fails and user uses map to teleport to a different region on the same instance causing control commands to go to a child agent.
* Make the Set Appearance method use the proper 'remove from physics scene' method.
* It *may* help border crossings.   
* It *may* help the 'on avatar rez' lag, that people have been seeing the past week.
* It may also cause physics to crash more often on failed teleports (though..  I think I got the cases covered).
2009-07-17 07:28:09 +00:00
MW c4318136ba Changed it so that when rezzing prims from inventory, a bounding box containing all the prims in the group is used for working out the rezzing point. So that none of the child prims are underground. Or at least thats what it is meant to do, still needs more testing and there are still some issues with link sets getting rezzed too high above the ground/target prim. 2009-07-13 14:42:46 +00:00
MW a7043ebf53 Attempt to make it so items rezzed from inventory aren't half in the ground or half in the prim they are being rezzed on top off. This is currently only correct for single prims (not link groups) and unrotated prims. Next step is to fix for link sets and rotated prims.
This needs a lot more testing to find use cases where it might be wrong (like half way up a hill?)
2009-07-13 12:08:14 +00:00
Teravus Ovares d54aac41d2 * Added a user friendly message to the sqlite regionsettings saver giving them troubleshooting options and telling them to restart the simulator. This situation, hopefully is temporary and generates an exception when sqlite users first start OpenSimulator because of an unexpected condition in the database layer. Restart and all is well.
* Added a user friendly message to the 'No IInventoryService available' condition with troubleshooting options.
2009-07-10 21:47:54 +00:00
Melanie Thielker d8fe7777bf Prevent teleports from ending underground 2009-07-08 08:38:23 +00:00
lbsa71 e9d0f48a5b * Minuscule CC fix 2009-06-22 07:40:31 +00:00
Melanie Thielker e4d26d7bfa When a shared module hooks OnClientClosed, it has no way of finding
out which client connection has closed. So, in multi-region sims, things
can get messy fast.
This introduces a second parameters, which is a Scene object ref. Minor
adjustments to custom modules may be required due to this change.
2009-06-19 20:46:17 +00:00
diva 7a9c85526c Pulled out HelloNeighbour into its own service, INeighbourService, which may get more functions as we go along. It's a very simple service and service connectors, and it served primarily to establish the design of services that dependent on Scenes and that must always have a local connector. More refactoring coming, as this showed how to do it right. 2009-06-14 15:35:09 +00:00
diva 0f367bd7bb Heart surgery no.2: the inventory service hooks.
Several improvements in the connectors themselves.
Several improvements in configurations.
Needed to add a hack in IUserService and UserManagerBase, to be removed when that service is refactored.
2009-06-10 13:18:32 +00:00
Jeff Ames a7fcacf8f3 Formatting cleanup. Ignore some generated files. 2009-06-09 18:07:35 +00:00
lbsa71 9b619043ce * Making sure we fail a bit earlier if we have no AssetService 2009-06-03 17:29:21 +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
Arthur Valadares 8545621d9b * Bug fix: Fixes an exception when Scene.RemoveClient is called to remove on a
non-existing ScenePresence avatar. Also removed trailing white spaces.
2009-05-29 21:12:55 +00:00
Justin Clarke Casey 4aad6a07ff * refactor: Remove redundent prim id attribute on Scene.AddSceneObject() 2009-05-29 21:01:18 +00:00
Justin Clarke Casey 6eb191c87b * Add save xml2 serialization test 2009-05-29 20:20:47 +00:00
MW e4d68964dd Added ITeleportModule interface, and added a hook into scene so if a module has registered this interface then that handles teleport requests rather the SceneCommunicationService.
As by default there is no ITeleportModule registered, Teleports by default will still be handled by SceneCommunicationService.
2009-05-21 10:41:16 +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
Adam Frisby 9f5679e60f * EventManager's OnNewPresence event now fires correctly again. 2009-05-12 20:59:38 +00:00
Melanie Thielker f948fab4da Add AssetService of type IAssetService to Scene 2009-05-11 21:04:27 +00:00
Dr Scofield ecc876bc18 Squashed commit of the following:
further ACL stuff:
- adding StrictAccessControl variable: DON'T set this to false if you
  want to enforce ACL, it will disable ACLs right now. Default is
  true.

  once we've got code added to allow child agents but prevent them
  from becoming root agents when the ACL denies access to the avatar,
  setting this to false will then allow avatars to see into a
  neighboring region but not enter it (currently ACL prevent both,
  seeing and entering).

- enhancing log statements
2009-05-11 07:46:12 +00:00
Melanie Thielker d8e1842d25 Add some asset cache plumbing. Change the generic cache from UUID to string
keys to allow caching the new crop of URI identified objects.
2009-05-10 12:27:05 +00:00
Justin Clarke Casey 9f39a490b5 * refactor: break out sog original xml serialization to a separate class 2009-05-08 18:05:54 +00:00
Dr Scofield 1352a19838 refactoring Scene.NewUserConnection() to be simpler and clearer. 2009-05-06 20:02:49 +00:00
Dr Scofield e0a06f6416 - moving banned check and public/private check to
Scene.NewUserConnection()
- adding reason reporting

this enforces estate bans very early on and prevents us from
circulating client objects that we'd then have to retract once we
realize that the client is not allowed into the region
2009-05-05 16:17:52 +00:00
Jeff Ames 8ea12ad6c0 Add copyright header. Formatting cleanup. Ignore some generated files. 2009-05-05 09:59:15 +00:00
Justin Clarke Casey 257fc5515a * minor: remove some mono compiler warnings, minor cleanup 2009-05-04 15:38:36 +00:00
Melanie Thielker 8ac4ec738b Create a working configuration hook to allow LLClient parameters from
Opensim.ini to take force
2009-05-04 01:57:18 +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 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 0f721da5f1 Add a tweakable for the prim queue preload 2009-05-01 19:33:18 +00:00
Melanie Thielker 7e972b304b Let estate owners and managers enter nonpublic estates unconditionally.
Let gods go to nonpublic estates as well.
2009-04-28 22:53:10 +00:00
Dr Scofield c91a79c3d2 From: Alan Webb <alan_webb@us.ibm.com>
If an avatar is sitting when the client disconnects, the avatar
  is not disassociated from the SOG on which (s)he was sat. This
  produces any, and varied, effects.

  I have updated RemoveCLient in Scene, to check, and stand the
  client up immediately prior to disconnect. This seems like the
  most robust way to handle the situation. Though in this case
  it might be worth factoring out the animations from other
  standup processing. It does no harm, but in this case it is
  entirely redundant.
2009-04-27 14:04:01 +00:00
Dr Scofield 515e62dc2f From: Alan M Webb <alan_webb@us.ibm.com>
Added support for access control lists.
  Scene: Added test to AddNewClient for an entry in the access
         list when connecting to a region with limited access.
  EstateSettings: Added an HasAccess(UUID) property to test for
         an entry in the estate's access list.
  RemoteAdmin: Add RPC calls for admin_acl_list, clear, add,
         and remove.
2009-04-27 11:51:25 +00:00
Melanie Thielker b018f45b70 Make sim health data more useful 2009-04-15 20:16:18 +00:00
Justin Clarke Casey fa9b9126ee * Resolve unit test failure introduced in r9148 (probably)
* Have the test scene always return success for session id authentication for now
2009-04-15 17:40:04 +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
Johan Berntsson 068127bf57 Renamed splitID in Scene and added comments on usage 2009-04-15 04:07:41 +00:00
diva 0413d052a3 Adds session authentication upon NewUserConnections. Adds user key authentication (in safemode only) upon CreateChildAgents. All of this for Hypergrid users too. This addresses assorted spoofing vulnerabilities. 2009-04-14 19:35:35 +00:00
diva 6bd89f7dad Cleaning up old circuit upon client close. 2009-04-14 02:21:40 +00:00
Melanie Thielker cc86df4a3f Thank you, dslake, for a patch that converts many of the linear searches
in SceneGraph to fast dictionary lookups.
Includes a regression fix for attachments by myself.
Fixes Mantis #3312
2009-04-12 15:18:04 +00:00
Teravus Ovares 827117f0b1 * Add catch-all error handlers back to scene. 2009-04-11 00:12:57 +00:00
Teravus Ovares 53026affb3 * Instead of referencing mesh stuff in the physics plugin.. change the IMesh Interface. (blame prebuild) 2009-04-11 00:11:54 +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
Adam Frisby 03984e7304 * Added additional debug testing info to Scene
* Corrected issue with MRMs where it would attempt to overwrite an already loaded DLL. (and thus fail with cryptic UnauthorizedAccessException.)
* Made DrunkenTextAppreciationModule.cs MRM not crash with StackOverflowException
* Added some temporary logging to MRM World.*
2009-04-09 13:03: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
Justin Clarke Casey ad7b005784 * minor: remove some mono compiler warnings 2009-04-07 20:24:09 +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
Melanie Thielker fb900f6055 Applying Intimidated's patch to fix anim handling.
Fixes Mantis #3417
2009-04-06 18:02:12 +00:00
diva 3c9cba1627 Added CreateObject(regionhandle, userID, itemID) to post objects that are to be fetched from the user's inventory server and rezzed in the region. Added all code necessary to fetch the item and the asset, and rez it inworld. The access to the item is uncap-ed and unverified -- I may place it later either under a cap or with auth verification. But in this model regions don't have the user's inventory, so they would have to guess the item IDs.
Added safemode config to Standalone Hypergrid, similar effect to AllowRegionAccessToInventory in Inventory Server. Everyone should have these vars set to their default values except me!
2009-04-05 03:27:50 +00:00