Commit Graph

170 Commits (c14ec1a9bdefc01ae817c17973d85daec10ebb3d)

Author SHA1 Message Date
Melanie Thielker e58903be6f Correct casing on isGod and isViewerUIGod 2017-01-07 20:38:30 +00:00
UbitUmarov effa32cfa4 replace godlevel compares by the new faster bool isViewerUIGod 2017-01-07 18:41:46 +00:00
Melanie Thielker 1e9cbf5c97 During login cancel, don't error out here on a null client. 2017-01-07 00:37:13 +00:00
Melanie Thielker ad8915f154 Restructure god level and permissions
Create a class GodController which controls all aspects of god level,
viewer modes and user levels at ScenePresence level.
2017-01-06 00:55:14 +00:00
Melanie Thielker b16abc8166 Massive tab and trailing space cleanup 2017-01-05 19:07:37 +00:00
UbitUmarov 181b1ad82b HG: fix the never ending avatar confirmation when 2 users from same grid made friendship on another grid 2016-12-04 23:02:40 +00:00
UbitUmarov 5861355577 do friends recaching on MakeRoot for normal tps, delay it on crossings 2016-08-04 17:39:10 +01:00
UbitUmarov bb8e271081 fix a typo 2016-08-04 17:29:47 +01:00
UbitUmarov 800044cead take friends out of onMakeRoot if crossing 2016-07-26 22:30:51 +01:00
Melanie Thielker ea8f3c83bf Finally remove the requirement for an InventoryItem/FolderBase object to
be passed into inventory queries.
This makes the API more homogenous and also will more clearly show
coding
errors related to HG inventory where the .Owner field has a meaning
for a query but wasn't always set.
2016-07-04 03:35:48 +01:00
UbitUmarov 1982d72320 Make changes to a friend rights reach him on another sim; find on map does show the region. Issues: precise location on region still not avaiable and object edit permitions on viewers edit are not being updated (but are enforced by region). friends information is updated, and warnings are displayed. Only did minor testing... 2015-10-26 22:42:48 +00:00
Diva Canto d00f73c3a4 Deleted OpenSim.Framework.Communications. Moved its two remaining files to OpenSim.Framework. 2015-09-04 14:39:23 -07:00
Diva Canto 959872315f WARNING: massive refactor to follow libomv's latest changes regarding inventory folders. The newest version of libomv itself is committed here. Basically, everything that was using the AssetType enum has been combed through; many of those uses were changed to the new FolderType enum.
This means that from now on, [new] root folders have code 8 (FolderType.Root), as the viewers expect, as opposed to 9, which was what we had been doing. Normal folders are as they were, -1. Also now sending folder code 100 for Suitcase folders to viewers, with no filter.
All tests pass, but fingers crossed!
2015-08-08 12:12:50 -07:00
Justin Clark-Casey (justincc) ec8d21c434 Label all threadpool calls being made in core OpenSimulator. This is to add problem diagnosis.
"show threadpool calls" now also returns named (labelled), anonymous (unlabelled) and total call stats.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc) fc878a33ed refactor: consistently put all test classes in the OpenSim.Tests.Common package rather than some in OpenSim.Tests.Common.Mock
the separate mock package was not useful and was just another using line to always add
2014-11-25 23:21:37 +00:00
Oren Hurvitz 99ac770abb Close streams immediately when we finish using them 2014-07-21 08:30:03 +01:00
Oren Hurvitz 4cac87d9f4 Fixed: when a user logged-in, sometimes he didn't get notified of the Online status of friends, so they continued to appear Offline.
This happened because these notifications (the UDP packets) can only be sent to Root Agents. But the notifications were done in OnClientLogin(), at which point the client is still a Child Agent. Since a FireAndForget is used, it became a race condition as to whether the packets would be sent before or after the client became a Root Agent.

