aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/ServiceConnectorsOut (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix recent regression in 3c6becd5 where login or hg login to variable sized ↵Justin Clark-Casey (justincc)2014-08-021-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-08-021-11/+15
| | | | checks before proceeding.
* Manual change as per patch in mantis #7212. (the patch failed to apply, but ↵Diva Canto2014-06-161-1/+1
| | | | the fix was good) Thanks FreakyTech.
* Added simulation version compatibility check so that agents coming from ↵Diva Canto2014-06-102-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.
* Don't report NPC presences.Diva Canto2014-05-261-1/+2
|
* 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.
* Return more specific error messages if an attempt to enter a region fails ↵Oren Hurvitz2014-05-191-13/+21
| | | | due to permissions (in QueryAccess and IsAuthorizedForRegion)
* Removed GetUserInventory(). It wasn't being used, and was creating warnings ↵Oren Hurvitz2014-04-234-51/+1
| | | | because it's Obsolete.
* Better error-handling when storing assets: recognize that 'null' is an error ↵Oren Hurvitz2014-04-201-11/+8
| | | | value
* In teleports, pass the source region to the destination (similar to an HTTP ↵Oren Hurvitz2014-04-092-5/+5
| | | | referrer)
* Allow invalidating the users cacheOren Hurvitz2014-04-082-2/+15
|
* When sending QueryAccess to a region, also send the user's Home URIOren Hurvitz2014-04-072-5/+5
|
* Added assets service method AssetsExist(), which returns whether the given ↵Oren Hurvitz2014-04-022-0/+22
| | | | | | list of assets exist. This method is used to optimize sending assets with embedded assets: e.g., when a Hypergrid visitor takes an item into the inventory.
* Run slow operations in a separate thread, instead of using FireAndForget ↵Oren Hurvitz2014-03-251-2/+2
| | | | | | (which has a 1-minute timeout) Resolves http://opensimulator.org/mantis/view.php?id=6945
* Enable MapImageServiceModule with no refreshDev Random2014-03-111-12/+22
|
* Non-functional changes of numbers into symbolic references and a fewRobert Adams2014-02-151-2/+2
| | | | comments on what variables really mean.
* Merge branch 'master' into varregionRobert Adams2014-01-192-4/+4
|\
| * 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
* | varregion: Update Warp3D to properly handle varregions.Robert Adams2014-01-191-5/+3
| | | | | | | | | | | | | | This includes additions to Warp3D: Optional rendering of mesh and scupltie prims (INI parameter. Off by default) Texturing of large prims (INI parameter. On by default) Better garbage collection
* | varregion: split up generated maptile images for storage in map. ThisRobert Adams2014-01-191-21/+67
| | | | | | | | makes maps for varregions show up properly.
* | varregion: Debug messages for region crossing debugging.Robert Adams2014-01-111-7/+17
| |
* | varregion: many more updates removing the constant RegionSize and replacingRobert Adams2013-12-263-3/+3
| | | | | | | | with a passed region size. This time in the map code and grid services code.
* | varregion: rename 'LegacyRegionLocX' back to 'RegionLocX' and same for Y and Z.Robert Adams2013-12-141-2/+2
| | | | | | | | | | | | 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-0/+3
| | | | | | | | | | Intermediate checkin of changing border cross computation from checking boundry limits to requests to GridService. Not totally functional.
* | varregion: many replacements of in-place arithmetic with calls toRobert Adams2013-11-284-2/+15
| | | | | | | | | | the Util functions for converting world addresses to region addresses and converting region handles to locations.
* | Merge branch 'master' into varregionRobert Adams2013-11-151-1/+1
|\ \ | |/
| * refactor: replace verbose checks with String.IsNullOrEmpty where applicable.Justin Clark-Casey (justincc)2013-11-151-1/+1
| | | | | | | | Thanks to Kira for this patch from http://opensimulator.org/mantis/view.php?id=6845
* | varregion: elimination of Constants.RegionSize from all over OpenSimulator.Robert Adams2013-11-082-3/+3
| | | | | | | | | | | | | | Routines in Util to compute region world coordinates from region coordinates as well as the conversion to and from region handles. These routines have replaced a lot of math scattered throughout the simulator. Should be no functional changes.
* | VarRegion: change RegionInfo storage of region coordinates from regionRobert Adams2013-09-281-2/+2
|/ | | | | | | | 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-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
* Allow one to specify a DefaultHGRegion flag in [GridService] in order to ↵Justin Clark-Casey (justincc)2013-09-022-0/+25
| | | | | | | | | | allow different default regions for HG and direct grid logins. This requires a new GridService.GetDefaultHypergridRegions() so ROBUST services require updating but not simulators. This method still returns regions flagged with just DefaultRegion after any DefaultHGRegions, so if no DefaultHGRegions are specified then existing configured defaults will still work. Immediate use is for conference where we need to be able to specify different defaults However, this is also generally useful to send experienced HG users to one default location and local users whose specified region fails (e.g. no "home" or "last") to another.
* 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...
* Further tweaks on TPs: not sending the callback URL and instead waiting ↵Diva Canto2013-07-241-1/+1
| | | | | | 15sec before closing the agent. This seems to be working fairly well. The viewer seems to have an 8 sec delay between UseCircuitCode and CompleteMovement. Also added back the position on UpdateAgent, because it's needed for TPing between neighboring regions.
* Guard against unauthorized agent deletes.Diva Canto2013-07-132-5/+5
|
* Deleted GET agent all around. Not used.Diva Canto2013-07-132-38/+0
|
* Put guards on a bunch of exception-inducing code, as seen in logs from load ↵Diva Canto2013-07-091-0/+5
| | | | test.
* Some more fixes on strange behaviors of Unknown User, esp. related to large ↵Diva Canto2013-07-061-13/+14
| | | | messy inventories and esp. related to kokua
* MORE DEBUG. DON"T USE THIS.Diva Canto2013-07-061-3/+3
|
* Same fix to LocalInventoryServiceConnector.csDiva Canto2013-06-301-1/+2
|
* More on mantis #6625Diva Canto2013-06-291-1/+2
|
* 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.
* Add the standard OpenSimulator copyright notice to the top of InventoryCache.csJustin Clark-Casey (justincc)2013-06-151-1/+28
|
* Adjust the locking on InventoryCache. Locking for r/w of the ExpiringCache ↵Justin Clark-Casey (justincc)2013-06-151-14/+23
| | | | isn't needed since it's thread safe but r/w of contained dictionaries isn't thread-safe
* Uncomment Mic's code and split to create new regression ↵Justin Clark-Casey (justincc)2013-06-111-23/+41
| | | | TestAddTemporaryAsset() and TestAddTemporaryLocalAsset()