aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* * Move the BasicDOSProtector.cs to OpenSim.Framework (all useful classes ↵teravus2013-10-071-1/+29
| | | | | | belong there.....) * Add an IsBlocked(string Key) method so it can be used more generically. (think.. if we want to rate limit login failures, we could have a call in the Login Service to IsBlocked(uuid.ToString()) and ignore the connection if it returns true, if IsBlocked returns false, we could run the login information and if the login fails we could run the Process method to count the login failures.
* * Refactorteravus2013-10-077-415/+218
| | | | * Break out common BasicDOSProtector code into separate class.
* * Added a Basic DOS protection container/base object for the most common ↵teravus2013-10-079-6/+1059
| | | | | | | | | HTTP Server handlers. XMLRPC Handler, GenericHttpHandler and <Various>StreamHandler * Applied the XmlRpcBasicDOSProtector.cs to the login service as both an example, and good practice. * Applied the BaseStreamHandlerBasicDOSProtector.cs to the friends service as an example of the DOS Protector on StreamHandlers * Added CircularBuffer, used for CPU and Memory friendly rate monitoring. * DosProtector has 2 states, 1. Just Check for blocked users and check general velocity, 2. Track velocity per user, It only jumps to 2 if it's getting a lot of requests, and state 1 is about as resource friendly as if it wasn't even there.
* * Added a unique and interesting WebSocket grid login processor by hijacking ↵teravus2013-10-042-0/+57
| | | | the LLSD login code. This sends the data through the normal login channels and spits out a JSON object back that mimics the login response. Feel free to comment on the best way to set this up as a config option.
* * Add an initial complete frame timeout to the WebSocket processor to make ↵teravus2013-10-041-2/+65
| | | | it easier to write WebSocket service code that is resistant to Denial of Service attacks.
* Added SimulatorFeatures/OpenSimExtras: say-range, whisper-range, ↵Diva Canto2013-10-041-0/+37
| | | | shout-range, at the request of Singularity dev Liru-Dargon
* Update an AssmblyVersion property that I missed to 0.8.0Justin Clark-Casey (justincc)2013-10-041-1/+1
|
* Bump OPenSimulator version and assembly versions up to 0.8.0 DevJustin Clark-Casey (justincc)2013-10-0462-62/+62
|
* Add OnChatToNPC and OnInstantMessageToNPC messages to NPCAvatar to allow ↵Justin Clark-Casey (justincc)2013-10-041-6/+21
| | | | | | region modules to directly subscribe to chat and messages received by NPCs Currently still requires INPC from NPCModule.GetNPC() to be cast to an NPCAvatar.
* minor: Disable logging left active on regression test ↵Justin Clark-Casey (justincc)2013-09-271-1/+1
| | | | TestSameSimulatorIsolatedRegionsV2()
* refactor: Rename Scene.AddNewClient() to AddNewAgent() to make it obvious in ↵Justin Clark-Casey (justincc)2013-09-2712-22/+23
| | | | the code that this is symmetric with CloseAgent()
* refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make ↵Justin Clark-Casey (justincc)2013-09-2716-53/+43
| | | | | | 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 code formatting for the sake of consistency and readabilitydahlia2013-09-261-18/+36
|
* minor: correct attachment spelling mistake in log message in ↵Justin Clark-Casey (justincc)2013-09-261-1/+1
| | | | HGEntityTransferModule.OnIncomingSceneObject()
* minor: Comment out windlight log message about sending scene data for now.Justin Clark-Casey (justincc)2013-09-261-1/+2
|
* minor: Add scene name to baked textures in cache log messageJustin Clark-Casey (justincc)2013-09-261-1/+1
|
* minor: log MaxOutgoingTransferVersion at EntityTransferModule startupJustin Clark-Casey (justincc)2013-09-261-0/+4
|
* minor: correct spelling of Initialized in LSC connector version messageJustin Clark-Casey (justincc)2013-09-251-1/+1
|
* Move adding UUID.Zero -> Unknown User binding to UMM.Init() so that it's ↵Justin Clark-Casey (justincc)2013-09-251-2/+1
| | | | also called by HGUserManagementModule
* Reinsert client.SceneAgent checks into ↵Justin Clark-Casey (justincc)2013-09-252-11/+29
| | | | | | | | LLUDPServer.HandleCompleteMovementIntoRegion() to fix race condition regression in commit 7dbc93c (Wed Sep 18 21:41:51 2013 +0100) This check is necessary to close a race condition where the CompleteAgentMovement processing could proceed when the UseCircuitCode thread had added the client to the client manager but before the ScenePresence had registered to process the CompleteAgentMovement message. This is most probably why the message appeared to get lost on a proportion of entity transfers. A better long term solution may be to set the IClientAPI.SceneAgent property before the client is added to the manager.
* Reinsert 200ms sleep accidentally removed in commit 7dbc93c (Wed Sep 18 ↵Justin Clark-Casey (justincc)2013-09-251-2/+2
| | | | 21:41:51 2013 +0100)
* Instead of swallowing any socket begin/end receive exceptions, log them for ↵Justin Clark-Casey (justincc)2013-09-251-7/+32
| | | | | | debugging purposes. This may reveal why on some teleports with current code, the UseCircuitCode message gets through but CompleteMovement disappears into the ether.
* Don't use 'Indented' formatting for RpcXml responses.Aleric Inglewood2013-09-221-1/+15
| | | | (cherry picked from commit 93abcde69043b175071e0bb752538d9730433f1d)
* Preserve attachment point & position when attachment is rezzed in worldAleric Inglewood2013-09-2214-10/+150
| | | | | | | | | | Patch taken from http://opensimulator.org/mantis/view.php?id=4905 originally by Greg C. Fixed to apply to r/23314 commit ba9daf849e7c8db48e7c03e7cdedb77776b2052f (cherry picked from commit 4ff9fbca441110cc2b93edc7286e0e9339e61cbe)
* minor: Recomment out log message uncommented in previous cbdfe969Justin Clark-Casey (justincc)2013-09-211-4/+4
|
* When giving items between avatars in different simulators, only add the item ↵Oren Hurvitz2013-09-211-9/+44
| | | | | | to the receiving avatar's inventory once. When a user gives an item, the user's client sends an InventoryOffered IM message to its simulator. This adds the item to the receiver's inventory. If the receiver isn't in the same simulator then XMLRPC is used to forward the IM to the correct simulator. The bug was that the receiving simulator handled the message by calling OnInstantMessage() again, which added a second copy of the item to the inventory. Instead, the receiving simulator should only notify the avatar that the item was offered.
* minor: Add prefix to log message in LureModuleJustin Clark-Casey (justincc)2013-09-211-1/+1
|
* minor: Correct minor spelling mistake Reseting -> Resetting in HG Map module ↵Justin Clark-Casey (justincc)2013-09-201-1/+1
| | | | log message
* Make UUID.Zero resolve to "Unknown User" in user cache.Justin Clark-Casey (justincc)2013-09-201-0/+2
| | | | | This is to avoid massive numbers of 'no user found' logs when user IDs are missing for some reason. UUID.Zero should not be used for any user ID.
* Lock around read/write of ScenePresence.m_originRegionID to make sure that ↵Justin Clark-Casey (justincc)2013-09-201-5/+33
| | | | | | all threads are seeing the latest value and not a cached one. There is a possibilty that some V2 teleport failures are due to the viewer triggered CompleteMovement thread not seeing the change of m_originRegionID by the UpdateAgent thread.
* Change some message log levels in Scene.IncomingUpdateChildAgent() for ↵Justin Clark-Casey (justincc)2013-09-201-3/+3
| | | | debugging purposes
* BulletSim: reduce avatar walking stopped threshold.Robert Adams2013-09-202-0/+4
| | | | | | Add parameter for setting the walking stopped threshold. This fixes the slight jump when an avatar stops walking.
* BulletSim: zero velocity when avatar not moving.Robert Adams2013-09-201-0/+1
| | | | | This fixes a movement jitter that happens when an avatar is standing on a tilted surface.
* Make new regions PG by default instead of Mature.Justin Clark-Casey (justincc)2013-09-201-1/+1
| | | | | This makes scripted object sounds and a few other things play by default instead of having to switch the viewer to adult This reduces the support burden
* UUID Gatherer: find assets used in Light Projection, Particle Systems, and ↵Oren Hurvitz2013-09-191-1/+14
| | | | Collision Sounds.
* For debug purposes, allow simulators to force use of earlier SIMULATION/0.1 ↵Justin Clark-Casey (justincc)2013-09-192-5/+50
| | | | | | | | 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
* minor: Make SP.MakeRootAgent() private - no external code has any business ↵Justin Clark-Casey (justincc)2013-09-191-1/+1
| | | | calling this method
* minor: Make log message at top of ScenePresence.CompleteMovement info level ↵Justin Clark-Casey (justincc)2013-09-191-5/+5
| | | | | | | and comment out later log message in ScenePresence.MakeRootAgent() Need an info message since this is currently important in detecting teleport issue when not at debug log level. CompleteMovement message occurs before MakeRootAgent() one did
* minor: Stop debug logging whenever an npc is moved, other npc log related ↵Justin Clark-Casey (justincc)2013-09-191-16/+15
| | | | formatting cleanups
* Revert "Also check user authorization if looking to upgrade from a child to ↵Justin Clark-Casey (justincc)2013-09-191-13/+0
| | | | | | | a root agent." This reverts commit c7ded0618c303f8c24a91c83c2129292beebe466. This proves not to be necessary - the necessary checks are already being done via QueryAccess() before cross or teleport
* Create regression TestCrossOnSameSimulatorNoRootDestPerm() to check that ↵Justin Clark-Casey (justincc)2013-09-192-1/+88
| | | | avatars are not allowed to cross into a neighbour where they are not authorized, even if a child agent was allowed.
* minor: correct method name in commentJustin Clark-Casey (justincc)2013-09-181-1/+1
|
* refactor: rename *ChildAgentDataUpdate() methods to *UpdateChildAgent()Justin Clark-Casey (justincc)2013-09-183-9/+10
| | | | verb-noun is consistent with other similar methods
* minor: Make log message when Scene.IncomingChildAgentDateUpdate() more ↵Justin Clark-Casey (justincc)2013-09-182-4/+12
| | | | | | | explicit that there is a problem if it still finds the agent to be a child if the sender wanted to wait till it became root Add some comments about the mssage sequence, though much more data is at http://opensimulator.org/wiki/Teleports
* Double the time spent waiting for a UseCircuitCode packet in ↵Justin Clark-Casey (justincc)2013-09-181-1/+1
| | | | | | | | | LLUDPServer.HandleCompleteMovementIntoRegion() This is to deal with one aspect of http://opensimulator.org/mantis/view.php?id=6755 With the V2 teleport arrangements, viewers appear to send the single UseCircuitCode and CompleteAgentMovement packets immediately after each other Possibly, on occasion a poor network might drop the initial UseCircuitCode packet and by the time it retries, the CompleteAgementMovement has timed out and the teleport fails. There's no apparant harm in doubling the wait time (most times only one wait will be performed) so trying this.
* Change logging to provide more information on ↵Justin Clark-Casey (justincc)2013-09-181-10/+39
| | | | | | | LLUDPServer.HandleCompleteMovementIntoRegion() Add more information on which endpoint sent the packet when we have to wait and if we end up dropping the packet Only check if the client is active - other checks are redundant since they can only failed if IsActve = false
* Reinstate insertion of "Unknown UserUMMAU4" now, as naive removing may be ↵Justin Clark-Casey (justincc)2013-09-171-35/+31
| | | | | | generating too many repeating user requests from other sources. Leaves in the dropping of the client GUN8 (now 9) uuid binding message, since this was the much more common case from the viewer-side and this can only affect viewers.
* Comment out warning about no grid user found in ↵Justin Clark-Casey (justincc)2013-09-171-4/+4
| | | | UMM.TryGetUserNamesFromServices() for now
* Fix issue in recent 3f0fa9f7 where the code start adding unknown user cache ↵Justin Clark-Casey (justincc)2013-09-171-2/+3
| | | | entries with no name
* Reinsert comments about possible race conditions when sending bulk inventory ↵Justin Clark-Casey (justincc)2013-09-161-0/+3
| | | | updates on non-flag clothing editing