aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation (follow)
Commit message (Collapse)AuthorAgeFilesLines
* fix internal support for non square regionsUbitUmarov2015-10-311-2/+3
|
* Introduce an EntityTransferContext carrying the version numbers to passMelanie Thielker2015-10-312-7/+5
| | | | | to all interested functions. Should fix the varregion conditional. Still a testing version, do NOT use in production!
* Remove testing cruft that is blocking the new protocols. Unit tests noMelanie Thielker2015-10-311-7/+1
| | | | | longer test TP v1 now. TP v1 will be removed within 6 months anyway.
* let silly tests override version on local connectionsUbitUmarov2015-10-311-2/+3
|
* Testing stage of the new versioning system. Use at own risk. May notMelanie Thielker2015-10-312-15/+8
| | | | work. Will eat your babies. Yada. Yada.
* Clean up of simulation version, the number that rules the compatibility of ↵Diva Canto2015-10-181-20/+2
| | | | | | | | teleports: - It's not configurable anymore, it's fixed in code. Each number means an increase in features of the teleport procedure - Its definition moved to the global VersionInfo class As of now it's still 0.3.
* Deleted OpenSim.Framework.Communications. Moved its two remaining files to ↵Diva Canto2015-09-041-1/+0
| | | | OpenSim.Framework.
* Partial plumbing for the agent stateful module features negotiationMelanie Thielker2015-08-202-6/+7
|
* Removed unused code related to DNS lookupsOren Hurvitz2015-07-231-2/+0
|
* Fix recent regression in 3c6becd5 where login or hg login to variable sized ↵Justin Clark-Casey (justincc)2014-07-221-15/+12
| | | | | | | | | regions failed with outdated simulator message. I forgot that a null 'their version' would not be passed over the wire and ends up as an empty string instead (like older simulators). So instead pass through the correct simulator protcol version instead (SIMULATOR/0.3) when querying from login or hg login. Also removes a debug console write for agent limit accidentally left in for the same commit. Relates to mantis 7276
* On login and first HG entrance to a foreign grid, perform query access ↵Justin Clark-Casey (justincc)2014-07-211-11/+15
| | | | checks before proceeding.
* Added simulation version compatibility check so that agents coming from ↵Diva Canto2014-06-062-6/+26
| | | | 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-192-5/+5
| | | | | | 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.
* In teleports, pass the source region to the destination (similar to an HTTP ↵Oren Hurvitz2014-04-092-5/+5
| | | | referrer)
* When sending QueryAccess to a region, also send the user's Home URIOren Hurvitz2014-04-072-5/+5
|
* Remove old IInterRegionComms and references. This hasn't been used since ↵Justin Clark-Casey (justincc)2014-01-162-4/+4
| | | | 2009 and was superseded by ISimulationService
* refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make ↵Justin Clark-Casey (justincc)2013-09-271-1/+1
| | | | | | 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 spelling of Initialized in LSC connector version messageJustin Clark-Casey (justincc)2013-09-251-1/+1
|
* refactor: rename *ChildAgentDataUpdate() methods to *UpdateChildAgent()Justin Clark-Casey (justincc)2013-09-181-3/+3
| | | | verb-noun is consistent with other similar methods
* Amend Justin's last commit regarding the new config var ServiceVersion. The ↵Diva Canto2013-08-021-1/+2
| | | | section may not exist at all.
* Allow older teleport ConnectorProtocolVersion of "SIMULATION/0.1" to be ↵Justin Clark-Casey (justincc)2013-08-022-27/+27
| | | | | | | | manually forced in a new [SimulationService] config setting. This is for testing and debugging purposes to help determine whether a particular issue may be teleport related or not "SIMULATION/0.2" (the newer teleport protocol) remains the default. If the source simulator only implements "SIMULATION/0.1" this will correctly allow fallback to the older protocol. Specifying "SIMULATION/0.1" will force the older, less efficient protocol to always be used.
* Fix regression from 056a6ee7 because the RemoteSimulationConnector uses a ↵Justin Clark-Casey (justincc)2013-07-261-2/+5
| | | | copy of the LocalSimulationConnector but never initializes it (hence ServiceVersion was never set)
* Fix regression tests relating to agent transfer by making simulator use last ↵Justin Clark-Casey (justincc)2013-07-261-4/+9
| | | | week's SIMULATOR/0.1 protocol for now.
* New Teleport protocol (V2), still compatible with V1 and older. (version of ↵Diva Canto2013-07-241-1/+1
| | | | | | | | the destination is being checked) In this new protocol, and as committed before, the viewer is not sent EnableSimulator/EstablishChildCommunication for the destination. Instead, it is sent TeleportFinish directly. TeleportFinish, in turn, makes the viewer send a UserCircuitCode packet followed by CompleteMovementIntoRegion packet. These 2 packets tend to occur one after the other almost immediately to the point that when CMIR arrives the client is not even connected yet and that packet is ignored (there might have been some race conditions here before); then the viewer sends CMIR again within 5-8 secs. But the delay between them may be higher in busier regions, which may lead to race conditions. This commit improves the process so there are are no race conditions at the destination. CompleteMovement (triggered by the viewer) waits until Update has been sent from the origin. Update, in turn, waits until there is a *root* scene presence -- so making sure CompleteMovement has run MakeRoot. In other words, there are two threadlets at the destination, one from the viewer and one from the origin region, waiting for each other to do the right thing. That makes it safe to close the agent at the origin upon return of the Update call without having to wait for callback, because we are absolutely sure that the viewer knows it is in th new region. Note also that in the V1 protocol, the destination was getting UseCircuitCode from the viewer twice -- once on EstablishAgentCommunication and then again on TeleportFinish. The second UCC was being ignored, but it shows how we were not following the expected steps...
* Guard against unauthorized agent deletes.Diva Canto2013-07-132-5/+5
|
* Deleted GET agent all around. Not used.Diva Canto2013-07-132-38/+0
|
* Change IsLocalRegion from using region handle to using regionID. This was ↵Diva Canto2013-06-221-5/+5
| | | | affecting UpdateAgent and CloseAgent in cases where the foreign region is on the same coordinates as *some* local region.
* Where this is not already happening, trigger asychoronous calls to ↵Justin Clark-Casey (justincc)2013-05-161-1/+1
| | | | | | | CloseChildAgent() above the LocalSimulationConnector level. This is so that other callers (such as SceneCommunicationService.SendCloseChildAgentConnections() can perform all closes asynchronously without pointlessly firing another thread for local closes). No functional change apart from elimination of unnecessary chaining of new threads.
* Add code for testing event queue messages recevied on region cross.Justin Clark-Casey (justincc)2013-03-061-3/+6
| | | | This is currently disabled pending an improvement in the test code to properly add avatars when an event queue module is present.
* Last 27 modules' directives (service connectors out).Diva Canto2012-11-132-0/+4
|
* Remove any mention of IRegionModule from region names and comments to aidMelanie2012-11-122-6/+6
| | | | grepping for remaining uses
* Add --force flag to "kick user" console command to allow bypassing of recent ↵Justin Clark-Casey (justincc)2012-08-201-1/+1
| | | | | | | | | race condition checks. This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once). You should only attempt --force if a normal kick fails. This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive. This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
* Removing unused handling of incoming create object by userID and itemID only.Justin Clark-Casey (justincc)2012-06-302-26/+1
| | | | | It appears this was never actually used since attachments were rezzed in other code. This was never available on remote simulator comms, only local.
* Fix bug where a failed QueryAccess to a remove region would always have the ↵Justin Clark-Casey (justincc)2012-05-251-2/+1
| | | | reason "Communications failure" no matter what the destination region actually returned
* Make ISimulationScene.GetScene() used the more efficient region id for ↵Justin Clark-Casey (justincc)2012-05-242-8/+16
| | | | lookup rather than the region handle.
* If an agent is still registered as 'in transit' by the source region, don't ↵Justin Clark-Casey (justincc)2012-05-241-91/+95
| | | | | | | | | | | | allow an immediate teleport back. This is to help relieve a race condition when an agent teleports then immediately attempts to teleport back before the source region has properly cleaned up/demoted the old ScenePresence. This is rare in viewers but much more possible via scripting or region module. However, more needs to be done since virtually all clean up happens after the transit flag is cleared . Possibly need to add a 'cleaning up' state to in transit. This change required making the EntityTransferModule and HGEntityTransferModule per-region rather than shared, in order to allow separate transit lists. Changes were also required in LocalSimulationConnector. Tested in standalone, grid and with local and remote region crossings with attachments.
* Tweak log messages on local region to region teleport path to help with ↵Justin Clark-Casey (justincc)2012-04-261-5/+5
| | | | problem resolution.
* Add a position parameter to region crossing of objects. This avoids theMelanie2012-02-232-6/+6
| | | | | | potential bad update that places an object at the opposite side of the origin sim for a moment before actually crossing it. Especially important in grids like OSG where lag between sims is high.
* Remove the "[LOCAL SIMULATION CONNECTOR]: Did not find region {0} for ↵Justin Clark-Casey (justincc)2011-11-191-1/+0
| | | | | | | SendCreateChildAgent" message This is misleading since a simulator will call this method before successfully trying remote regions. Also comments out spammy "[SIMULATION]: Stream handler called" AgentHandlers messages for now.
* Check for RegionID instead of RegionHandle. Other minor tweaksDiva Canto2011-04-301-2/+2
|
* Fatpack message on agent transfers: 1 message only (UpdateAgent) containing ↵Diva Canto2011-04-282-4/+9
| | | | the agent and all attachments. Preserves backwards compatibility -- older sims get passed attachments one by one. Meaning that I finally introduced versioning in the simulation service.
* Changed order of checks for local regions when processingMic Bowman2011-03-041-16/+6
| | | | | AgentUpdate messages. Should improve throttles and reprioritization when an avatar is moving.
* Change the QUERYACCESS method to eliminate spurious access denied messagesMelanie2011-02-162-5/+7
|
* Change UpdateAgent (for changes in agent position) to be sentMic Bowman2011-02-031-7/+7
| | | | | | once to each simulator rather than once to each region. This should help with some of the delays caused by multiple outstanding requests to a single service point.
* Fix up QueryAccess to also check parcelsMelanie2011-01-282-9/+6
|
* Spawn a threadlet upon receiving requests to close agents. The operation may ↵Diva Canto2011-01-071-1/+4
| | | | take too long, and we don't need to keep the caller waiting.
* Plumb a code path for the entity transfer module to ask a destination sceneMelanie2010-12-092-0/+34
| | | | whether or not an agent is allowed there as a root agent.
* Fixes the long-standing RegionUp bug! Plus lots of other cleanups related to ↵Diva Canto2010-06-131-1/+0
| | | | neighbours.
* Get the local inner simulation service object to the handler so that there ↵Diva Canto2010-03-152-0/+10
| | | | is no possibility of cascading requests when failures happen.
* * Typo fixesJohn Hurliman2010-03-092-2/+2
| | | | * Performance improvement in the expensive GenerateClientFlags()