aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Framework/EntityTransfer (follow)
Commit message (Collapse)AuthorAgeFilesLines
* It turns out that child agent management has had a bug for a while: there ↵Diva Canto2014-08-021-0/+19
| | | | was an inconsistency in the scope between opening and closing child agents in neighboring regions. For opening (in EnableChildAgents), the region's DrawDistance was being used; for closing (in IsOUtsideView) , the viewer's (SP) DrawDistance was being used. This fixes this inconsistency, therefore eliminating bugs observed in TPs between, at least, neighboring varregions.
* Avoid an exception in creating child agents some times.Diva Canto2014-08-021-0/+2
|
* Added simulation version compatibility check so that agents coming from ↵Diva Canto2014-06-101-4/+6
| | | | 0.7.6 to a varregion running in 0.8 and above will be denied teleport, rather than be allowed and crash the viewer.
* Tell QueryAccess explicitly whether the user is coming in via Teleport or ↵Oren Hurvitz2014-05-191-2/+2
| | | | | | Cross, because the permission checks are different. Previously we used a heuristic of checking if the entry position is 0 to differentiate between Teleport and Cross, but that doesn't work anymore since we've started providing the precise entry position for cross, too. That's required in order to ensure that the user is allowed to enter the parcel that he's walking into.
* Return more specific error messages if an attempt to enter a region fails ↵Oren Hurvitz2014-05-191-1/+1
| | | | due to permissions (in QueryAccess and IsAuthorizedForRegion)
* Eliminated many warningsOren Hurvitz2014-04-232-3/+1
|
* In teleports, when sending the Source region, set its ServerURI to the ↵Oren Hurvitz2014-04-132-2/+7
| | | | Gatekeeper URI (which is used with Regions); not the Home URI (which is used with Users)
* In teleports, pass the source region to the destination (similar to an HTTP ↵Oren Hurvitz2014-04-092-13/+20
| | | | referrer)
* Improved error messages when a teleport fails. The viewer's dialog already ↵Oren Hurvitz2014-04-081-4/+4
| | | | says "Teleport failed", so adding "Teleport refused" is redundant.
* When sending QueryAccess to a region, also send the user's Home URIOren Hurvitz2014-04-071-2/+5
|
* Refactored: use Scene.GetAgentHomeURI() to get the Home URI of a userOren Hurvitz2014-04-072-9/+2
|
* Fixed: during a teleport we always sent the error "The teleport destination ↵Oren Hurvitz2014-04-062-7/+1
| | | | | | could not be found" to the client. This happened on both success and failure. On successful teleports this error wasn't actually shown to the user. But on failed teleports this error could hide the true cause of the failure. For example, attempting to use a Landmark that's more than 4095 regions away would result in two warnings appearing in the viewer: "Region too far" and "Destination could not be found". The second message hid the first one, so it wasn't obvious to the user what is actually the problem.
* When preparing a Hypergrid teleport, tell the receiving grid which user is ↵Oren Hurvitz2014-04-062-5/+16
| | | | | | entering the grid. This can affect which region to use. E.g., returning users may be allowed to enter any region, whereas users from other grids will have to enter a gateway region. Previously per-user decisions were only made later, but by then it's too late to change which region the user enters.
* Pass the correct position to QueryAccess() instead of UUID.Zero (it was ↵Oren Hurvitz2014-04-061-1/+1
| | | | wrong in one place)
* When teleporting using Hypergrid, show more informative error messages in ↵Oren Hurvitz2014-04-032-10/+27
| | | | case of error
* BulletSim: make avatar physical shape to be a rectangle rather thanRobert Adams2014-04-021-5/+1
| | | | | | | | a capsule. Set the default to be the rectangle shape and adjust the parameters in OpenSimDefaults.ini for the new shape. The rectangle shape will perform better and avatar height can be computed more accurately.
* Wrap contents of ETM.CrossAgentToNewRegionAsync() in try/catch to avoid a ↵Justin Clark-Casey (justincc)2014-04-031-13/+19
| | | | | | failure terminating simulators running on Windows In relation to http://opensimulator.org/mantis/view.php?id=7050
* add newRegion parameter to CrossAgentToNewRegion event and trigger the event ↵dahlia2014-02-201-0/+2
| | | | after crossing thread is invoked
* Properly restore position on crossing failure for mega-regions.Robert Adams2014-02-151-6/+15
| | | | | Fix odd "cannot cross into banned parcel" viewer error message when crossing into non-existant region. Proper permission failure messages are now returned.
* Rewrite of mega-region code to use new form of border checking.Robert Adams2014-02-151-34/+14
| | | | | | | This commit eliminates all of the 'border' class and list code and replaces it with testing if in the current region. Impacts: can make a mega-region out of varregions of the same size; and mega-region combinations must be rectangular (not square but rectangular)
* Merge branch 'justincc-master'Justin Clark-Casey (justincc)2014-02-141-2/+12
|\
| * Change warns associated with UserAgentServiceConnector to debugs, as this is ↵Justin Clark-Casey (justincc)2014-02-141-1/+1
| | | | | | | | | | | | not necessarily a problen with the source simulator (e.g. someone else's remote simulator cannot be contacted). This is Oren Hurvitz's second patch from http://opensimulator.org/mantis/view.php?id=6956 with a small amount of correction
| * If calls to UserAgentServiceConnector fail then throw an exception. This ↵Justin Clark-Casey (justincc)2014-02-141-2/+12
| | | | | | | | | | | | lets the caller decide whether to discard the error or not. This is Oren Hurvitz's 0001 patch from http://opensimulator.org/mantis/view.php?id=6956 but I ended up doing some tweaking to resolve patch application issues.
* | varregion: enable teleporting to a varregion by clicking on the map andRobert Adams2014-01-261-3/+28
| | | | | | | | | | | | | | pressing the 'teleport' button. This commit adds returning region map info for all the subregions of a varregion. This also handles the selection of the extra region and then the displacement of the postion so the teleport is to the correct location.
* | Merge branch 'master' into varregionRobert Adams2014-01-211-2/+2
|\ \
| * | Materials module: a) Store materials as assets; b) Finalized it (removed the ↵Oren Hurvitz2014-01-201-2/+2
| | | | | | | | | | | | | | | | | | "Demo" label; removed most of the logging); c) Enabled by default Changed UuidGatherer to use 'sbyte' to identify assets instead of 'AssetType'. This lets UuidGatherer handle Materials, which are defined in a different enum from 'AssetType'.
* | | Merge branch 'master' into varregionRobert Adams2014-01-191-1/+1
|\ \ \ | |/ /
| * | minor: since structs are values, assigning them to another variable copies ↵Justin Clark-Casey (justincc)2014-01-171-1/+1
| | | | | | | | | | | | it. Instantiation is unnecessary.
| * | Some missing definitions needed for successful compilation.Robert Adams2014-01-041-1/+2
| | |
| * | varregion: Add region size to teleport event messages (EnableSimulator,Robert Adams2014-01-041-11/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CorssRegion, TeleportFinishEvent). Have Simian grid service return the region size. Many teleport related debug log messages. Can be removed when teleport works (like that's ever going to happen). Conflicts: OpenSim/Framework/RegionInfo.cs
* | | varregion: Add region size to teleport event messages (EnableSimulator,Robert Adams2014-01-031-11/+21
| | | | | | | | | | | | | | | | | | | | | CorssRegion, TeleportFinishEvent). Have Simian grid service return the region size. Many teleport related debug log messages. Can be removed when teleport works (like that's ever going to happen).
* | | varregion: extract banned region logic into a class for cleanlyness.Robert Adams2013-12-271-33/+174
| | | | | | | | | | | | | | | Add 'not found' caching in EntityTransferModule.GetRegionContainingWorldLocation so hitting borders and bad teleports do not continuiously hammer on the GridService.
* | | varregion: many more updates removing the constant RegionSize and replacingRobert Adams2013-12-261-22/+21
| | | | | | | | | | | | with a passed region size. This time in the map code and grid services code.
* | | varregion: add lots of DEBUG level log messages. Especially for teleport.Robert Adams2013-12-242-1/+7
| | |
* | | varregion: fix bug where destination region is not found and object isRobert Adams2013-12-241-47/+61
| | | | | | | | | | | | not restored to its original location.
* | | Merge branch 'master' into varregionRobert Adams2013-12-171-503/+235
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | Add new region crossing code to varregion Conflicts: OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs OpenSim/Region/Framework/Scenes/ScenePresence.cs
| * | This is the Avination Entity Transfer Module. Surprisingly, it still compilesMelanie2013-12-111-217/+204
| |/ | | | | | | | | but I don't know if it runs. Will probably crash and burn as the supporting code isn't there yet.
* | varregion: rename 'LegacyRegionLocX' back to 'RegionLocX' and same for Y and Z.Robert Adams2013-12-141-12/+12
| | | | | | | | | | | | Rename 'RegionWorldLocX' to 'WorldLocX' and same for Y and Z. This keeps the downward compatibility and follows the scheme of 'region' and 'world' location naming that is happening in the Util module.
* | varregion: Add MaxRegionSize constant and enforce in RegionInfo.Robert Adams2013-11-301-60/+158
| | | | | | | | | | Intermediate checkin of changing border cross computation from checking boundry limits to requests to GridService. Not totally functional.
* | VarRegion: change RegionInfo storage of region coordinates from regionRobert Adams2013-09-281-24/+24
|/ | | | | | | | count number to integer world coordinates. Added new methods RegionWorldLoc[XY]. Refactored name of 'RegionLoc*' to 'LegacyRegionLoc*' throughout OpenSim. Kept old 'RegionLoc*' entrypoint to RegionInfo for downward compatability of external region management packages.
* refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make ↵Justin Clark-Casey (justincc)2013-09-271-4/+4
| | | | | | it clear that all non-clientstack callers should be using this rather than RemoveClient() in order to step through the ScenePresence state machine properly. Adds IScene.CloseAgent() to replace RemoveClient()
* minor: correct attachment spelling mistake in log message in ↵Justin Clark-Casey (justincc)2013-09-261-1/+1
| | | | HGEntityTransferModule.OnIncomingSceneObject()
* minor: log MaxOutgoingTransferVersion at EntityTransferModule startupJustin Clark-Casey (justincc)2013-09-261-0/+4
|
* For debug purposes, allow simulators to force use of earlier SIMULATION/0.1 ↵Justin Clark-Casey (justincc)2013-09-191-4/+49
| | | | | | | | teleport protocol even if SIMULATION/0.2 is available. This is specified in the MaxOutgoingTransferVersion attribute of [EntityTransfer] in OpenSim.ini, see OpenSimDefaults.ini for more details. Default remains "SIMULATION/0.2" Primarily for http://opensimulator.org/mantis/view.php?id=6755
* Allow setting the EntityTransfer-max_distance to 0 to override distance ↵BlueWall2013-09-121-0/+3
| | | | checks. This is to facilitate current viewer work fixing the distance limitations for teleporting.
* Fix bug where users teleporting to non-neighbour regions could continue to ↵Justin Clark-Casey (justincc)2013-09-021-0/+7
| | | | | | | | hear chat from their source region for some time after teleport completion. This occurs on v2 teleport since the source region now waits 15 secs before closing the old child agent, which could still receive chat. This commit introduces a ScenePresenceState.PreClose which is set before the wait, so that ChatModule can check for ScenePresenceState.Running. This was theoretically also an issue on v1 teleport but since the pause before close was only 2 secs there, it was not noticed.
* minor: shortern warning messages in EntityTransferModule when UpdateAgent() ↵Justin Clark-Casey (justincc)2013-08-231-4/+4
| | | | fails
* Try to make "slow down" message that one could receive on rapid teleporting ↵Justin Clark-Casey (justincc)2013-08-151-1/+2
| | | | | | | | more informative to the user. This message is seen on V2 if one attempts to quickly re-teleport from a source region where one had previously teleported to a non-neighbour and back within 15 secs. The solution here is for the user to wait a short while. This message can also be seen on any teleport protocol if one recieves multiple teleport attempts simultaneously. Probably still useful here to help identify misbehaving scripts.
* Move DoNotCloseAfterTeleport flag reset before UpdateAgent in V2 to avoid a ↵Justin Clark-Casey (justincc)2013-08-151-2/+6
| | | | low probability where the destination re-establishing the child connection before the flag was reset
* Rely on the Scene.IncomingCloseAgent() check as to whether the connection ↵Justin Clark-Casey (justincc)2013-08-151-14/+6
| | | | | | should be kept open after teleport-end rather than doing this in the ET Module This is safer since the close check in IncomingCloseAgent() is done under lock conditions, which prevents a race between ETM and Scene.AddClient()