To fix this, we now only send the notifications once the client becomes a Root Agent for the first time.
2014-04-21 16:56:49 +01:00
teravus 75fdd6054d * Refactor
* Break out common BasicDOSProtector code into separate class.
2013-10-07 23:19:50 -05:00
teravus f76cc6036e * Added a Basic DOS protection container/base object for the most common 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.
2013-10-07 21:35:55 -05:00
Justin Clark-Casey (justincc) e19defde36 Add "show caps stats by user" and "show caps stats by cap" console commands to print various counts of capability invocation by user and by cap
This currently prints caps requests received and handled, so that overload of received compared to handled or deadlock can be detected.
This involves making BaseStreamHandler and BaseOutputStream record the ints, which means inheritors should subclass ProcessRequest() instead of Handle()
However, existing inheriting classes overriding Handle() will still work, albeit without stats recording.
"show caps" becomes "show caps list" to disambiguate between show caps commands
2013-07-08 22:03:07 +01:00
Diva Canto ca26583e6b Delete some verbose debug messages 2013-07-04 15:17:06 -07:00
Diva Canto bf214122cd More debug, same issue 2013-07-04 11:53:22 -07:00
Diva Canto ec9ffbb89a More debug, same issue 2013-07-04 11:36:10 -07:00
Diva Canto 0cc0a2485c More debug related to the previous commit 2013-07-04 11:18:05 -07:00
Diva Canto ae42c93f9a Now trying to find a cause of freeze at login related to friends status notifications. 2013-07-04 10:59:21 -07:00
Diva Canto 98a2fa8e35 HG Friends: this was commented some commits ago, but it shouldn't have been. 2013-07-04 10:23:20 -07:00
Diva Canto 5eb78aad96 Revert "HG Friends: debug an issue where the friends data stored in the DB is incomplete."
This reverts commit 27cdfb7b84.
2013-07-04 09:17:01 -07:00
Diva Canto 27cdfb7b84 HG Friends: debug an issue where the friends data stored in the DB is incomplete. 2013-07-04 08:47:45 -07:00
Diva Canto 1e97972f78 Revert "One more debug mantis #6625"
This reverts commit 8fa5d12fcb.

Conflicts:
	OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
2013-06-30 07:25:13 -07:00
Diva Canto c462e0a51c Fixed previous debug message 2013-06-29 21:30:07 -07:00
Diva Canto 8fa5d12fcb One more debug mantis #6625 2013-06-29 21:26:58 -07:00
Diva Canto 0c97021565 More debug for mantis #6625. It looks like the home friends list is being fetched on HG TPs. 2013-06-29 21:05:45 -07:00
Donnie Roberts 045c26f626 In LocalFriendshipTerminated, send the original client's agentId to the friend being removed instead of the friend's own id. 2013-06-07 18:43:00 +01:00
Justin Clark-Casey (justincc) 06ab168897 To further help with tracking down the apperance of too much "Unknown User" in chatlogs, etc. temporarily change each instance of this in OpenSimulator so we can identify where it's coming from
For instance, the "Unknown User" in Util.ParseUniversalUserIdenitifer becaomes "Unknown UserUPUUI (class initials + method initials)
This is to help with http://opensimulator.org/mantis/view.php?id=6625
2013-05-21 22:26:15 +01:00
Melanie 5f4c4df227 Phase 1 of implementing a transfer permission. Overwrite libOMV's PermissionMask
with our own and add export permissions as well as a new definition for "All" as meaning "all conventional permissions" rather than "all possible permissions"
2013-03-26 03:40:06 +00:00
Justin Clark-Casey (justincc) 22d4c52ffc Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests 2012-11-24 03:15:24 +00:00
Diva Canto 608444c9f7 Another 21 modules' directives moved out of .addin.xml 2012-11-13 08:27:51 -08:00
Justin Clark-Casey (justincc) da2b23f18d Improve efficiency of friends notification by only make one PresenceService call for all friends rather than one for each friend.
However, large groups could still take a very long time since we still need to message each avatar on different simulators.
2012-10-20 02:02:13 +01:00
Justin Clark-Casey (justincc) 16c9c1dff7 On receiving TaskInventoryAccepted with a destination folder in the binary bucket slot for RLV, notify the viewer about inventory folder updates.
The viewer would not see the folder move without this, either on accept or decline.
This commit also updates the TaskInventoryOffered message to better conform with the data LL uses
Changes are, agentID is prim owner rather than prim id, agent name is now simply object name rather than name with owner detail,
message is just folder name in single quotes, message is not timestamped.
However, folder is not renamed "still #RLV/~<name>".  Long term solution is probably not to do these operations server-side.
Notes will be added to http://opensimulator.org/mantis/view.php?id=6311
2012-10-06 02:34:49 +01:00
Justin Clark-Casey (justincc) 224efe7b76 minor: Comment out friends notification log spam for now. 2012-09-12 01:58:01 +01:00
Justin Clark-Casey (justincc) 67ebe80dd9 Resolve some mono compiler warnings. 2012-05-25 04:03:16 +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
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
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
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) 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