Commit Graph

14975 Commits (9aec62f0ac7ce0e074ee77e687d26c5414190162)

Author SHA1 Message Date
Justin Clark-Casey (justincc) fc5d274229 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-18 23:56:44 +01:00
Justin Clark-Casey (justincc) 896cd45939 Fix issue where a new outfit folder is not created when a new outfit is saved if there are no previous outfits
This was because AddFolder() was disallowing these though they are legal.
2012-05-18 23:55:18 +01:00
BlueWall c05f87b50c Provide Telehub setting to allow use of landmarks
Setting to allow use of landmarks to override telehub routing. Default is off.
2012-05-18 17:51:38 -04:00
Justin Clark-Casey (justincc) 0147dc6302 Fix build break. Comment out EQG deregister/register logging. 2012-05-18 03:50:23 +01:00
Justin Clark-Casey (justincc) 45af29291a Add level 2 debug eq logging which logs event queue polls.
Refactor: eq message logging into common method.
2012-05-18 03:43:36 +01:00
Justin Clark-Casey (justincc) 565c73751c Invoke log4net configurator in pCampBot.exe in order to get OpenSim sylte logging 2012-05-18 00:49:39 +01:00
Justin Clark-Casey (justincc) 6501b1b1bb refactor: move EventQueueGet path generation into common method. Rename some local variables in line with code conventions. Add commented out EQG log lines for future use. 2012-05-18 00:38:29 +01:00
Justin Clark-Casey (justincc) b18c8c8e78 Don't eagerly clear frame collision events when physics actors subscribe and unsubscribe from collisions, in order to avoid a race condition.
Since this is done directly from ScenePresence, it can lead to a race condition with the simulator loop.
There's no real point doing it anyway since the clear will be done very shortly afterwards by the simulate loop and either there are no events (for a new avatar) or events don't matter (for a departing avatar).
This matches existing behaviour in OdePrim
2012-05-17 23:59:43 +01:00
Justin Clark-Casey (justincc) 521ad080f1 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-17 23:56:36 +01:00
Justin Clark-Casey (justincc) 4d34763f8c Check agent limit against root agent count rather than both root and child agents
From sl docs such as http://community.secondlife.com/t5/English-Knowledge-Base/Managing-Private-Regions/ta-p/700115
agent should apply to avatars only.
This makes sense from a user perspective, and also from a code perspective since child agents with no physics or actions take up a fraction of root agent resources.
As such, the check is now only performed in Scene.QueryAccess() - cross and teleport check this before allowing an agent to translocate.
This also removes an off-by-one error that could occur in certain circumstances on teleport when a new child agent was double counted when a pre-teleport agent update was performed.
This does not affect an existing bug where limits or other QueryAccess() checks are not applied to avatars logging directly into a region.
2012-05-17 23:33:26 +01:00
BlueWall 2af11fea37 Merge branch 'master' of /home/opensim/lib/osgrid/opensim 2012-05-17 00:49:33 -04:00
BlueWall 295bb3227d Force the default Telehub router if no matches are found in the config. 2012-05-17 00:47:19 -04:00
Justin Clark-Casey (justincc) c45b5a3d1c minor: improve method doc for TestSameSimulatorSeparatedRegionsCreateAgentFails() 2012-05-17 03:27:05 +01:00
Justin Clark-Casey (justincc) d19fb6fb0c Add regression TestSameSimulatorSeparatedRegionsCreateAgentFails() 2012-05-17 03:12:31 +01:00
Justin Clark-Casey (justincc) f0c9cb8dc0 Comment out TestSameSimulatorSeparatedRegionsQueryAccessFails() regression test logging accidentally left in 2012-05-17 01:34:04 +01:00
Justin Clark-Casey (justincc) 6b6a00a3d5 minor: Remove redundant EstateOwner != UUID.Zero check in IsAdministrator because checking EstateOwner == user
Due to an earlier check we already know that user != UUID.Zero so if EstateOwner == UUID.Zero, EstateOwner == user can never be true
2012-05-17 01:30:50 +01:00
Justin Clark-Casey (justincc) bdcf2d1348 Add regression TestSameSimulatorSeparatedRegionsQueryAccessFails() 2012-05-17 01:27:59 +01:00
Justin Clark-Casey (justincc) e444cb9da4 Remove redundant "Teleport failed:" from reason when QueryAccess fails for the destination simulator. This part of the string is already provided by the viewer.
Also adds more reason logging for diagnostics when teleports are refused/fail.
2012-05-17 00:33:04 +01:00
Justin Clark-Casey (justincc) 23ae24b406 Route OAR SOG loading through the common SceneObjectSerializer.FromXml2Format() rather than the functionally identical but buggy Xml2ToSOG().
Remove buggy Xml2ToSOG().
2012-05-16 00:10:42 +01:00
Justin Clark-Casey (justincc) e644e34545 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-15 23:47:42 +01:00
Justin Clark-Casey (justincc) 1b5ce8c10e Fix issue where loading OARs could sometimes result in link numbers being reordered.
This was because the parts in scene objects were sometimes not serialized in link order.
This is perfectly fine since the parts still have the right link numbers, but an extra fix to adjust for this
had not been done in the SerialiserModule methods that OAR loading used.
Add regression test for same.
Addresses http://opensimulator.org/mantis/view.php?id=5948, http://opensimulator.org/mantis/view.php?id=5749
2012-05-15 23:43:59 +01:00
Justin Clark-Casey (justincc) 02f3b116c6 Allow use of regular expressions in "show object name", "show part name" and "delete object name" console commands if --regex switch is used.
Deleteing objects by name, creator uuid or owner uuid now requires confirmation to avoid accidental deletion.
2012-05-15 23:42:49 +01:00
Melanie 65e1d7b2d7 Guard against null root part on SQLite. This really needs to be fixed so SQLite
loads roots before children like MySQL does.
2012-05-15 03:16:12 +01:00
Melanie 069bcd45e5 Try to fix sqlite breakage 2012-05-15 02:27:21 +01:00
Melanie e7819ce909 Port Avination's collision fixes to core. 2012-05-15 01:02:38 +01:00
Oren Hurvitz 52a32878a9 Save the Telehub and its Spawn Points in the OAR 2012-05-14 19:59:45 +01:00
Justin Clark-Casey (justincc) af6c85308a minor: add explanative comment to 'missing baked texture' logging commonly seen on inter-simulator teleports where avatar baked textures are not available from the asset service. 2012-05-14 18:57:42 +01:00
Justin Clark-Casey (justincc) deeac69312 minor: comment out individual attachment transfer log messages for now 2012-05-14 18:48:40 +01:00
Justin Clark-Casey (justincc) c2aa3b90d9 Set the agent in transit teleport flag at the first available opportunity (i.e. when IsInTransit() was being checked) to close down a race condition.
On EntityTransferModule.DoTeleport() there was an IsInTransit() check to prevent multiple simultaneous teleport attempts.
However, the SetInTransit() was only performed later on, which left a window in which multiple threads could pass the IsInTransit() check.
This has been seen in the field and the results aren't pretty.
This commit effectively combines the IsInTransit() and SetInTransit() checks so there is no such window.
More failure cases are made to to call ResetInTransit() to adjust to this move.
2012-05-14 18:36:26 +01:00
Justin Clark-Casey (justincc) 42557d7d4c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-14 18:33:20 +01:00
Justin Clark-Casey (justincc) fad557485c Add more region information to some teleport related logging 2012-05-14 18:06:48 +01:00
BlueWall 171480f235 Merge branch 'master' of /home/opensim/src/OpenSim 2012-05-13 17:40:03 -04:00
BlueWall b80db81cdd Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-13 17:39:05 -04:00
Chris Koeritz 30a272ba31 Modifications for SMTP in OpenSimulator. Email size limit was fixed (was out of step with documentation at 1024, so boosted to 4096). Added configuration item for maximum email size. Redundant sleep inside email module was fixed (LSL Api was already sleeping). Added sleep time configuration item for snooze between email sending for LSL Api. Added two new configuration items (email_max_size and email_pause_time) into the example OpenSim.ini, plus fixed a spelling error (llimits) and odd tabbing.
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-13 17:34:20 -04:00
BlueWall 7c229c8b81 Add configurable SpawnPointRouting
Will use one of three selected methods to route avatar landing
	points when using Telehubs. The setting is in [Startup] using
        SpawnPointRouting = closest/random/sequence

	closest: The default setting. Routes avatar to the nearest SpawnPoint
	to the location.

	random: Picks random SpawnPoints to land the avatar.

	sequence: Follows a sequence to place the avatar on the next available
	SpawnPoint location

Conflicts:

	OpenSim/Region/Framework/Scenes/Scene.cs
2012-05-13 17:20:54 -04:00
Justin Clark-Casey (justincc) 9d66792c2a Fix mono compiler warning.
Last jenkins failure looked like a glitch.
2012-05-12 03:04:47 +01:00
Justin Clark-Casey (justincc) 8b958e7e74 Revert "Save the Telehub and its Spawn Points in the OAR"
This reverts commit b0b7b45b94.

Sorry BlueWall, I wanted to discuss an aspect of the data storage but I couldn't assign bugs in 'patch included' state to myself until I changed mantis just now and I forgot to mention it on irc.
I wouldn't normally revert but thinks get tricky when it comes to data formats.
Essentially, I would like to see the Yaw, Pitch and Distance values as separate XML entities (as used in other aspects such as vectors, quaternions) rather than as a . delimited string
We can discuss this more with Oren in opensimulator.org/mantis/view.php?id=6008
2012-05-12 02:36:56 +01:00
Oren Hurvitz b0b7b45b94 Save the Telehub and its Spawn Points in the OAR
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-10 22:56:37 -04:00
Justin Clark-Casey (justincc) 480216f50f Print out more information on connecting bots 2012-05-11 02:38:29 +01:00
Justin Clark-Casey (justincc) f231ac39de Increase minimum period between bot actions to 3 seconds, so that teleport doesn't fall under the minimum 2 second limits that clients take to process it 2012-05-11 02:23:18 +01:00
Justin Clark-Casey (justincc) 9c392f6a68 Stagger multiple bot logins by 5 seconds to make this part of the test more 'realistic'
TODO: Need to make this value configurable by a command line parameter to pCampbot
2012-05-11 02:05:32 +01:00
Justin Clark-Casey (justincc) 0ddf3c5289 Do bot startup on another thread so console is responsive during this process 2012-05-11 01:56:00 +01:00
Justin Clark-Casey (justincc) 93b615c51d Do each bot shutdown on its own threads to prevent one slow shutdown holding up all the rest.
This does increase the aggressiveness of shutdown
Also prevents the bot list being locked for a long period, which was preventing commands such as "show bots" from working during shutdown
2012-05-11 01:37:03 +01:00
Justin Clark-Casey (justincc) dc39ec82fa Change bot.IsConnected to be ConnectionState with Disconnected, Connecting, Connnected and Disconnecting states 2012-05-11 00:53:21 +01:00
Justin Clark-Casey (justincc) ab4e6a02a5 If a bot is not connected, show region name "(none)" instead of throwing an exception in the "show bots" command of pCampbot 2012-05-11 00:37:20 +01:00
Justin Clark-Casey (justincc) 903cff9264 Add ConsoleTable framework class for future uniform formatting of console output tables.
Still subject to change - if you use this be prepared to change your output code if/when the methods change.
Make new "attachments show" command use this.
2012-05-10 23:47:39 +01:00
Justin Clark-Casey (justincc) abc029d1f4 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-10 23:43:38 +01:00
Justin Clark-Casey (justincc) bce3e7cb06 Add "attachments" show console command that will show the server's record of which attachments an in-scene avatar has.
For debugging purposes.
2012-05-10 22:48:03 +01:00
Dan Lake 117c183fde Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-10 14:43:02 -07:00
Dan Lake f374b63ac8 Add even for terrain tainting and synchronize terrain module with physics scene before physics simulation step rather than after 2012-05-10 14:42:46 -07:00
Mic Bowman de44734fe9 Saving estate state is really slow (relatively) and it gets
completely rewritten every time a region starts up. This
makes the data write only when the data was not already
read from the database.

There is a still a major race condition whenever two regions
share the same estate data, but at least it won't be triggered
on startup.
2012-05-10 09:08:40 -07:00
Justin Clark-Casey (justincc) d8a78374aa Where necessary, rename OpenSim/Services/Connectors/*.cs files to reflect the actual class names.
This is usually because the file name was singular (*Service*) but the class name was plural (*Services*).
This is to make configuration easier rather than having to look in the c# code itself to find the slightly different name of the connector.
This does not affect existing configuration since the files are being renamed rather than the classes.
2012-05-09 23:25:01 +01:00
Justin Clark-Casey (justincc) 6987aef38d Improve logging on the prim inventory script asset request path for future use.
This adds name and description of the request handler to http request logging when DebugLevel >= 1
2012-05-09 23:12:30 +01:00
Justin Clark-Casey (justincc) e813f41478 Escape and unescape xml element names if necessary in ServerUtils.BuildXmlData() and ParseElement()
If AvatarService appearance data is retrieved over the network, then ServerUtils was attempting to transfer names such as "Wearable 0:0" directly to xml element names, resulting in an exception.
Space is not valid in xml element names.  Neither is : in this case since the intention is not to namespace.  Using names directly as keys is not a good idea.
To get around this problem this patch escapes and unescapes the element names as appropriate.
This has no impact on existing xml (since it had to be valid in the first place) but allows AvatarService data to be used over the network.
Setting appearance (from simulator to AvatarService) did not suffer this problem since the values are passed in the query string which is already properly escaped.
2012-05-09 21:11:14 +01:00
Talun 61e99bcdcb Mantis 6015 new LSL function llGetAgentList.
Details in the lsl wiki
2012-05-09 00:14:24 +01:00
Justin Clark-Casey (justincc) e5dbb652d5 Remove physics actor related race conditions in SetVehicleFlags() and SetPhysicsAxisRotation()
sop.PhysActor can currently become null at any time.
2012-05-09 00:11:10 +01:00
Dan Lake 3bc5620d74 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-08 16:06:02 -07:00
Dan Lake 20952c75c5 Trigger event when scene presences are updated 2012-05-08 16:05:34 -07:00
Talun c21c9e13ef Mantis 1456 same region teleport of a sitting avatar.
Region to region was fixed some time ago in EntityTransferModule.
This applies the same fix for same region teleports.
2012-05-09 00:02:13 +01:00
Justin Clark-Casey (justincc) ef279c5a62 Add automated TestllBreakLink() 2012-05-08 23:36:23 +01:00
Justin Clark-Casey (justincc) c0658a102e Add automated TestllCreateLink() 2012-05-08 23:29:51 +01:00
Justin Clark-Casey (justincc) 6406d5a5b9 refactor: Eliminate local id parameter from api initialize.
This is always available from m_host.LocalId
2012-05-08 23:20:27 +01:00
Justin Clark-Casey (justincc) 01b78235db Instead of constantly looking up unchanging self item in script code, pass in self item on initialization. 2012-05-08 23:05:01 +01:00
Justin Clark-Casey (justincc) abbd050a13 Perform SceneGraph.DuplicateObject() under existing m_updateLock already used for link and delinking, in order to avoid race conditions.
DuplicateObject() relies on source object having correct link numbers for the duration of the dupe.
Both link and delink can change link numbers such that they are not consistent for short periods of time.
2012-05-08 21:31:35 +01:00
Justin Clark-Casey (justincc) 5d1d47e1f9 Revert "Better error handling if Load OAR or Save OAR fail"
This reverts commit 65c88b2ff4.

Yet again I accidentally committed something whilst evaluating it.
2012-05-07 20:01:17 +01:00
Oren Hurvitz 15844da3af Log the full exception when errors occur in BaseHttpServer 2012-05-07 19:56:00 +01:00
Oren Hurvitz 65c88b2ff4 Better error handling if Load OAR or Save OAR fail 2012-05-07 19:07:38 +01:00
Justin Clark-Casey (justincc) a82dc263ab For osGetGridNick(), osGetGridName(), osGetGridLoginURI() and osGetGridCustom(), try to read from the [GridInfoService] section on standalone rather than [GridInfo]
[GridInfoService] is the section that's actually in bin/config-include/StandaloneCommon.ini.example
2012-05-07 19:05:21 +01:00
Justin Clark-Casey (justincc) 5053506d88 refactor: Instead of performing a ScenePresence lookup twice over LocateClientObject() and GetClientScene(), do the lookup just once in LocateClientObject() 2012-05-07 18:27:33 +01:00
Justin Clark-Casey (justincc) cdf97ab3a6 Fix a bug in FriendsModule.StatusNotify() where all subsequent friends would not be notified once a non-local friend was found. 2012-05-07 17:21:45 +01:00
dahlia 4032455332 add a null check for Primitive.Sculpt in PrimitiveBaseShape constructor for OpenMetaverse.Primitive object 2012-05-07 00:33:50 -07:00
dahlia 4186fa10f0 remove default values from prior commit since mono cant deal with them 2012-05-07 00:08:56 -07:00
dahlia b697d0e895 add OS_NPC_RUNNING option to osNpcMoveToTarget() to allow running speed for moving NPCs 2012-05-06 23:54:50 -07:00
Melanie b60f51dafc Stop llSetPos from sending one update per child prim 2012-05-06 19:21:54 +01:00
Justin Clark-Casey (justincc) 01b00ad0d5 Fire the scripting changed event with CHANGED_OWNER when an object that has changed owners is rezzed.
This needs to occur after the script is resumed rather than before, when the event is just dropped.
Addresses http://opensimulator.org/mantis/view.php?id=5890 and http://opensimulator.org/mantis/view.php?id=5952
2012-05-05 00:29:14 +01:00
Justin Clark-Casey (justincc) e18686528e Use the more efficient HashSet instead of List for FlotasmAssetCache.m_CurrentlyWriting 2012-05-04 23:03:33 +01:00
Justin Clark-Casey (justincc) dec6ad2933 Don't try and update the access time of a file that is actively being cached.
This may cause IOErrors on Windows.
Aims to help with http://opensimulator.org/mantis/view.php?id=6003
2012-05-04 22:57:33 +01:00
Justin Clark-Casey (justincc) da4819a170 Temporarily add debug log lines to lsl url request and release
To help with http://opensimulator.org/mantis/view.php?id=5993
2012-05-04 22:11:25 +01:00
Justin Clark-Casey (justincc) c84ef57e52 minor: remove mono compiler warning 2012-05-04 21:04:42 +01:00
Talun 92fde6ed26 Mantis 60004 problems with damage and llSetDamage. In damage enabled areas this patch - Deletes any objects that have damage set > 0 that deliver that damage to an avatar Stops Gods receiving damage, Stops volume detect objects causing damage Deletes NPCS when their helth reduces to zero Gradually "heals" damage to an avatar Resets health on going to a non damage area 2012-05-04 21:01:09 +01:00
Justin Clark-Casey (justincc) 6096a1f30e Change LongCallTime on WebUtil to 3000, to match the time where request handling is considered "slow".
This may be the wrong thing to do but stops lots of log spam in HG setups now that the monitoring is extended to other outgoing calls.
LongCallTime may need to be made configurable.
2012-05-04 20:53:30 +01:00
Justin Clark-Casey (justincc) e83bc049df refactor: Rename new DeleteFoldersEx/PurgeFoldersEx methods to DeleteFolders/PurgeFolders overloads as previously discussed with Oren - I think this makes more sense on balance
These overloads are not publicly available on core connectors or IInventoryService.
2012-05-04 20:37:21 +01:00
Oren Hurvitz ad23774433 Allow deleting folders even if they're not in the Trash
The functions DeleteFolders() and PurgeFolder() still work as before, i.e. they only allow deleting folders that are in the Trash. However, the functions DeleteFoldersEx() and PurgeFolderEx() can now be used to delete any folder.
2012-05-04 20:30:46 +01:00
Justin Clark-Casey (justincc) cccef2e56d Calculate the Daylight Savings Time information sent to the viewer based on US Pacific Standard Time rather than whatever timezone the login server is set to.
This is because the viewer doesn't receive a timezone from the server but bases its displays on Pacific Standard Time.
However, it still expects to receive notification from the server as to whether or not Daylight Savings Time for PST is in operation.
This commit introduces a new DSTZone setting in the [LoginService] config setting that accepts a list of timezone names valid across different platforms to calculate Pacific DST.
If you need the old behaviour of calculating DST based on the local timezone of the server running the login service, then please override DSTZone with "local".
A mailing list announcement will be made later.
Thanks to Olivier Van Helden and Gudule Lapointe for determining this behaviour and providing this patch.
From http://opensimulator.org/mantis/view.php?id=5972
2012-05-04 19:21:43 +01:00
Justin Clark-Casey (justincc) fb99ee6774 minor: Tweak BaseHttpServer message to make it clear that this relates to slow handling of inbound requests. 2012-05-04 01:16:56 +01:00
Justin Clark-Casey (justincc) c9faf0df74 Extend 'slow' request logging to other server outbound requests (forms, rest, async rest) as well as the existing logging on outbound OSD requests.
Also prints out the first 100 chars of any slow request data since this can contain useful info (such as agent ID).
2012-05-04 01:12:56 +01:00
Justin Clark-Casey (justincc) c221eaf0b0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-05-03 22:39:04 +01:00
Justin Clark-Casey (justincc) fcd5b0817b Reinsert a 2000ms delay before closing a no longer required agent on the source region after teleport to resolve Imprudence teleport problems.
Viewers 1 and 3 are fine with doing this immediately.  However, Imprudence has a small delay (<200ms, >500ms) after receiving the AgentCompleteMovement reply packet on the destination region before regarding that region as the currnet region.
If Imprudence receives a DisableSimulator in this period, it quits.
We are not restoring the full 5000ms delay since this brings back a bug where teleports permanently fail if an avatar tries to teleport back too quickly.
This commit also sends the AgentCompleteMovement packet to the client before telling the source region to release its old agent, in order to further cut down any possibility of the DisableSimulator being recieved before the AgentMovementComplete.
2012-05-03 22:30:36 +01:00
Snoopy Pfeffer 100e4ca67e Fixes Mantis #5999. llSetLinkPrimitiveParams with PRIM_BUMP_SHINY did cause a runtime error. 2012-05-03 19:00:09 +02:00
Justin Clark-Casey (justincc) bf5f8b54ae Remove the somewhat misleading logging of the string length of some unknown requests, as this appeared to be some kind of numbered error code.
This brings these messages into line with similar messages that did not do this.
2012-05-03 02:22:06 +01:00
Justin Clark-Casey (justincc) 9ffc2c1062 minor: resolve some mono compiler warnings 2012-05-03 01:56:24 +01:00
Justin Clark-Casey (justincc) 231a3bf147 Implement optional name and description on http stream handlers so that we can relate a slow request to what the handler actually does and the agent it serves, if applicable.
This is most useful for capabilities where the url is not self-describing.
2012-05-03 01:45:49 +01:00
Justin Clark-Casey (justincc) 40f3c24562 Comment out the five second sleep in etm.DoTeleport() if the old agent needs to be closed because it is no longer in the child's view distance.
This sleep appears unnecessary since a sleep has already occurred in WaitForCallback() whilst waiting for the destination region to notify of teleport success.
There are no async operations between this sleep and the WaitForCallback()
If this sleep is present, then teleporting back to the source region within 5 seconds results in a disconnection.
If this sleep is commented out then teleporting quickly back and forth between two simulators appears to work without issue.
Tested on standalone, local grid and distributed grid.
Please revert if there's something that I've missed.
2012-05-01 23:49:02 +01:00
Justin Clark-Casey (justincc) a29f7f7551 Remove some test code that accidentally crept in with 9d2e1c67 2012-05-01 23:25:30 +01:00
Justin Clark-Casey (justincc) 9d2e1c67a8 Add regression test for teleporting between neighbouring regions on the same simulator
This adds a non-advertised wait_for_callback option in [EntityTransfer].  Default is always true.
Teleport tests disable the wait for callback from the destination region in order to run within a single thread.
2012-05-01 23:14:12 +01:00
Justin Clark-Casey (justincc) 5786521103 Move max teleport distance check down into etm.DoTeleport() since this should apply to all teleport calls, not just those through Teleport() 2012-05-01 18:38:46 +01:00
Justin Clark-Casey (justincc) 37dd174697 refactor: Split most of EntityTransferModule.Teleport() into its same region and different region teleport components.
DoTeleport() now retrives IEventQueue itself rather than requiring it to be passed in.
2012-05-01 17:52:30 +01:00
Justin Clark-Casey (justincc) b678ea18b2 Create TestHelpers.EnableLogging() and DisableLogging() to turn logging on and off within tests.
This makes *.Tests.dll.config files no longer needed, hence deleted.
2012-04-30 18:44:22 +01:00
TBG Renfold 9c2a73b61e llGenerateKey implementation. Creates a random UUID I.E: UUID.Random().ToString();
Signed-off-by: TBG Renfold <tbg.renfold@g2mv.co.uk>
2012-04-30 17:36:49 +01:00
Justin Clark-Casey (justincc) d0598c63f3 refactor: Simplify by combining SafeSendControlsToScripts() from fe8e835 into SendControlsToScripts() (instead of SendControlToScripts()). 2012-04-30 17:33:08 +01:00
Oren Hurvitz fe8e835bfc Fixed: scripted controls didn't work if the avatar was sitting down
This fixes a bug introduced in 6473674bbf
2012-04-30 17:18:15 +01:00
Justin Clark-Casey (justincc) 4ad45934c6 If there are no new prim items to store then don't bother opening the MySqlConnection only to do nothing with it. 2012-04-30 16:00:31 +01:00
Justin Clark-Casey (justincc) 522eff6138 Consistently use using() to make sure we dispose of used MySqlCommands where this is not already being done. 2012-04-30 15:54:35 +01:00
Justin Clark-Casey (justincc) 8380166251 Comment out debug [ASYNC DELETER] messages for now. 2012-04-28 00:39:40 +01:00
Justin Clark-Casey (justincc) cd755fe598 Remove mono compiler warning. Adjust message log to error from info 2012-04-28 00:31:11 +01:00
Justin Clark-Casey (justincc) 133f05dc41 Add text about using double quotes to surround console command arguments containing spaces to "help" text.
e.g. show object name "My long object name"
2012-04-28 00:29:08 +01:00
Justin Clark-Casey (justincc) 2bad430ed8 Put scene object related console commands into new "Objects" help category rather than "Regions" 2012-04-28 00:08:04 +01:00
Justin Clark-Casey (justincc) ab71779221 Revert "Revert "Implement bulk inventory update over CAPS (not recursive by design,""
This reverts commit a90b0e302c.

Sorry, accidentally reverted this completely by mistake, reverting the revert.
2012-04-27 23:54:45 +01:00
Justin Clark-Casey (justincc) 737e177163 Revert "Log the full exception when errors occur in BaseHttpServer"
This reverts commit e31e7c68c8.

Applied for patch assessment and accidentally committed too early.
2012-04-27 23:46:46 +01:00
Justin Clark-Casey (justincc) a90b0e302c Revert "Implement bulk inventory update over CAPS (not recursive by design,"
This reverts commit 6e7f13a72d.
2012-04-27 23:46:33 +01:00
Justin Clark-Casey (justincc) d25469f66e Add flags information (phantom, physics, etc.) to "show object" and "show part" console commands 2012-04-27 23:38:25 +01:00
Oren Hurvitz e31e7c68c8 Log the full exception when errors occur in BaseHttpServer 2012-04-27 21:52:04 +01:00
Oren Hurvitz 6473674bbf Fixed: custom walking animations didn't stop when the avatar stopped walking.
This happened because the scripts were notified about control changes (e.g., the user stopped pressing the Forward key) when the animation was still WALK, so the script didn't stop the walking animation. Fixing this required: a) Update the movement animation *before* notifying the script; b) Add locking to prevent clashes with the Heartbeat thread (which also updates the animations); c) Handle the case of a user who stops walking just as the avatar is in the air: the avatar should STAND in that case, not WALK.

This reverts commit feef1dd732.
2012-04-27 20:47:02 +01:00
Oren Hurvitz 9622e8ac72 If a Grid God teleports then include the Godlike teleport flag. This can affect the starting position in the destination region. 2012-04-27 20:22:35 +01:00
Oren Hurvitz 37d770f814 Use DotNetZip to compress OARs and IARs.
DotNetZip provides much better compression than standard .NET.
2012-04-27 19:46:31 +01:00
Justin Clark-Casey (justincc) e39e4f6bfb minor: style adjustments in SensorRepeat, mainly related to patch from stoehr 2012-04-27 19:40:19 +01:00
Stefan_Boom b35a1d5681 Fixing wrong position of llSensor, SensePoint wasnt following the rotation of the root prim. 2012-04-27 19:31:50 +01:00
Diva Canto 9bc94c502a MapImageService: changed the event at which the map tiles are uploaded, because they were being uploaded before the region was registered with the grid 2012-04-27 11:05:40 -07:00
Diva Canto a9dbe39319 MapImage security issue. Compare strings instead of IPAddresses. 2012-04-27 10:39:20 -07:00
Diva Canto 292752bb78 MapImage security issue: better error messages 2012-04-27 10:22:43 -07:00
Diva Canto ac64fe03d8 Amend to last commit: account for the existence of proxies. 2012-04-27 09:59:46 -07:00
Diva Canto 2970a18e54 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-27 09:26:14 -07:00
Diva Canto c84f63f4dc Minor change in error message (HG teleport failures) 2012-04-27 09:24:50 -07:00
Diva Canto e4e754ee93 MapImageService: added an additional security check for OSGrid and other grids like it. 2012-04-27 09:23:56 -07:00
Justin Clark-Casey (justincc) 07e62df558 Add regression test for teleporting an agent between separated regions on the same simulator.
This involves a large amount of change in test scene setup code to allow test scenes to share shared modules
SetupScene is now an instance method that requires an instantiation of SceneHelpers, though other SceneHelpers methods are still static
May split these out into separate classes in the future.
2012-04-27 00:58:54 +01:00
Oren Hurvitz 8a65f5a70d OSSL: Removed check for CanRunConsoleCommand() in osKickAvatar.
OSSL permissions are now controlled in OpenSim.ini.
2012-04-26 22:53:13 +01:00
Oren Hurvitz 0da8fe3124 Refactored how asset/inventory types are associated with content types: gathered all the knowledge into a single class. Added the Mesh content type. 2012-04-26 22:49:14 +01:00
Oren Hurvitz ee13d817f1 When creating an OAR, objects where the user is the Creator are always included, regardless of their permissions.
The purpose of the permission checks is to prevent the unauthorized copying of assets, but users can always copy assets that they created.
2012-04-26 22:41:31 +01:00
Justin Clark-Casey (justincc) cb6791fb30 Tweak log messages on local region to region teleport path to help with problem resolution. 2012-04-26 22:35:25 +01:00
Justin Clark-Casey (justincc) d19aa9e792 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-26 21:54:50 +01:00
BlueWall 2542ca2a49 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-26 16:40:36 -04:00
BlueWall fba802bb03 Merge branch 'master' of /home/opensim/var/repo/opensim 2012-04-26 16:13:47 -04:00
Talun b8114d2b67 Add a version of osNpcSay that takes a channel number Mantis 5747
osNpcSay(UUID npc, string message) left untouched

New functions:-
osNpcSay(UUID npc, int channel, string message)
osNpcShout(UUID npc, int channel, string message)
osNpcWhisper(UUID npc, int channel, string message)

Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-04-26 16:13:29 -04:00
Justin Clark-Casey (justincc) ca228c4770 Comment out old Scene.HandleLogOffUserFromGrid() to reduce client closing analysis complexity 2012-04-26 16:20:53 +01:00
Justin Clark-Casey (justincc) f49912f92a minor: Add more detail to unauthorized caps client message 2012-04-26 16:10:24 +01:00
Justin Clark-Casey (justincc) b0cbf16c19 minor: Add region name to dropped inbound packet message 2012-04-26 16:04:49 +01:00
Justin Clark-Casey (justincc) 4c4ffb9868 Add request verb and url to error messages in WebUtil that lack this.
Make exception printing consistent across windows and mono.
2012-04-26 00:43:31 +01:00
Justin Clark-Casey (justincc) e52fe03fff minor: Add avatar name to removing agent log message 2012-04-26 00:42:37 +01:00
Justin Clark-Casey (justincc) 74dbfe6bb5 Comment out avatar move to target message for now. 2012-04-25 23:46:42 +01:00
Mic Bowman 133370f158 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-25 11:57:29 -07:00
Mic Bowman a2d544c938 Add a configuration switch to turn on/off the use of the trash
folder when deleting objects from a scene. The use of the trash
folder causes assets to be created and stored everytime you delete
an object from the scene (slows down the delete and adds mostly useless
assets to your database).

Default is on (use the trash folder) which is the standard behavior.
2012-04-25 11:54:57 -07:00
Melanie 88553bb884 Port Avination link order to make OpenSim behave like SL. Make Primstar scripts work. Fixes Mantis #5990 2012-04-25 19:09:22 +01:00
Mic Bowman 1afae01311 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-25 09:52:44 -07:00
Mic Bowman bec100a662 Add try/catch around Json script method registration to avoild some issues
with .NET 3.5 vs 4.0 differences.

See http://opensimulator.org/mantis/view.php?id=5971
2012-04-25 09:51:30 -07:00
Diva Canto 7aa25c6762 Slight rewording of output messages. 2012-04-24 22:40:07 -07:00
Diva Canto fd281ded3f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-24 22:17:52 -07:00
Diva Canto cf1c34605b HG: Moved User-level code down to the HGEntityTransferModule where it belongs. 2012-04-24 22:17:10 -07:00
Melanie 550ff3b4da Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2012-04-25 04:01:55 +01:00
Melanie 3be3189ee0 Commit the avination Teleport() methods (adaptedto justincc's changes) 2012-04-25 04:00:01 +01:00
Justin Clark-Casey (justincc) af86e2939c zero out SP velocity before calling SP.Teleport(), as the client expects (though this is also effectively done by physics at the moment) 2012-04-25 03:47:26 +01:00
Justin Clark-Casey (justincc) 683cfc6f82 refactor: Combine ScenePresence.Teleport() and TeleportWithMomentum()
These are identical apart from setting Velocity = zero, which has no practical effect anyway since this is zeroed when the avatar is added back to the physics scene.
2012-04-25 02:07:55 +01:00
Justin Clark-Casey (justincc) a65ca24701 Add regression test TestSameRegionTeleport() 2012-04-25 01:51:40 +01:00
Justin Clark-Casey (justincc) f24289c47f Comment out AvatarService.SetAvatar debug log line for now 2012-04-25 01:09:23 +01:00
Justin Clark-Casey (justincc) 6b299a4287 Comment out some debug ATTACHMENTS log messages for now. 2012-04-25 00:52:33 +01:00
Justin Clark-Casey (justincc) 39a6d7cab4 Comment out the noisier AVFACTORY log messages for now.
Permanently comment out warnings about ScenePresence not being found - this is entirely expected if the avatar has alraedy logged out or left the scene.
2012-04-25 00:47:32 +01:00
Justin Clark-Casey (justincc) 0f470326aa Improve teleport log debug and error messages to tell us who is teleporting. 2012-04-25 00:19:38 +01:00
Justin Clark-Casey (justincc) 54d5ff6774 Go back to always using the local timezone for now - not all machines have US/Pacific or Olsen Amercia/Los_Angeles and this introduces variability that the server operator cannot control
Please see http://opensimulator.org/mantis/view.php?id=5972 soon for more comments.
2012-04-24 23:00:50 +01:00
Justin Clark-Casey (justincc) ef1668adb3 Revert "Refactored how asset/inventory types are associated with content types: gathered all the knowledge into a single class. Added the Mesh content type."
This reverts commit d3a4d67a20.

Accidentally committed this when I didn't mean to yet.
2012-04-24 21:42:32 +01:00
Oren Hurvitz 2f398231ac Minor improvements to logging
Eliminated an extra newline in the console if the log line doesn't contain a category (example of a category: "[ASSETS]").
2012-04-24 21:38:09 +01:00
Oren Hurvitz d3a4d67a20 Refactored how asset/inventory types are associated with content types: gathered all the knowledge into a single class. Added the Mesh content type. 2012-04-24 20:52:18 +01:00
Oren Hurvitz da5fd53702 Fixed problem with MySQL: it was possible for one thread to use an incomplete list of column names if another thread was creating the list at the same time. Now this is thread-safe. 2012-04-24 20:49:28 +01:00
Oren Hurvitz c70e85a327 When reading a region, use null objects to represent NULL fields.
Previously NULL fields were converted to an empty string due to the use of ToString(). But if the field was an Int (e.g., "locZ"), then the subsequent attempt to convert an empty string to an int caused an exception. Now the field is null so we don't try to convert it, so there's no exception.
2012-04-24 20:46:31 +01:00
Oren Hurvitz 6011bfa5e3 OSSL: fixed the threat level check for osParseJSONNew 2012-04-24 20:41:29 +01:00
Justin Clark-Casey (justincc) cbe889e10b minor: formatting changes to top of LLLoginResponse.SetDefaultValues(), chiefly some break up of the long line. 2012-04-24 20:30:19 +01:00
Olivier van Helden and Gudule Lapointe (Speculoos.net) 0e3053e4c9 DST settings to match client default Pacific Time (mantis #5972) 2012-04-24 20:22:34 +01:00
Justin Clark-Casey (justincc) c6f30e044b Restore _parent_scene.actor_name_map[prim_geom] = this; accidentally removed from ODEPrim.SetGeom.
This occurred in 7a574be3fd from Sat 21 Apr 2012.
This should fix collision detection.
Mnay thanks to tglion for the spot and the fix in http://opensimulator.org/mantis/view.php?id=5988
2012-04-24 20:15:10 +01:00
Diva Canto fd27988978 Changed the Map-related messages from Info to Debug. They're debug messages. 2012-04-23 21:29:18 -07:00
Justin Clark-Casey (justincc) 6c21e15cb9 Add online/offline indicator to "friends show" region console command.
Improve output table formatting.
2012-04-24 00:32:01 +01:00
Justin Clark-Casey (justincc) 40e37d8b78 Add osForceAttachToAvatar() and osForceDetachFromAvatar()
These behave identically to llAttachToAvatar() and llDetachFromAvatar() except that they do not enforce the PERMISSION_ATTACH check
Intended for use in completely controlled dedicated environments where these checks are more a UI hinderance than a help.
Threat level high.
2012-04-24 00:03:57 +01:00
Justin Clark-Casey (justincc) b798b32b19 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-23 22:54:11 +01:00
Justin Clark-Casey (justincc) 1f8d1bcdcf Replace common code to fetch self inventory item (as opposed to uuid) with GetSelfInventoryItem()
However, at some point it would be far more convenient to receive the TaskInventoryItem in the constructor rather than just the item UUID, so we don't have to constantly refetch our self item.
2012-04-23 22:52:46 +01:00
Justin Clark-Casey (justincc) 60065f06b3 refactor: Replace calls to InventorySelf() with existing m_itemID in LSL_Api
There's no point look up an item ID that we already have.
2012-04-23 22:23:47 +01:00
Talun 679da63da6 Mantis 5977 Corrections to llRegionSayTo
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-04-23 07:16:33 -04:00
Justin Clark-Casey (justincc) 49ed68e98c refactor: simply some properties code in BasicPhysicsPlugin 2012-04-22 20:28:12 +01:00
Justin Clark-Casey (justincc) 58c890df5d Make TestSetPhysicsSinglePrim() actually add the object to the scene in order to test more code paths. 2012-04-22 20:03:34 +01:00
Justin Clark-Casey (justincc) 8205fe79ce Fix bug where setting phantom on a prim would result in a server log message rather than setting phantom.
This was an oversight when removing some race conditions from PhysicsActor setting recently.
Regression tests extended to probe this code path.
Extending regression tests required implementation of a BasicPhysicsPrim (there was none before).  However, BasicPhysics plugin is still of no current practical use other than to fill in as a component for other parts of regression testing.
2012-04-22 19:51:51 +01:00
Justin Clark-Casey (justincc) ae2b8f7007 Comment out spurious Body != IntPtr.Zero code after disableBody(), since disableBody() sets Body == IntPtr.Zero on all code paths. 2012-04-21 03:42:54 +01:00
Justin Clark-Casey (justincc) f609594595 refactor: Simplify ODEPrim.AddChildPrim() by returning early where appropriate. 2012-04-21 03:23:51 +01:00
Justin Clark-Casey (justincc) 77a7de87e1 Add test for setting physics in a linkset 2012-04-21 02:45:16 +01:00
Justin Clark-Casey (justincc) d5c724e5b8 Add regression test for prim status when root prim in a new linkset is non-physical 2012-04-21 01:51:57 +01:00
Justin Clark-Casey (justincc) 9ac48b2aff Fix a bug where linking a non-physical prim with a physical prim as root would make the non-physical prim phantom rather than part of the physics object.
On region restart, the whole object would become physical as expected.
Observed behaviour from elsewhere is that all prims in a new linkset should take on the status of the root prim.
Add regression test for this behaviour.
2012-04-21 01:43:09 +01:00
Justin Clark-Casey (justincc) 17bf2a62db Add test for correct physics status on linking two physics objects
Also fixes last build break.
2012-04-21 01:09:42 +01:00
Justin Clark-Casey (justincc) 71900968b2 refactor: extract common setup code in SceneObjectStatusTests 2012-04-21 01:01:24 +01:00
Justin Clark-Casey (justincc) ae789f6c16 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-21 00:55:27 +01:00
Justin Clark-Casey (justincc) 06552f217e Add TestSetPhysics() to SOP status tests 2012-04-21 00:54:48 +01:00
Justin Clark-Casey (justincc) 7a574be3fd Remove redundant prim_geom != IntPtr.Zero checks in ODEPrim.
prim_geom == IntPtr.Zero only before a new add prim taint is processed (which is the first taint) or in operations such as scale change which are done in taint or under lock.
Therefore, we can remove these checks which were not consistently applied anyway.
If there is a genuine problem, better to see it quickly in a NullReferenceException than hide the bug.
2012-04-21 00:12:07 +01:00
Justin Clark-Casey (justincc) c8307cdf1e Improve bitmap disposal to do null checks and not to potentially try disposal of uninitialized variables.
This issue doesn't cause the mono 2.10.5 compiler to fail but appears to cause the windows compiler to fail.
Resolves http://opensimulator.org/mantis/view.php?id=5973
2012-04-20 23:35:11 +01:00
Justin Clark-Casey (justincc) 566327a948 If a physical prim is manually moved (e.g. by a user) then set the geometry position as well as the body position
This is necessary to stop the moved prim snapping back to the original position on deselection if moved only once
This resolves http://opensimulator.org/mantis/view.php?id=5966
2012-04-20 23:24:24 +01:00
Justin Clark-Casey (justincc) 75f117484b Always dispose of existing opened bitmap from file in SaveFile(), instead of simply dropping the reference if the existing file didn't contain a bitmap of the same size. 2012-04-20 03:57:22 +01:00
Justin Clark-Casey (justincc) cba64ebc79 Explicitly dispose of bitmaps opened from files in GenericSystemDrawing and JPEG.cs 2012-04-20 03:46:33 +01:00
Justin Clark-Casey (justincc) 4ac2f839bd Remember to dispose of the bitmap opened from a file in GatekeeperServiceConnector.GetMapImage() 2012-04-20 03:32:38 +01:00
Garmin Kawaguichi 63cda3a6d0 concerns GenericSystemDrawing.cs
in OpenSim\Region\CoreModules\World\Terrain\FileLoaders\GenericSystemDrawing.cs
Ln 67
Apply Justin's solution

Signed-off-by: Garmin Kawaguichi <garmin.kawaguichi@magalaxie.com>
2012-04-20 03:26:02 +01:00
Justin Clark-Casey (justincc) f3dda2d85d Add more exception detail to Exception and IOException throws in BaseHttpServer.HandleRequest() 2012-04-20 03:12:25 +01:00
Justin Clark-Casey (justincc) 2b98e2f106 Stop teleports from dropping tall avatars through or embedding them in the floor when lured by short avatars.
This involves giving the ceiling of the Z-component in a lure rather than the floor.
Ideally we would give the exact float compensating for relative avatar height but it looks like that isn't possible with the parcel id format used in lures
2012-04-20 02:50:36 +01:00
Melanie beb7b8d189 Fix a logic error in app domain creation 2012-04-18 23:23:37 +01:00
Melanie 7a255efdb2 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2012-04-18 20:07:32 +01:00
Melanie ea73a03553 Don't re-add the assembly resolver for each script if not creating the appdomain 2012-04-18 20:01:41 +01:00
Justin Clark-Casey (justincc) c85f9d681a On "show part" command, show link number.
This replaces the Parts count which was rather pointless for a prim (it was either 1 if a child or the number of parts if the root).
This information is still avaliable on the "show object" command.
2012-04-18 00:39:39 +01:00
Justin Clark-Casey (justincc) b430c0162c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-18 00:00:09 +01:00
Justin Clark-Casey (justincc) 859646ef5c minor: Add some method doc. Add warnings since calling SOG link/delink methods directly rather than through Scene may allow race conditions. 2012-04-17 23:54:51 +01:00
Mic Bowman 84891930aa clean up some more logging spam in the jsonstore modules 2012-04-17 14:23:43 -07:00
Mic Bowman 4db518b9a3 Fix the Csharp 3.0 vs 4.0 problem in JsonStore initialization.
Cut down on the logging spam.
2012-04-17 14:15:17 -07:00
Mic Bowman 5ff2bda587 This commit adds a new optional region module, JsonStore, that provides structured
storage (dictionaries and arrays of string values) for scripts and region modules.
In addition, there are operations on the storage that enable "real" distributed
computation between scripts through operations similar to those of a tuple space.
Scripts can share task queues, implement shared locks or semaphores, etc.

The structured store is limited to the current region and is not currently
persisted. However, script operations are defined to initialize a store from a notecard
and to serialize the store to a notecard.

Documentation will be posted to the opensim wiki soon.
2012-04-17 13:45:27 -07:00
Mic Bowman 4bb72c9ffe make the namespace for the ScriptModuleComms consistent with its file system location 2012-04-17 13:45:03 -07:00
Justin Clark-Casey (justincc) cca6b6bd0d Add TestGetChildPartPositionAfterObjectRotation() 2012-04-17 02:14:10 +01:00
Justin Clark-Casey (justincc) 2f2181683c Add test TestGetChildPartPosition() 2012-04-17 01:51:13 +01:00
Justin Clark-Casey (justincc) 7e1ab216e3 Move some public methods on WebStatsModule to private to reduce some static analysis complexity.
There's no obvious reason for these methods to be public.
2012-04-17 01:33:55 +01:00
Justin Clark-Casey (justincc) 24a0cc5261 refactor: Rename EstateSettings.IsEstateManager() to EstateSettings.IsEstateManagerOrOwner() to reflect what it actually does.
This makes it consistent with other parts of OpenSimulator that are treating ESTATE_MANAGER and ESTATE_OWNER as different entities.
As per opensim-dev mailing list.
2012-04-17 01:25:41 +01:00
Talun 5655239f44 Null reference in llGetObjectMass on a seated avatar. 2012-04-17 00:56:46 +01:00
Justin Clark-Casey (justincc) e6ec83125b Use INSERT OR REPLACE INTO sql in WebStatsModule for session update rather than separate insert and update statements 2012-04-17 00:46:43 +01:00
Justin Clark-Casey (justincc) 572440cd23 correct bug where f_invalid was being inserted on a webstats update for an existing session rather than d_world_kb 2012-04-17 00:33:23 +01:00
Justin Clark-Casey (justincc) 1bb3873338 Simplify WebStatsModule by removing the uncompleted migrations section.
Use "create table if not exists" instead.
Client stats data is transitory data that it is not worth migrating.
2012-04-17 00:19:36 +01:00
Justin Clark-Casey (justincc) f213f55586 Fix bug in WebStatsModule where an exception would always be output on update if the user teleported to another region on that simulator.
This was because update was looking for an existing stats record unique in session id, agent id and region id.
But if the user teleports to another region then region id changes.
WebStatsModule promptly doesn't find the existing record and tries to insert a new one, but only session id is the primary key and that's still the same, which makes things go bang.
This makes the update search only on the unique session id.
This is only an issue with simulators that have multiple regions where the webstats module is enabled.
2012-04-17 00:02:58 +01:00
Justin Clark-Casey (justincc) 2c74e1bba8 Add GroupPosition and GetWorldPosition() checks to TestGetRootPartPosition() 2012-04-14 01:57:09 +01:00
Justin Clark-Casey (justincc) da342d0b21 minor: make test names consistent 2012-04-14 01:53:40 +01:00
Justin Clark-Casey (justincc) f61b234252 refactor: move common init code into SetUp() in SceneObjectSpatialTests 2012-04-14 01:52:16 +01:00
Justin Clark-Casey (justincc) 317aebcce6 refactor: put SOG position test in a separate TestSceneObjectGroupPosition() 2012-04-14 01:47:56 +01:00
Justin Clark-Casey (justincc) 40d01fb20b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-14 01:43:57 +01:00
Justin Clark-Casey (justincc) 3ae98611f2 Add simple RelativePosition and OffsetPosition checks to TestGetRootPartPosition 2012-04-14 01:43:03 +01:00
Melanie 4bdd9d51bc Correct whitespace error introduced by previous commit 2012-04-14 01:04:26 +01:00
Talun 4d652c7041 Missing or unimplemented LSL memory functions.
Implemented to behave as if scripts were LSO.

Signed-off-by: nebadon <michael@osgrid.org>
2012-04-13 17:08:00 -07:00
Justin Clark-Casey (justincc) eeec1f32c6 Add very basic TestGetRootPartPosition() test 2012-04-14 01:01:28 +01:00
Kevin Cozens a366c05ae2 Added ability to exclude inventory items or folders when saving IAR files. 2012-04-13 23:31:12 +01:00
Justin Clark-Casey (justincc) eced091689 Change threat level of osNpcStopMoveToTarget from Low to High to match other NPC functions, and change OSSL permissions name to osNpcStopMoveToTarget instead of osNpcStopMoveTo
Thanks to Oren Hurvitz for pointing out these mistakes.
2012-04-13 22:52:24 +01:00
Justin Clark-Casey (justincc) 1ad3fdb40b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-13 22:34:36 +01:00
Justin Clark-Casey (justincc) ab7c0e7547 Remove hardcoded god requirement from osSetRegionWaterHeight, osSetRegionSunSettings and, osSetEstateSunSettings no matter the threat level.
Change threat level on osSetRegionSunSettings and osSetEstateSunSettings from nuisance to high to match similar functions.
If you had enabled these functions but had relied on the hardcoded god check in the code, then please adjust your OSSL permissions config.
Thanks to Oren Hurvitz for pointing this out.
2012-04-13 22:32:33 +01:00
Talun 08e509978d Mantis 55025 Implement script time.
Signed-off-by: nebadon <michael@osgrid.org>
2012-04-12 18:44:00 -07:00
Snoopy Pfeffer 8be14095fe HGFriendsModule: Type casts to fix compile error 2012-04-11 18:56:28 +02:00
Snoopy Pfeffer 1f4d3d3582 HGFriendsModule: Added optional user level based restriction to send friendship invitations to foreign users. 2012-04-11 18:52:07 +02:00
Diva Canto f2ede8c7e0 HGFriendsModule: add the scaffolding for supporting permissions pertaining to HG friendships. Snoopy take it from here. 2012-04-11 08:13:11 -07:00
Snoopy Pfeffer 78fd487a70 New OS scripting functions osSetTerrainTexture and osSetTerrainHeight as originally proposed in SL Jira (https://jira.secondlife.com/browse/SVC-244). 2012-04-10 21:49:43 +02:00
Justin Clark-Casey (justincc) 4ab479bf58 Add uri to various log messages when region registration fails. Upgrade some debug log messages to error. 2012-04-10 20:40:59 +01:00
Snoopy Pfeffer f9dd4ed89c Do not timeout group member cache entry, as long as there are frequent group membership requests. These are caused by movements within the parcel boundaries. 2012-04-10 15:51:26 +02:00
Talun 78c0028179 Mantis5502 implementation of some of the new constants
Signed-off-by: Melanie <melanie@t-data.com>
2012-04-09 21:25:22 +01:00
Diva Canto 0f277dfa17 Addresses mantis #5846 2012-04-08 17:54:59 -07:00
Diva Canto d4a370a5f2 A few more minor improvements on Suitcase inventory service. 2012-04-07 14:52:15 -07:00
Diva Canto 0d566aa385 Better Suitcase Inventory Service. 2012-04-06 21:52:48 -07:00
Diva Canto 806082cd6e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-06 20:35:01 -07:00
Diva Canto 9637e50956 Moved the inventory manipulation from HGEntityTransferModule to HGInventoryAccessModule where it belongs. They need to exchange some events, so added those to EventManager. Those events (TeleportStart and TeleportFail) are nice to have anyway. 2012-04-06 20:34:31 -07:00
Justin Clark-Casey (justincc) cce760dbfc Rather than having a FromFolderID property on every single prim and only ever using the root prim one, store on SOG instead.
This reduces pointless memory usage.
2012-04-07 00:40:55 +01:00
Justin Clark-Casey (justincc) 7d8bb33c5b Store FromItemID for attachments once on SOG instead of on every SOP and only ever using the root part entry.
This eliminates some pointless memory use.
2012-04-07 00:33:02 +01:00
Justin Clark-Casey (justincc) 70b5a2dace refactor: Eliminate unnecessary SOP.m_physActor 2012-04-06 23:49:23 +01:00
Justin Clark-Casey (justincc) 33e91f1088 Implement PRIM_POS_LOCAL on llSetPrimitiveParams() and other prim params LSL functions.
This is the same as PRIM_POSITION
2012-04-06 23:43:03 +01:00
Justin Clark-Casey (justincc) 4a58d4c5a4 refactor: Use clearer part.ParentGroup.IsAttachment in LSL_Api.GetPartLocalPos() 2012-04-06 23:36:13 +01:00
Justin Clark-Casey (justincc) 3af1cd65f9 Fix llGetLinkPrimParams for PRIM_POS_LOCAL for child prims whether in scene or attachments.
Return relative position to root prim rather than 0,0,0.
Should fix same issue with llGetLocalPos()
http://opensimulator.org/mantis/view.php?id=5951
2012-04-06 22:41:35 +01:00
Justin Clark-Casey (justincc) 47108bb351 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-06 21:15:31 +01:00
Justin Clark-Casey (justincc) f2903db390 For llGetMass(), return the mass of the avatar is the object is attached.
As per http://lslwiki.net/lslwiki/wakka.php?wakka=llGetMass
This is the mass as used by the physics engine (ODE or Bullet).
2012-04-06 21:14:19 +01:00
Talun c3a8c00ce0 Addition of missing constants for llGetObjectDetails including for Mantis 5502
Signed-off-by: nebadon <michael@osgrid.org>
2012-04-06 12:42:46 -07:00
Justin Clark-Casey (justincc) 627efc172b Make llGetMass() return total mass of object when called on root prim.
As per http://lslwiki.net/lslwiki/wakka.php?wakka=llGetMass
Aims to resolve http://opensimulator.org/mantis/view.php?id=5954
2012-04-06 20:32:39 +01:00
Justin Clark-Casey (justincc) 908cebbea8 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-06 20:29:54 +01:00
Diva Canto 6a9f36788d Deleted the unused and commented code from 2 commits ago. 2012-04-06 12:28:15 -07:00
Diva Canto 4c32f79c10 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-04-06 11:52:38 -07:00
Diva Canto 7435582b70 If an AddItem fails, try adding it to the right folder type. 2012-04-06 11:52:05 -07:00
Diva Canto 25b3edc21c WARNING: LOTS OF COMMENTED AND UNUSED CODE IN THIS COMMIT. This is on purpose; it's an historical record of what works and what doesn't wrt manipulating inventory at the viewer. I'll remove the unused code in a subsequent commit, but wanted to place it in history. The uncommented code works. 2012-04-06 11:51:12 -07:00
Diva Canto 953fe46811 A few minor tweaks here and there in XInventoryService. 2012-04-06 11:48:41 -07:00
Diva Canto 6eaff18961 Finish the implementation of GetUserInventory, even though it's still not used. 2012-04-06 11:38:47 -07:00
Diva Canto 8fd86c9156 Packing of folder in SendBulkUpdateInventory always set the folder type to -1. Not sure if there's a reason for it, but I'm changing it to the given folder type. 2012-04-06 11:24:34 -07:00
Diva Canto e324fb2415 Guard against null inventory contents. 2012-04-06 11:22:30 -07:00
Diva Canto cdbe34716f Thank you, BaseHttpServer, for telling me where things go wrong. 2012-04-06 11:21:27 -07:00
Snoopy Pfeffer 67537f3596 Added missing refresh of group membership client side cache to the groups module. Before memberships of non active groups often were not stored in the cache (n_groupPowers). 2012-04-05 13:03:57 +02:00
Snoopy Pfeffer 8f45eb913c Revert last commit 2012-04-05 11:10:05 +02:00
Snoopy Pfeffer e4406c846d Group based access restrictions to parcels require group membership, but not that this group is active for that user. 2012-04-05 10:25:54 +02:00
Snoopy Pfeffer 600a86bcae Little bug fix in HasGroupAccess, to properly store the case "true" in the cache. 2012-04-05 10:02:18 +02:00
Melanie a5d6b624f6 Simplify group access checks and break them out into a separate method.
Use existing cache if the avatar is within the region and use an
ExpiringCache to cache status if the avatar is not in the region. The
30 second delay now applies to scripted objects ony and only when the owner
is not present.
2012-04-05 00:45:58 +01:00
Snoopy Pfeffer 36c8fa16c0 Implements group based access restrictions for parcels of land. Because of caching there can be a delay of up to 30 seconds until the access rights are effectively changed for a user. 2012-04-05 00:53:40 +02:00
Garmin Kawaguichi 9a9923405a terrain save-tile extensions Signed-off-by: Garmin Kawaguichi <garmin.kawaguichi@magalaxie.com>
Signed-off-by: Melanie <melanie@t-data.com>
2012-04-03 20:06:03 +01:00
Justin Clark-Casey (justincc) 633f4bb3d8 remove possible PhysActor unexpectedly null race conditions when changing prim collision status
factor out common SOP physics scene adding code into a common SOP.AddToPhysics() that is the counterpart to the existing RemoveFromPhysics()
2012-04-03 09:28:17 +01:00
Justin Clark-Casey (justincc) e480e25d8b Fix more SOP.PhysActor race conditions in LSL_Api 2012-04-03 06:01:05 +01:00
Justin Clark-Casey (justincc) 7468299673 Eliminate race condition where many callers would check SOP.PhysicsActor != null then assume it was still not null in later code.
Another thread could come and turn off physics for a part (null PhysicsActor) at any point.
Had to turn off localCopy on warp3D CoreModules section in prebuild.xml since on current nant this copies all DLLs in bin/ which can be a very large number with compiled DLLs
No obvious reason for doing that copy - nothing else does it.
2012-04-03 05:51:38 +01:00
Melanie 6e7f13a72d Implement bulk inventory update over CAPS (not recursive by design,
do NOT CHANGE THIS, needed for HG 2.0)
2012-03-31 02:32:47 +01:00
Justin Clark-Casey (justincc) 32a953fed7 refactor: Rename SOG.GetChildPart() to GetPart() since it can also return the 'root' part. 2012-03-31 01:52:06 +01:00
Justin Clark-Casey (justincc) f0406f9fe2 Rename SOG.HasChildPrim(uint) to SOG.ContainsPart(uint) to match existing ContainsPart method and remove method duplication.
HasChildPrim is also misleading since the 'root' prim can also be returned.
2012-03-31 01:45:37 +01:00
Justin Clark-Casey (justincc) 387d7fdad5 Allow llRegionSayTo() to work on the PUBLIC_CHANNEL, as per http://wiki.secondlife.com/wiki/LlRegionSayTo
Addresses http://opensimulator.org/mantis/view.php?id=5950
2012-03-31 01:29:13 +01:00
Justin Clark-Casey (justincc) 38d241a317 Add MSSQL login processing fix for servers run on different locales.
This may no longer be an issue with better locale enforcement in OpenSimulator but it doesn't hurt to have this patch.
http://opensimulator.org/mantis/view.php?id=4680
Thanks to controlbreak for this
2012-03-31 01:12:04 +01:00
Justin Clark-Casey (justincc) 69fc8c4985 minor: small message adjustment and unnecessary code elimination when notifying client of no build permission 2012-03-31 01:07:14 +01:00
PixelTomsen 874140f950 fix Infinite loading on No Rez http://opensimulator.org/mantis/view.php?id=5932 2012-03-31 01:01:59 +01:00
Justin Clark-Casey (justincc) e5343bccdf Add Extended flavour option to opensim version information.
This flavour is for changes in addition to the 0.7.3-post-fixes branch that are too large to be considered fixes but should be reasonably stable.
This flavour will almost certainly never see a formal release.
2012-03-30 02:11:32 +01:00
Justin Clark-Casey (justincc) 269e479cdc minor: remove some now unneeded code from FriendsCommandsModule 2012-03-30 02:00:01 +01:00
Justin Clark-Casey (justincc) 3525c876c8 Make default "show friends" console command show friends fetched from the friends service.
There is no a --cache option which will show friends from the local cache if available.
2012-03-30 01:57:38 +01:00
Justin Clark-Casey (justincc) 1ef62ca75e Lock NullFriendsData.m_Data for consistency and against concurrent read/write 2012-03-30 01:23:34 +01:00
Justin Clark-Casey (justincc) bce7964ac2 refactor: Move "friends show cache" console command out into separate FriendsCommandsModule.
Expose required methods on IFriendsModule.  Rename GetFriends() -> GetFriendsFromCache() for self-documentation
2012-03-30 01:05:29 +01:00
Justin Clark-Casey (justincc) 59157d9d63 Add simple login test with online friends. Add IFriendsModule.GrantRights() for granting rights via a module call.
Rename IFriendsModule.GetFriendPerms() -> GetRightsGrantedByFriend() to be more self-documenting and consistent with friends module terminology.
Add some method doc.
2012-03-30 00:42:55 +01:00
Justin Clark-Casey (justincc) b8d383da0a Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-30 00:38:23 +01:00
Diva Canto 30db0ac5e2 Finish up the SuitcaseInventory service. 2012-03-29 16:25:55 -07:00
Justin Clark-Casey (justincc) bf09d6a22b refactor: Stop passing both IClientAPI and agentID to friend event listeners, these are redundant. Replace a few magic numbers with FriendRights enum already used elsewhere. 2012-03-29 18:31:57 +01:00
Justin Clark-Casey (justincc) 012b01f224 Add simple regression test for logging in with offline friends. Don't expect to receive any in this instance. 2012-03-29 03:19:45 +01:00
Justin Clark-Casey (justincc) cd3f3cbdde Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-29 01:29:00 +01:00
Justin Clark-Casey (justincc) 22a85b947a Add back parts of reverted changes that were not concerned with child agent caching.
This adds ScenePresence to IClientAPI.SceneAgent earlier on in the add client process so that its information is available to EventManager.OnNewClient() and OnClientLogin()
Also add a code comment as to why we're caching friend information for child agents.
2012-03-29 01:26:30 +01:00
Melanie 62b1c807c2 Also add OSS header to interface 2012-03-29 01:14:50 +01:00
Melanie bd83676d6c Change namespace on CallingCardModule and correct interface file placemant. Also ass OpenSource header 2012-03-29 01:13:08 +01:00
Justin Clark-Casey (justincc) 93ac47f0d3 Revert "Simplify friends caching by only doing this for root agents - no functions require caching for child agents."
We need to cache child agents so that friends object edit/delete permissions will work across boarders on regions hosted by different simulators.

This reverts commit d9f7b8549b.
2012-03-29 01:08:47 +01:00
Justin Clark-Casey (justincc) a1de9bc33f Revert "Add comment about setting client.SceneAgent in AddNewClient()"
This reverts commit 964cae4f37.
2012-03-29 01:08:37 +01:00
Melanie c52ff5cf7b Committing the Avination calling card module 2012-03-29 00:47:09 +01:00
Melanie 5a82d939e6 Adding the Avination calling card interface 2012-03-29 00:34:28 +01:00
Melanie 532e3dad26 Pushing the Avination Calling card hooks. Module to follow. 2012-03-29 00:31:11 +01:00
Justin Clark-Casey (justincc) 964cae4f37 Add comment about setting client.SceneAgent in AddNewClient() 2012-03-29 00:21:14 +01:00
Justin Clark-Casey (justincc) d9f7b8549b Simplify friends caching by only doing this for root agents - no functions require caching for child agents.
This allows us to avoid unnecessary multiple calls to the friends service.
All friends functions originate from the root agent and only go to other root agents in existing code.
This also allows us to eliminate complex ref counting.
2012-03-28 23:40:25 +01:00
Justin Clark-Casey (justincc) 33df0c2efd Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-28 23:36:30 +01:00
Diva Canto 6bf4d88397 HG 2.0 Suitcase inventory: proof of concept now working properly with the heavy SendBulkInventoryUpdate message. Waiting for Melanie to finish the light-weight version of that message. 2012-03-28 15:32:19 -07:00
Justin Clark-Casey (justincc) 874bf1f8e5 Enable voice by default on parcels to weaken effects of viewer 2/3 ParcelVoiceInfoRequest bug
Viewer 2/3 contains a bug where the viewer will constantly retry ParcelVoiceInfoRequest requests on voice-disabled parcels where voice is otherwise available.
Attempts to fix this server-side have not been successful - sending a non-OK http code (e.g. a 404) just makes the viewer request again immediately.
Dropping the request entirely is a bit better but the viewer still retries after a minute.
Estate settings already enabled voice by default so doing the same for parcels.  This only has an effect if you have any voice system active at all.
Ultimately, the re-request bug needs to be fixed viewer-side (LL suffers from the same issue!) but it might be worth implementing the drop request hack.
2012-03-28 23:30:28 +01:00
Diva Canto 51dc1e709c HG 2.0: added the beginning of HGSuitcaseInventoryService. Plus moved the hack away from ScenePresence. This is better but it still doesn't restore the inventory upon arrival. 2012-03-28 15:01:37 -07:00
Diva Canto 03766c010f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 20:38:02 -07:00
Diva Canto af96b99356 More on switching the root folder from under the viewer. More experiments. 2012-03-27 20:36:54 -07:00
Melanie 614c404923 Typo fix 2012-03-28 03:45:52 +01:00
Diva Canto 4007f62158 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 19:09:03 -07:00
Diva Canto 300968e933 HG: Switch root folders from under the viewer. Towards HG 2.0. This is guarded by an obscure config that no one but me should be using at this point. 2012-03-27 19:08:29 -07:00
Melanie b24605d526 Fix typos 2012-03-28 02:55:29 +01:00
Justin Clark-Casey (justincc) 514a9fdf8e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-28 02:52:11 +01:00
Justin Clark-Casey (justincc) 12d3ea3029 Add "friends show cache <first-name> <last-name>" command for debugging purposes.
This adds a reverse lookup (name -> ID) to IUserManagement instead of hitting the UserAccountService directly.
2012-03-28 02:51:34 +01:00
Melanie a43e804e59 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2012-03-28 02:46:31 +01:00
Melanie 0463a00d34 Start on Bulk inventory update via CAPS. Not functional yet. HG v2 2012-03-28 02:45:50 +01:00
Melanie 8c0f1e9058 Add a corresponding method for items. HG v2 2012-03-28 02:10:07 +01:00
Melanie 710c14fb57 Add SendRemoveInventoryFolders which allows to remove one or more
folders from the viewer's inventory view. For HG v2.0. More to come
2012-03-28 01:49:06 +01:00
Justin Clark-Casey (justincc) 445e8bc560 minor: Add some documentation to OnNewClient and OnClientClosed events 2012-03-28 01:08:56 +01:00
Justin Clark-Casey (justincc) cb41fb64be Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-28 01:06:18 +01:00
Melanie 37603ca6da Reverse a conditional in XInventory that made updating system folder evrsion numbers impossible 2012-03-27 23:11:06 +01:00
Diva Canto db5f46fa23 Let grided simulators retrieve the user's inventory skeleton 2012-03-27 15:24:55 -07:00
Justin Clark-Casey (justincc) b74a89bc12 minor: clean up some code formatting in VivoxVoiceModule.cs 2012-03-27 22:33:42 +01:00
Diva Canto 5e07336672 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 14:25:36 -07:00
Diva Canto 91950b3147 Amend to previous commit regarding the config name. Bugs bite. 2012-03-27 14:24:59 -07:00
Snoopy Pfeffer 19837ff4dd Two new scripting functions osInviteToGroup(userID) and osEjectFromGroup(userID) that invite/eject users to/from groups the object containing the script is set to. These functions also work for closed groups. 2012-03-27 22:30:02 +02:00
Snoopy Pfeffer 5d37a31436 Merge branch 'master' of ssh://snoopy@opensimulator.org/var/git/opensim 2012-03-27 22:16:25 +02:00
Snoopy Pfeffer 7223b63563 User level based restrictions for HyperGrid teleports, asset uploads, group creations and getting contacted from other grids. Incoming HyperGrid teleports can also be restricted to local users. 2012-03-27 22:09:58 +02:00
Dan Lake 971d32fda3 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 12:51:58 -07:00
Dan Lake 0247d738e2 When loading objects from DB, first add to scene, then call TriggerOnSceneObjectLoaded. 2012-03-27 12:50:58 -07:00
Diva Canto de242a29ca HG: beginning of a more restrictive inventory access procedure (optional). Experimental: we'll try switching the root folder from under the viewer. 2012-03-27 11:54:13 -07:00
Diva Canto 2e2634896d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 10:09:08 -07:00
Diva Canto 8131a24cde Send the config section name up to the service classes themselves (XInventory and Assets). 2012-03-27 10:08:13 -07:00
Justin Clark-Casey (justincc) 09c85a6a6c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-27 02:10:02 +01:00
Garmin Kawaguichi 1aa1a9eb3d In TerrainModule.cs, the command terrain save-tile is modified to remove an unnecessary double argument "minimum Y tile" 2012-03-27 02:05:57 +01:00
Robert Adams 872d513daa BulletSim: make avatar animations update properly.
It seems that ODE calls the avatar collision handling routine even
if there are no collisions. This causes the animation to be updated.
So, for instance, going from HOVER to FLY is caused by the physics engine
calling the collision routine each frame with 0 collisions.
2012-03-26 17:36:33 -07:00
Melanie ad865ab4fc Add some more overloads to allow registering overloaded methods and lists
of methods.
2012-03-26 16:46:07 +01:00
Robert Adams 2fcdecf090 BulletSim: fix typo introducted by previous checkins (git merge sometimes makes mistakes) 2012-03-26 08:57:40 -07:00
Robert Adams f8879e06d2 Merge branch 'bulletsim1' 2012-03-26 08:49:12 -07:00
Melanie 3810e98474 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
Conflicts:
	OpenSim/Region/OptionalModules/Scripting/ScriptModuleComms/ScriptModuleCommsModule.cs
2012-03-26 14:21:15 +01:00
Melanie 7e0936e4b6 Add a hust UUID to the script invocations 2012-03-26 14:19:55 +01:00
Mic Bowman 055269805d Fix compile error in ScriptModuelComms and add some debugging into the modInvoke
routines to simplify finding method registration issues.
2012-03-25 22:59:06 -07:00
Melanie 98a6c78943 Fix the omission on the interface declaration 2012-03-26 03:33:39 +01:00
Melanie c9c01d5226 Further simplify ScriptComms 2012-03-26 03:20:40 +01:00
Melanie ac0f1ff0a6 Dynamically create the delegate type to reduce complexity in the caller 2012-03-26 01:47:20 +01:00
Melanie d7cc194e83 Correct the design error I introduced into ScriptComms. Untested but about to
be.
2012-03-26 01:47:14 +01:00
Melanie cb44808504 Simplify the module invocation registration. The types and method name
can be pulled fromt he delegate so we don't need to pass them explicitly
2012-03-25 19:52:38 +01:00
Mic Bowman a07fa0395f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-24 22:45:17 -07:00
Mic Bowman a14437ad5a Add support for key, vector, rotation and list types for both
arguments and return values to the modInvoke family of functions.

See http://opensimulator.org/wiki/OSSL_Script_Library/ModInvoke
2012-03-24 22:43:42 -07:00
Justin Clark-Casey (justincc) 4f17537555 Allow the user to enter help topics in upper or lowercase.
Forcing uppercase (e.g. help Assets) is too annoying.
Thanks to WhiteStar for pointing this out.
2012-03-24 03:07:01 +00:00
Justin Clark-Casey (justincc) f03c3c062e Hack example on to "terrain save-tile" extended help.
Thanks to Garmin Kawaguichi for the initially suggested text.
2012-03-24 02:41:45 +00:00
Justin Clark-Casey (justincc) f53c6b2594 Use system provided temporary file in "terrain save-tile" to avoid problems with drive letters on windows
Thanks to Garmin Kawaguichi for picking up on this and providing an initial solution (which I adapted).
2012-03-24 02:30:43 +00:00
Justin Clark-Casey (justincc) cf61c74e90 Give feedback when "terrain save-tile" is not successfully invoked. 2012-03-24 02:16:44 +00:00
Robert Adams 07388071d4 Merge branch 'bulletsim1' of ssh://island.sciencesim.com/home/sceneapi/radams1/bs-opensim into bulletsim1
Conflicts:
	OpenSim/Region/Physics/BulletSPlugin/BSScene.cs
2012-03-23 16:20:53 -07:00
Robert Adams ff54b3c366 BulletSim: change default of shouldDisableContactPoolDynamicAllocation from False to True. It seems that collisions don't happen well when it is False (things fall through terrain). 2012-03-23 15:50:32 -07:00
Robert Adams 3f53b7bc91 BulletSim: Add new configuration parameters to get and set console commands 2012-03-23 13:15:24 -07:00
Robert Adams 142de1d02f BulletSim: add a bunch of internal Bullet configuration parameters to OpenSimDefaults.ini and the code. 2012-03-23 13:15:23 -07:00
Robert Adams 1273f259e4 BulletSim: remove confusion between angularVelocity and rotationalVelocity (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID. 2012-03-23 13:15:22 -07:00
Robert Adams 1a738caeca BulletSim: update TODO list. Rearrange code for readability. Add per object friction and restitution runtime settable parameters. 2012-03-23 13:15:18 -07:00
Robert Adams de24feb275 BulletSim: Add AvatarRestitution parameter. Centralize computation of buoyancy for flying. Tweek avatar default friction and resititution 2012-03-23 13:15:17 -07:00
Robert Adams 6ecdadb329 BulletSim: set buoyancy in only one place 2012-03-23 13:15:16 -07:00
Robert Adams b22d040169 BulletSim: add some new runtime setable parameters to match the dll. 2012-03-23 13:15:14 -07:00
Robert Adams 975184b3f9 BulletSim: Update list of TODO tasks 2012-03-23 13:15:11 -07:00
Robert Adams 164706043d Have the PhysicsParameters module output console command responses
directly to the console rather than logging at INFO (which doesn't
output anything for WARN).

There should really be a WriteLine method on ICommandConsole so all
of the different commands don't have to figure out where the command
output should go.
2012-03-23 13:11:58 -07:00
nebadon 6b87a29c86 fix yield prolog so it compiles with mono 2.11 there has been a bugzilla
report files with mono project in regards to this change, this simply
lets us move forward with using mono 2.11 for now :
https://bugzilla.xamarin.com/show_bug.cgi?id=4052
2012-03-23 02:22:57 -07:00
Justin Clark-Casey (justincc) d4beb2f5bc Comment out log message about sending periodic appearance updates. 2012-03-23 03:39:39 +00:00
Justin Clark-Casey (justincc) 54887bf386 Add experimental SendPeriodicAppearanceUpdates = true/false setting to [Startup] in OpenSim.ini
On osgrid and other places, I have observed that manually sending appearance updates from the console often relieves grey avatar syndrome.
Despite hunting high and low, I haven't been able to find where this packet is sometimes being lost - it might be a persistent viewer bug for all I know.
Therefore, this experimental setting resends appearance data for everybody in the scene every 60 seconds.  These packets are small and the viewer only fetches texture
data if it doesn't already have it.
Default is false.
2012-03-23 03:33:07 +00:00
Justin Clark-Casey (justincc) 4ed833bc9d Add a scene maintenance thread in parallel to the heartbeat thread. The maintenance thread will end up running regular jobs that don't need to be in the main scene loop.
The idea is to make the critical main scene loop as skinny as possible - it doesn't need to run things that aren't time critical and don't depend on update ordering.
This will be done gradually over time to try and uncover any issues.  Many non-criticial scene loop activities are being launched on separate threadpool threads anyway.
This may also allow modules to register their own maintenance jobs without having to maintain their own timers and threads.
Currently the maintenance loop runs once a second, as opposed to the 89ms scene loop.
2012-03-23 02:49:29 +00:00
Justin Clark-Casey (justincc) 349454ca27 Remove unnecessary shutting down check in Scene.Heartbeat(). Add some method doc. Rename HeartbeatThread, shuttingdown to conform to code standards. 2012-03-23 01:46:11 +00:00
BlueWall c0672cb7db Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-22 21:27:03 -04:00
BlueWall 176bba4f67 Merge branch 'master' of /home/opensim/src/opensim 2012-03-22 21:26:30 -04:00
Justin Clark-Casey (justincc) 18b3f1132e Rename Scene.StartTimer() to Start() - this method no longer uses a timer. Comment out more effectively unused old heartbeat code. 2012-03-23 01:21:43 +00:00
Justin Clark-Casey (justincc) 4ee8b3e23e Fix build break 2012-03-23 01:11:43 +00:00
Justin Clark-Casey (justincc) a9995ede65 Fix bug in ScenePresenceAnimator.RemoveAnimation() introduced in commit 1a8769e
Forgot to uppercase the animation name for default animations, since for some reason we store and use them in upper rather than lowercase.
2012-03-23 01:08:13 +00:00
Justin Clark-Casey (justincc) bc2963d42a Comment out unused scene loop restart code.
This has actually been unused since at least 0.7.2 due to earlier changes.
2012-03-23 01:03:10 +00:00
Justin Clark-Casey (justincc) 08b8ebcc7e Use m_lastFrameTick instead of m_lastUpdate in Scene.GetHealth(). m_lastUpdate is no longer properly updated and is redundant anyway. 2012-03-23 00:55:11 +00:00
BlueWall c903813e00 RegionReady logging
Some maintenance to clean up logging messages
2012-03-22 20:49:45 -04:00
Justin Clark-Casey (justincc) 40b9b519b8 Add commented out section on collisions switch in Scene.SetSceneCoreDebug().
This was not implemented before the recent changes but should be at some point.
2012-03-23 00:12:14 +00:00
Robert Adams efe61b2481 BulletSim: remove confusion between angularVelocity and rotationalVelocity (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID. 2012-03-22 17:04:06 -07:00
Justin Clark-Casey (justincc) 15c2499ccd Comment out login parameters debug output accidentally included with c4b2d24 2012-03-22 23:31:41 +00:00
Justin Clark-Casey (justincc) c1d064e1ca Comment out a terrain save-tile debugging message that accidentally crept in with c4b2d24 2012-03-22 23:16:52 +00:00
Justin Clark-Casey (justincc) 5bf45b9b98 refactor: simplify code for checks when part.OwnerID != destPart.OwnerID in MoveTaskInventoryItem() 2012-03-22 22:40:38 +00:00
Justin Clark-Casey (justincc) 760010d6fb Fix llGiveInventory() so that it checks the destination part for AllowInventoryDrop, not the source.
This allows llAllowInventoryDrop() to work.
Regression test added for this case.
2012-03-22 22:33:37 +00:00
Justin Clark-Casey (justincc) 3bcf71c647 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-22 22:33:16 +00:00
Justin Clark-Casey (justincc) c4b2d24f33 Add llGiveInventory() test from object to object where both objects are owned by the same user. 2012-03-22 22:17:07 +00:00
Diva Canto df624c13c9 HG Friends: don't notify if the server isn't there. 2012-03-22 15:08:57 -07:00
Melanie 6bc1ccf234 Change a false false to be truly true - or is this statement false?
Fixes perms boo-boo
2012-03-22 20:39:18 +00:00
Melanie b5d0bc2488 Rework Diva's patch to simplify it 2012-03-22 20:25:20 +00:00
Melanie 45b588cf00 Revert "Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch."
This reverts commit 6146e7ef25.
2012-03-22 20:10:38 +00:00
Diva Canto 6146e7ef25 Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch. 2012-03-22 12:57:12 -07:00
Justin Clark-Casey (justincc) 9949ac2f9f refactor: Rename AvatarAnimations -> DefaultAvatarAnimations for code clarity since non-default animations are handled completely separately from this class 2012-03-22 00:10:41 +00:00
Justin Clark-Casey (justincc) 71ec84d77f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-22 00:00:05 +00:00
Justin Clark-Casey (justincc) 1a8769e6ef Instead of loading default avatar animations in both SLUtil and AvatarAnimations, load just in AvatarAnimations instead.
This lets us remove the dependency of OpenSim.Framework.dll on data/avataranimations.xml, which is not necessary for ROBUST.
This commit also takes care of the odd situation where animations are stored and used internally with uppercase names (e.g. "STAND")
but scripts refer to them with lowercase names (e.g. "sit").
2012-03-21 23:57:39 +00:00
Robert Adams 7783c93802 BulletSim: update TODO list. Rearrange code for readability. Add per object friction and restitution runtime settable parameters. 2012-03-21 16:16:47 -07:00
Robert Adams cb2727cf6e BulletSim: Add AvatarRestitution parameter. Centralize computation of buoyancy for flying. Tweek avatar default friction and resititution 2012-03-21 16:16:46 -07:00
Robert Adams 6c55fd93a3 BulletSim: set buoyancy in only one place 2012-03-21 16:16:45 -07:00
Robert Adams 898a16802b BulletSim: add some new runtime setable parameters to match the dll. 2012-03-21 16:16:44 -07:00
Robert Adams eafc3d6c47 BulletSim: Update list of TODO tasks 2012-03-21 16:16:41 -07:00
Diva Canto 5170cd7577 Updated the UserAccountsClient a little bit, plus some more sanity checks on the service connector. 2012-03-21 11:22:39 -07:00
Diva Canto 4a9ca3ca8f HG Friends: reroute the status notifications to the HGFriends service, so that they can scale better. They were previously being handled by the UAS; that is still there, but it's now obsolete and will be removed in a future release. 2012-03-21 10:35:06 -07:00
Diva Canto d8bcb78b10 HG Friends: pulled sim-bound notification code to HGStatusNotifier, so that we can better manage this traffic. 2012-03-21 09:14:17 -07:00
Diva Canto 8ad426f329 Removed extraneous debug message 2012-03-21 08:08:43 -07:00
Diva Canto 1089e9b842 Removed extraneous debug message 2012-03-21 08:08:12 -07:00
Diva Canto 5abe1b4fce Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-20 21:36:46 -07:00
Diva Canto d49dd5573b Removed extraneous debug messages. Added a check for UUID.Zero. 2012-03-20 21:36:02 -07:00
Justin Clark-Casey (justincc) 54a8a5baba If "debug scene updates true" then print out to log when a garbage collection occurs. 2012-03-21 02:02:14 +00:00
Justin Clark-Casey (justincc) de53aa32e0 Add Scene.DebugUpdates switch which, if turned on, will print out a warning when a frame updates takes longer than twice the desired time
This is controlled via "debug scene updates true|false" on the region console.
Also fix an oversight with "debug scene teleport true|false"
2012-03-21 01:27:09 +00:00
Justin Clark-Casey (justincc) ab243f4a57 Incorporate scene teleporting debugging into "debug scene teleport true|false" command 2012-03-21 01:13:44 +00:00
Justin Clark-Casey (justincc) 9671e43497 Replace "scene debug true false true" console command with "scene debug scripting true" or other parameters as appropriate.
This is to allow individual switching of scene debug settings and to provide flexibiltiy for additional settings.
2012-03-21 01:02:58 +00:00
Melanie 7a0d7be44c Refix the fixed fix! 2012-03-21 00:17:58 +00:00
Diva Canto 69a9a6993e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-20 17:33:26 -07:00
Justin Clark-Casey (justincc) 91a001d3cf fix compile error from last commit 2012-03-21 00:31:31 +00:00
Diva Canto 9e8b194356 Fixed borkness with map search introduce by my last changes to it. 2012-03-20 17:29:34 -07:00
Diva Canto 742acc0a3c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-20 17:26:18 -07:00
Diva Canto f7c61790b7 Fixed borkness with previous merge. 2012-03-20 17:25:52 -07:00
Justin Clark-Casey (justincc) 022366a074 refactor: simplify EstateManagementModule.handleEstateDebugRegionRequest() 2012-03-21 00:23:46 +00:00
Diva Canto 841b4232f6 Line endings 2012-03-20 17:19:55 -07:00
Diva Canto 3fa51f66ec Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Conflicts:
	OpenSim/Framework/Util.cs
2012-03-20 17:19:14 -07:00
Diva Canto d08ad6459a HG Friends: allow the establishment of HG friendships without requiring co-presence in the same sim. Using avatar picker, users can now search for names such as "first.last@grid.com:9000", find them, and request friendship. Friendship requests are stored if target user is offline. TESTED ON STANDALONE ONLY. 2012-03-20 17:14:19 -07:00
Justin Clark-Casey (justincc) 7bf628ab31 Add ability to log warn if a frame takes longer than twice the expected time. Currently commented out. 2012-03-21 00:02:08 +00:00
Justin Clark-Casey (justincc) 4c41b53a4b Add prim name to "[MESH]: No recognized physics mesh..." log message 2012-03-20 23:35:50 +00:00
Justin Clark-Casey (justincc) 02f9caf6ce remove some mono compiler warnings 2012-03-20 23:34:10 +00:00
Justin Clark-Casey (justincc) 3701f893d3 remove unnecessary tmpFrameMS, use maintc instead for frame time calculation 2012-03-20 23:31:57 +00:00
Justin Clark-Casey (justincc) c39fba8f9d minor: remove some mono compiler warnings 2012-03-20 23:19:11 +00:00
Justin Clark-Casey (justincc) 8bdd38b804 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-20 23:14:15 +00:00
Justin Clark-Casey (justincc) 30b2a8c778 Move frame loop entirely within Scene.Update() for better future performance analysis and stat accuracy.
Update() now accepts a frames parameter which can control the number of frames updated.
-1 will update until shutdown.
The watchdog updating moves above the maintc recalculation for any required sleep since it should be accounted for within the frame.
2012-03-20 23:12:21 +00:00
nebadon bd1f848bf6 slight increase in jump power to make running jump slightly better. 2012-03-20 14:17:15 -07:00
nebadon 9ed3532c1b reduce avatar verticle jump from the absurd 5 meter jump to a less
absurd 3m vertical jump to better match what you would see in Second
Life and be more in line with what users would expect.
2012-03-20 13:45:38 -07:00
Justin Clark-Casey (justincc) 86bd287b53 refactor: precalculate the fixed movement factor for avatar tilting (sqrt(2)) rather than doing it multiple times on every move. 2012-03-20 20:39:33 +00:00
Justin Clark-Casey (justincc) 5f2a65c976 refactor: Eliminate unnecessary duplicate avCapsuleTilted 2012-03-20 20:28:58 +00:00
Justin Clark-Casey (justincc) a3abd65e3d Remove pointless ThreadAbortException catching in a test that isn't run anyway. 2012-03-20 01:41:32 +00:00
Justin Clark-Casey (justincc) 8c911ddaf0 Remove some pointless catching/throwing in the scene loop. 2012-03-20 01:39:19 +00:00
Justin Clark-Casey (justincc) 4cbaf053cf Fix small typo 2012-03-20 00:53:33 +00:00
Justin Clark-Casey (justincc) 1c0f3a1f21 Fix crash where two scene loop threads could changes m_MeshToTriMeshMap at the same time.
Have to lock m_MeshToTriMeshMap as property is static and with more than one region two scene loops could try to manipulate at the same time.
2012-03-20 00:40:03 +00:00
Justin Clark-Casey (justincc) e9271ec653 Add some doc about the EventManager.OnLoginsEnabled event. 2012-03-19 22:48:26 +00:00
Justin Clark-Casey (justincc) e2b1c569da Fix a bug where logins to standalones would fail if the RegionReady module was not active
Unfortunately, the OnLoginsEnabled event is currently only guaranteed to fire if the RegionReady module is active.
However, we can instantiate the AuthorizationService in the module RegionLoaded method since by this time all other modules will have been loaded
2012-03-19 22:45:03 +00:00
Justin Clark-Casey (justincc) 437f18bc41 Stop console command "xengine status" throwing an exception if there are no scripts in a region.
Addresses http://opensimulator.org/mantis/view.php?id=5940
2012-03-19 21:43:23 +00:00
Justin Clark-Casey (justincc) ab54ce1907 Fix configuration problems where XAssetDatabasePlugin was picked up accidentally.
The asset data plugin now implements IXAssetData rather than IAssetData so the ordinary AssetService should no longer pick it up.
This replaces the changes in 92b1ade.  There is no longer any need to adjust your StandaloneCommon.ini/Robust.ini/Robust.HG.ini files.
This may explain very recent issues in the last few weeks where textures have been disappearing or turning white (as they were going to different places).
Unfortunately, you will need to rollback to an earlier database backup or reupload the textures.
2012-03-19 00:18:04 +00:00
Diva Canto d1256536b5 Added GetUUID(first, last) on UserAgentsService so that we can finally make direct user connections. 2012-03-17 21:27:28 -07:00
Diva Canto 441ef301a3 Amend to previous commit: normalize strings ToLower. 2012-03-17 19:41:47 -07:00
Diva Canto 7dfa0309c6 More on HG access control. This commit splits the UserManagementModule into the Basic one and the HG one, so that we can do everything that needs to be done for HG ACLs to work without interfering with the vanilla opensim. For the moment, it finds foreign users who have left a trace in the region, e.g. an object. This makes it possible to ban/IM/etc these users using the regular avatar picker. TODO: contact the UAS directly given a name of the form First.Last @foo.com. 2012-03-17 15:36:20 -07:00
Diva Canto 1a4fdd2666 Moved HandleAvatarPickerRequest from the generic Scene.PacketHandlers to the UserManagementModule where it belongs. No functional changes. 2012-03-17 10:48:22 -07:00
Diva Canto d87a5758fb Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-17 10:00:43 -07:00
Diva Canto 33c14cb107 Region access control! Region operators can now specify things like DisallowForeigners (means what it says) and DisallowResidents (means that only admins and managers can get into the region). This puts the never-completed AuthorizationService to good use. Note that I didn't implement a grid-wide Authorization service; this service implementation is done entirely locally on the simulator. This can be changed as usual by pluging in a different AuthorizationServicesConnector. 2012-03-17 10:00:11 -07:00
Justin Clark-Casey (justincc) 4a57112f19 Add osGetInventoryDesc() as per http://opensimulator.org/mantis/view.php?id=5927
This allows one to get description data for a given prim inventory item.
Thanks MarcelEdward and GuduleLapointe!
2012-03-17 04:02:23 +00:00
Justin Clark-Casey (justincc) 1e4180fc93 Clean up "save iar" help 2012-03-17 02:54:19 +00:00
Diva Canto a4dca88a57 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-16 13:08:27 -07:00
Diva Canto a2009ffe2e Terrain: added [Terrain] section with an option to load an initial flat terrain. Default is still pinhead island. I much rather have a flat land in the beginning. 2012-03-16 13:08:05 -07:00
Justin Clark-Casey (justincc) 59b6f6a6e0 minor: reuse threadpool count we just fetched instead of fetching it again 2012-03-16 03:56:56 +00:00
Justin Clark-Casey (justincc) bece2023e7 Add total scripts count to "show threads"
However, this returns 0 on Mono (at least on 2.6.7)!  So not showing if it is zero.
2012-03-16 03:52:13 +00:00
Justin Clark-Casey (justincc) 9497a7c7bd refactor: separate out console and status report generation parts of XEngine 2012-03-16 03:32:14 +00:00
Justin Clark-Casey (justincc) 922d8c9312 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-16 03:28:17 +00:00
Justin Clark-Casey (justincc) 6e8f80f1ab Improve threadpool reporting to "show threads" console command (also gets printed out periodically) 2012-03-16 03:26:47 +00:00
Diva Canto 05bb2e4275 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-15 20:22:59 -07:00
Diva Canto 05a1493fff More on map search: send extra messages to the user regarding the region being found or not, because the UI is horribly confusing -- places profile is always "loading..." whether the region exists or not. 2012-03-15 20:22:26 -07:00
Justin Clark-Casey (justincc) 421b562a04 Add process working memory to "show stats" memory statistics.
This shows the actual amount of RAM being taken up by OpenSimulator (objects + vm overhead)
2012-03-16 02:43:33 +00:00
Justin Clark-Casey (justincc) aa881e8065 Allow comments to appear in command scripts (e.g. shutdown_commands.txt).
These can start with ; # or //
2012-03-16 02:07:26 +00:00
Justin Clark-Casey (justincc) 8550a4a07e In Top Scripts report, don't show scripts with no or less than 1 microsecond of execution time.
This is to make the report clearer and less confusing.
2012-03-16 01:46:21 +00:00
Justin Clark-Casey (justincc) c386b68373 Aggregate script execution times by linksets rather than individual prims.
This is for the top scripts report.
2012-03-16 01:31:53 +00:00
Justin Clark-Casey (justincc) 7df4a544fe Fix owner name display in "Top Colliders" and "Top Script" region reports. 2012-03-16 00:53:36 +00:00
Justin Clark-Casey (justincc) a4b01ef38a Replace script-lines-per-second with the script execution time scaled by its measurement period and an idealised frame time.
The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute.
Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100.
The actual measurement value should be script execution time per frame but XEngine does not work this way.
Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time.
This is still not ideal but gives reasonable results and allows scripts to be compared.
This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
2012-03-16 00:34:30 +00:00
Diva Canto 0548eeb571 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-15 16:03:33 -07:00
Diva Canto 18d1d6d3b4 More on SLURLs and V3. This is hacky, but it works. Basically, we have to redefine the encoding of HG URLs because the viewer messes them up. Examples of what works and doesn't work:
- secondlife://ucigrid00.nacs.uci.edu|8002/128/128 <-- works throughout the viewer
- secondlife://http|!!ucigrid00.nacs.uci.edu|8002+Test+Zone+1/128/128 <-- works throughout the viewer
- secondlife://http|!!grid.sciencesim.com!grid!hypergrid.php+Yellowstone01+74/128/128 <-- works throughout
- secondlife://http%3A%2F%2Fucigrid00.nacs.uci.edu%3A8002%20UCI%20Central%201/128/128 <-- works in chat, but not as URLs in the webkit
2012-03-15 16:03:09 -07:00
Diva Canto df144eb9e2 Revert "Revert "More hacking around viewer bug""
This reverts commit e5612553ce.
2012-03-15 14:55:25 -07:00
Diva Canto f52917288a These SLURLs are very confusing! -- reverting the revert. Hack is, indeed, needed.
Revert "Revert "Hack around https://jira.secondlife.com/browse/VWR-28570""

This reverts commit 5a9560db28.
2012-03-15 14:54:25 -07:00
Diva Canto 5a9560db28 Revert "Hack around https://jira.secondlife.com/browse/VWR-28570"
This reverts commit 697ac7fd9d.
2012-03-15 14:36:48 -07:00
Diva Canto e5612553ce Revert "More hacking around viewer bug"
This reverts commit 10731732b4.
2012-03-15 14:36:29 -07:00
Mic Bowman 8b5298a62e Protect the scriptmodulecomms interface. 2012-03-15 13:37:43 -07:00
Mic Bowman 402ff75d78 Adds a new script command 'modInvoke' to invoke registered functions
from region modules. The LSL translator is extended to generate the
modInvoke format of commands for directly inlined function calls.

A region module can register a function Test() with the name "Test".
LSL code can call that function as "Test()". The compiler will translate
that invocation into modInvoke("Test", ...)
2012-03-15 13:16:02 -07:00
Diva Canto fd4ad82367 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-15 11:06:08 -07:00
Diva Canto 10731732b4 More hacking around viewer bug 2012-03-15 11:05:43 -07:00
Diva Canto 697ac7fd9d Hack around https://jira.secondlife.com/browse/VWR-28570 2012-03-15 10:17:02 -07:00
Justin Clark-Casey (justincc) acb1355ff2 Remove property/field duplication in ScriptInstance where it's unnecessary. 2012-03-15 02:02:31 +00:00
Justin Clark-Casey (justincc) 2d32401e23 Simplify some logic in the ScriptInstance constructor - running is set to false in both if/else branches 2012-03-15 01:32:16 +00:00
Justin Clark-Casey (justincc) f0c1746063 minor: correct indentation levels 2012-03-15 01:26:38 +00:00
Justin Clark-Casey (justincc) 5ddda89238 Remove duplication of m_RunEvents and Running 2012-03-15 00:48:44 +00:00
Justin Clark-Casey (justincc) 2f81e53f63 Fix a problem where multiple near simultaneous calls to llDie() from multiple scripts in the same linkset can cause unnecessary thread aborts.
The first llDie() could lock Scene.m_deleting_scene_object.
The second llDie() would then wait at this lock.
The first llDie() would go on to remove the second script but always abort it since the second script's WorkItem would not go away.
Easiest solution here is to remove the m_deleting_scene_object since it's no longer justified - we no longer lock m_parts but take a copy instead.
This also requires an adjustment in XEngine.OnRemoveScript not to use instance.ObjectID instead when firing the OnObjectRemoved event.
2012-03-15 00:20:47 +00:00
Justin Clark-Casey (justincc) 12cebb12d5 Alleviate an issue where calling Thread.Abort() on script WorkItems can fail to release locks, resulting in a crippled simulator.
This seems to be a particular problem with ReaderWriterLockSlim, though other locks can be affected as well.
It has been seen to happen when llDie() is called in a linkset running more than one script.
Alleviation here means supplying a ScriptInstance.Stop() timeout of 1000ms rather than 0ms, to give events a chance to complete.
Also, we check the IsRunning status at the top of the ScriptInstance.EventProcessor() so that another event doesn't start in the mean time.
Ultimately, a better solution may have to be found since a long-running event would still exceed the timeout and be aborted.
2012-03-15 00:06:52 +00:00
Diva Canto d6dd3c42d1 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-13 20:16:19 -07:00
Diva Canto 479dd65a63 Teleports: bounce off repeated requests of teleporting the same agent. Some scripts do that, and that fails the whole thing. 2012-03-13 20:15:38 -07:00
Diva Canto 5a09572393 Minor sanity check on simulation agent handler (content type) 2012-03-13 20:14:51 -07:00
Justin Clark-Casey (justincc) 95ec96bf86 refactor: rename ScriptInstance.m_CurrentResult to m_CurrentWorkItem to make it more understandable as to what it is and what it does (hold a thread pool work item for a waiting of in-progress event)
Also add other various illustrative comments
2012-03-14 00:29:36 +00:00
Diva Canto 37828c9b9a Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-13 08:07:11 -07:00
Diva Canto 4eb2605c79 Datasnapshot: added "secret" to the registration/deregistration query so that data providers can verify authenticity if they want. 2012-03-13 08:06:30 -07:00
Justin Clark-Casey (justincc) 25592bbd85 Add max thread and min thread information to "xengine status" region console command 2012-03-12 21:16:05 +00:00
Robert Adams e0dd38f672 Rename the stream extension method WebUtil.CopyTo() to WebUtil.CopyStream().
.NET 4.0 added the method Stream.CopyTo(stream, bufferSize). For .NET 3.5
and before, WebUtil defined an extension method for Stream with the signature
Stream.CopyTo(stream, maxBytesToCopy). The meaning of the second parameter
is different in the two forms and depending on which compiler and/or
runtime you use, you could get one form or the other. Crashes ensue.
This change renames the WebUtil stream copy method to something that
cannot be confused with the new CopyTo method defined in .NET 4.0.
2012-03-12 10:07:04 -07:00
Diva Canto 13fb582c12 DataSnapshot: renamed gridserverURL to gatekeeperURL, and normalimzed the capitalization of 'name' to lower case, also in the same <grid> section. 2012-03-12 07:55:17 -07:00
Diva Canto 824eb7ed20 Added osGetGridGatekeeperURI() 2012-03-10 19:51:28 -08:00
Diva Canto 291dc39691 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-10 08:09:43 -08:00
Justin Clark-Casey (justincc) 05e821c444 Fix TestSaveOarNoAssets() by not launch a no-assets request on a separate thread.
This was previous behaviour anyway.
2012-03-10 03:11:28 +00:00
Justin Clark-Casey (justincc) 6e26f17923 minor: In IAR save, log when we start adding the control file rather than saying afterwards that we added it. 2012-03-10 02:13:17 +00:00
Justin Clark-Casey (justincc) 5507752dc5 minor: rearrange some save oar messages so they say what they're about to do rather than what they've just done. 2012-03-10 02:11:30 +00:00
Justin Clark-Casey (justincc) 1693799623 On OAR saving, try fetch assets serially rather than firing all the requests at the asset service at once.
This may (or may not) improve reliability for http://opensimulator.org/mantis/view.php?id=5898
Quick tests show that save time is the same.
2012-03-10 02:03:07 +00:00
Justin Clark-Casey (justincc) d6ebf2d6ca Add ability to specify a default estate to be used when creating regions.
This is configured in the new [Estates] section of OpenSim.ini.
If a default estate is configured then all new regions are automatically joined to it instead of asking the user.
If the default estate does not already exist then it is created.
Current default behaviour remains the same - the user is asked for estate details when necessary.
Thanks to Frenando Oliveira for the patch which I adapated further.
2012-03-10 01:27:05 +00:00
Mic Bowman 7b8e9d88e3 Serialize all web requests to a particular host:port pair; only applied to the PostToService variants. 2012-03-09 16:53:51 -08:00
Justin Clark-Casey (justincc) bdc968f1fc Factor out common default animations code into SLUtil. LLClientView now makes use of the SLUtil copy via a method rather than each LLClientView loading a separate copy.
As per opensim-users mailing list discussion.
2012-03-09 23:57:24 +00:00
Melanie 5c5a493791 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2012-03-09 22:59:23 +00:00
satguru srivastava 35f2479858 fix for NPC not playing internal animations 2012-03-09 22:58:59 +00:00
Diva Canto a58152bd2a More on inventory transfer hold ups:
- Added an inventory cache for caching root and system folders
- Synchronized the remote inventory connector, so that all the remote inventory calls are serialized
This will not make much difference in the hold ups. We'd have to move the FireAndForget high up to AddInventoryItem, but that opens up a can of worms regarding the notification of the recipient... the recipient would be notified of the offer before the items are effectively in his inventory, which could lead to surprises.
2012-03-09 12:59:24 -08:00
Diva Canto 81869c4a3f More on HG inventory transfers. Move the FireAndForget higher up. 2012-03-09 09:48:12 -08:00
Diva Canto f545d669de Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-08 19:32:21 -08:00
Diva Canto 7db5ba7702 More on the freeze on HG inventory transfers: spawn a threadlet on the functional asset posts so that the client threads doesn't freeze (but the network posts are serialized). 2012-03-08 19:31:53 -08:00
Justin Clark-Casey (justincc) 06dda14505 Simplify minimap coarse location code by just reference SP.AbsolutePosition
This is rather than checking whether the avatar is sitting and doing its own calculation.
2012-03-09 02:50:57 +00:00
Justin Clark-Casey (justincc) 205c36d3a4 Get rid of unnecessary ParentID == 0 check on SP.Get_AbsolutePosition since this is handled by the necessary ParentPart check 2012-03-09 02:44:08 +00:00
Justin Clark-Casey (justincc) 94e58ff6b9 Use SP.ParentPart instead of ParentID in places where it's more efficient (saving extra null checks, etc.)
However, it looks like we should retain SP.ParentID since it's much easier to use that in places where another thread could change ParentPart to null.
Otherwise one has to clumsily put ParentPart in a reference, etc. to avoid a race.
2012-03-09 02:38:11 +00:00
Justin Clark-Casey (justincc) b454326273 refactor: cleanup SP.HandleAgentSit so that everything is done within one if (part != null), rather than having unnecessary multiple checks 2012-03-09 02:33:48 +00:00
Diva Canto c22446ede0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-08 18:29:08 -08:00
Diva Canto 8a34d1b710 HG inventory/asset transfers: serialize asset posts. I'm using the same pattern as suggested in the patch mantis #5921. Testing it in this smaller context to see how it works. 2012-03-08 18:28:46 -08:00
Justin Clark-Casey (justincc) 73c47f7205 Remove a race condition from SP.Set_AbsolutePosition where we assume the ParentPart is still not null if the ParentID != 0
Another thread could come in and stand the avatar between those two instructions.
2012-03-09 02:22:22 +00:00
Melanie 42a7a85062 FireAndForget scripted rez - port from Avination 2012-03-09 00:57:49 +00:00
Justin Clark-Casey (justincc) df4b06aed1 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-09 00:20:10 +00:00
Justin Clark-Casey (justincc) 034c9d6bcc Merge branch 'xassetservice' 2012-03-09 00:19:42 +00:00
Justin Clark-Casey (justincc) 3c5bd7c35a minor: move some compression related var setup inside compression if/then switch 2012-03-09 00:16:49 +00:00
Justin Clark-Casey (justincc) 0cbdf9dad2 Put big fat EXPERIMENTAL warning in xassetservice database plugin
This should not currently be used in any circumstances except for experimentation.
Database tables used by this plugin can still change at any time with no migration path.
2012-03-09 00:05:34 +00:00
Diva Canto 9c8ef96301 Fixes mantis #5923 2012-03-08 15:55:43 -08:00
Melanie 675d40357c Hold a ref to the prim we're sat on rather than querying scene each time
the check for significant is carried out. Prevents a deadlock condition.
2012-03-08 19:14:34 +00:00
Justin Clark-Casey (justincc) fa2a64564a Move "change region" command into general category 2012-03-08 02:24:37 +00:00
Justin Clark-Casey (justincc) dfdb0e140c Uses shorter AddCommand form for "show estates" 2012-03-08 02:23:52 +00:00
Justin Clark-Casey (justincc) 650d761c06 Display help commander topics in capitalized form - the commands themselves are still lowercase.
Also convert the estate commands to simply AddCommand() calls so that commands from two different modules can be placed in the same category
2012-03-08 02:17:45 +00:00
Justin Clark-Casey (justincc) 430304c176 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-08 01:59:00 +00:00
Justin Clark-Casey (justincc) 749c3fef8a Change "help" to display categories/module list then "help <category/module>" to display commands in a category.
This is to deal with the hundred lines of command splurge when one previously typed "help"
Modelled somewhat on the mysql console
One can still type help <command> to get per command help at any point.
Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet).
Does not affect command parsing or any other aspects of the console apart from the help system.
Backwards compatible with existing modules.
2012-03-08 01:51:37 +00:00
Justin Clark-Casey (justincc) 6bdea15ecf minor: make NPC tests run in a given order, comment out log lines in mock region data plugins, null out scene in script and npc torture tests, add other doc comments to torture tests 2012-03-07 01:11:37 +00:00
Melanie a1b28a61a6 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2012-03-07 01:04:09 +00:00
Melanie 7769362687 Always zero the PhysActor on dupes to prevent side effects on the orignal prim 2012-03-07 01:03:26 +00:00
Justin Clark-Casey (justincc) f3678d217f Stop individually deleting objects at the end of each ObjectTortureTest.
We can now do this since the entire scene and all objects within it are now successfully gc'd at the end of these tests.
This greatly improves the time taken to run each test (by reducing teardown time, not the time to actually do the test work that we're interested in).
Slightly simplifies config read in Scene constructor to help facilitate this.
2012-03-07 00:31:18 +00:00
Justin Clark-Casey (justincc) 23aba007dd Add documentation to make more explicit the difference between OnRezScript and OnNewScript in the event manager
OnNewScript fires when a script is added to a scene
OnRezScript fires when the script actually runs (i.e. after permission checks, state retrieval, etc.)
2012-03-07 00:04:24 +00:00
Justin Clark-Casey (justincc) 3376979923 Remove static m_MainInstance in LocalGridServiceConnector.
I believe this was originally required back when there could be two LocalGridServiceConnectors but this is no longer the case.
Having such statics makes performance testing much more difficult since they prevent GC of objects unless static references are explicitly nulled.
2012-03-06 23:51:50 +00:00
Justin Clark-Casey (justincc) 98251cdab3 Add sensor, dataserver requests, timer and listener counts to "xengine status" command.
This is for diagnostic purposes.
2012-03-06 23:21:17 +00:00
Justin Clark-Casey (justincc) e9d8eb5a27 Remove unnecessary explicit ElapsedEventHandler in SimReporter 2012-03-06 22:31:25 +00:00
Justin Clark-Casey (justincc) 0f4cdc0c5b Explictly close down the StatsReporter so that we can shutdown its timer
This is another step necessary for the scene to be garbage collected between performance tests
2012-03-06 19:05:32 +00:00
Justin Clark-Casey (justincc) b3449e998a Fix TestSyntaxError() and TestSyntaxErrorDeclaringVariableInForLoop()
They were all failing assertions but the exceptions these threw were caught as expected Exceptions.
I don't think we can easily distinguish these from the Exceptions that we're expecting.
So for now we'll do some messy manually checking with boolean setting instead.
This patch also corrects the assertions themselves.
2012-03-06 02:30:22 +00:00
Justin Clark-Casey (justincc) a92153ed88 Get all test methods in OpenSim.Region.ScriptEngine.Tests.dll to report that they're running 2012-03-06 02:21:19 +00:00
Justin Clark-Casey (justincc) 85198a45cb Fix off by one error in script error reporting. 2012-03-06 02:01:47 +00:00
Justin Clark-Casey (justincc) 1dc03e5c4f Simplify NPCModuleTests code by putting the NPCModule in an instance variable rather than making each test fetch it seperately.
Also rename instance variables in the test to conform to naming standards and for understandability
2012-03-06 01:47:43 +00:00
Justin Clark-Casey (justincc) d44b7c486a Go back to setting appearance directly in NPCModule.SetAppearance() to fix mantis 5914
The part reverted is from commit 2ebb421.
Unfortunately, IAvatarFactoryModule.SetAppearance() does not transfer attachments.
I'm not sure how to do this separately, unfortunately I'll need to leave it to Dan :)
Regression test added for this case.
Mantis ref: http://opensimulator.org/mantis/view.php?id=5914
2012-03-06 01:27:30 +00:00
Chris Hart 413bc1e77e Updates to MSSQL store for 0.7.3 to include:
* Telehub support
* Bugfix to Friends lookups
* Updates to Creator fields to store up to 255 characters for HG item creator storage
2012-03-06 00:27:49 +00:00
Justin Clark-Casey (justincc) 441449e240 Switch to sha256 from sha1 in order to avoid future asset hash collisions.
Some successful collision attacks have been carried out on sha1 with speculation that more are possible.
http://en.wikipedia.org/wiki/Cryptographic_hash_function#Cryptographic_hash_algorithms
No successful attacks have been shown on sha256, which makes it less likely that anybody will be able to engineer an asset hash collision in the future.
Tradeoff is more storage required for hashes, and more cpu to hash, though this is neglible compared to db operations and network access.
2012-03-06 00:14:21 +00:00
Justin Clark-Casey (justincc) fd2b285b1b remove unnecessary hash local variable 2012-03-05 23:50:41 +00:00
BlueWall 33a154e446 Merge branch 'master' of /home/opensim/var/repo/opensim into v3_support 2012-03-04 10:42:37 -05:00
Justin Clark-Casey (justincc) 3780df8a32 Make asset compression optional. Currently set to false and not configurable from outside MySQLXAssetData. 2012-03-03 01:43:36 +00:00
Justin Clark-Casey (justincc) 75dc8b1aed Implement basic gzip compression for xassetdata
Whether this is worthwhile is debatable since here we are not transmitting data over a network
In addition, jpeg2000 (the biggest data hog) is already a compressed image format.
May not remain.
2012-03-03 01:28:58 +00:00
Justin Clark-Casey (justincc) 2535a4cafc If asset data already exists with the required hash then don't rewrite it 2012-03-03 00:05:02 +00:00
Justin Clark-Casey (justincc) 94b323d1d8 Perform asset storage transactionally 2012-03-02 23:41:54 +00:00
Justin Clark-Casey (justincc) 7113b44bdd Merge branch 'master' into xassetservice 2012-03-02 23:30:19 +00:00
Justin Clark-Casey (justincc) 98ad6ed255 comment out "[CAPS]: ScriptTaskInventory Request" log spam 2012-03-02 23:29:35 +00:00
Justin Clark-Casey (justincc) e81b3502ef Make xassetservice execute one query to retrieve the asset, not two 2012-03-02 23:26:03 +00:00
Justin Clark-Casey (justincc) c2c102d33e Remove outdated comment about checking attachment prims in Scene.PipeEventsForScript() 2012-03-02 22:52:26 +00:00
Justin Clark-Casey (justincc) 089fd61a3b Allow a script to receive events if its root prim is in an area where it's allowed to run rather than checking its own prim.
This allows scripts to run in child prims that are outside region boundaries.
This is an interim patch applied from http://opensimulator.org/mantis/view.php?id=5899 though it does not resolve that bug
Thanks tglion!
2012-03-02 22:43:24 +00:00
BlueWall d242d47e5c OpenID auth needs hashing before authenticating 2012-03-02 15:05:06 -05:00
BlueWall 6fc350725d Merge branch 'master' into v3_support 2012-03-02 15:02:09 -05:00
Dan Lake 64a036b4cf Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-03-02 09:19:35 -08:00
Dan Lake 8d249f8456 ScenePresence line endings and fix AllowMovement default to true. 2012-03-02 09:19:13 -08:00
Justin Clark-Casey (justincc) 6e3523e25e minor: remove mono compiler warning 2012-03-02 04:08:07 +00:00
Justin Clark-Casey (justincc) 2a2656f629 Merge branch 'master' into xassetservice 2012-03-02 04:01:53 +00:00
Justin Clark-Casey (justincc) be4199c3bc Make XAssetService a de-duplicating asset service.
This is an extremely crude implemenation which almost works by accident.  Nevertheless it does work.
It can be tested with the instructions at http://opensimulator.org/wiki/Feature_Proposals/Deduplicating_Asset_Service#Testing
It does not interact at all with the existing asset service or any data stored there.
This code is subject to change without notice and should not be used for anything other than gawking.
2012-03-02 03:57:55 +00:00