Commit Graph

97 Commits (f69731b955bcb44aa6c2b280150466388293daa5)

Author SHA1 Message Date
Diva Canto ba2318bd61 One more module converted: PermissionsModule. 2012-11-11 15:59:09 -08:00
Justin Clark-Casey (justincc) 9ec9dafae6 Lower warn logging on not having friends/group module on permissions to debug.
It's a valid configuration not to have these modules, but I think it's still worth logging the fact that certain permissions won't work (always return true)
2012-06-20 01:33:25 +01:00
Justin Clark-Casey (justincc) c935f03467 Put all debug console commands into a single Debug section rather than scattering them over other categories 2012-06-15 03:32:43 +01:00
Justin Clark-Casey (justincc) 6b6a00a3d5 minor: Remove redundant EstateOwner != UUID.Zero check in IsAdministrator because checking EstateOwner == user
Due to an earlier check we already know that user != UUID.Zero so if EstateOwner == UUID.Zero, EstateOwner == user can never be true
2012-05-17 01:30:50 +01:00
Oren Hurvitz 9622e8ac72 If a Grid God teleports then include the Godlike teleport flag. This can affect the starting position in the destination region. 2012-04-27 20:22:35 +01:00
Justin Clark-Casey (justincc) 24a0cc5261 refactor: Rename EstateSettings.IsEstateManager() to EstateSettings.IsEstateManagerOrOwner() to reflect what it actually does.
This makes it consistent with other parts of OpenSimulator that are treating ESTATE_MANAGER and ESTATE_OWNER as different entities.
As per opensim-dev mailing list.
2012-04-17 01:25:41 +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
Melanie b5d0bc2488 Rework Diva's patch to simplify it 2012-03-22 20:25:20 +00:00
Melanie 45b588cf00 Revert "Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch."
This reverts commit 6146e7ef25.
2012-03-22 20:10:38 +00:00
Diva Canto 6146e7ef25 Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch. 2012-03-22 12:57:12 -07:00
Justin Clark-Casey (justincc) 749c3fef8a Change "help" to display categories/module list then "help <category/module>" to display commands in a category.
This is to deal with the hundred lines of command splurge when one previously typed "help"
Modelled somewhat on the mysql console
One can still type help <command> to get per command help at any point.
Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet).
Does not affect command parsing or any other aspects of the console apart from the help system.
Backwards compatible with existing modules.
2012-03-08 01:51:37 +00:00
Justin Clark-Casey (justincc) 5397a6d4c6 Fix problem with dragging child part inventory item to user inventory.
This fixes the problem by fixing the permissions module to look at root part permissions rather than having to do this for every caller.
Resolves http://opensimulator.org/mantis/view.php?id=5569
2012-02-21 22:54:30 +00:00
Mic Bowman 04a195266b short circuit the expensive parts of the permission checking code
if the current user is the owner of an object. none of the later
checks can reverse the outcome.
2012-02-13 13:21:42 -08:00
Justin Clark-Casey (justincc) f9137c923b Fix bug where objects could not be set to a new group if the group had been created in that client session, or if no other action has been performed on the object.
There were two problems here:
1) On object group update, we looked for the group is the IClientAPI group cache rather than in the groups service.  This fails to groups created newly in that session
2) On object group update, we weren't setting the HasGroupChanged flag.  This meant that the change was not persisted unless some other action set this flag.
This commit fixes these issues and hopefully addresses http://opensimulator.org/mantis/view.php?id=5588
This commit also moves HandleObjectGroupUpdate() to the GroupsModule from the Scene.PacketHandlers.cs file
2011-12-17 02:23:24 +00:00
Justin Clark-Casey (justincc) 658d02b5e9 Improve some of the debug help messages 2011-11-29 16:56:31 +00:00
Justin Clark-Casey (justincc) 50803dfe2c For clients that are entering a simulator from initial login, stop executing FriendsModule.FetchFriendslist() asychronously.
Executing this asynchronously allows a race condition where subsequent friends fetches hit a cache that FetchFriendsList() had not yet populated.
Changing this to synchronous may improve issues where a user does not see friends as online even though they are.
I don't believe synchronous is a problem here, but if it is, then a more complicated signalling mechanism is required.  Locking the cache isn't sufficient.
2011-11-15 15:57:53 +00:00
Oren Hurvitz 7f318277f1 When creating an OAR, optionally exclude objects according to their permissions 2011-09-12 20:09:24 +01:00
Justin Clark-Casey (justincc) 095b3e5756 Remove pointless cluttering SOP.ParentGroup != null checks.
The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database.
At all other times it's not possible for a SOP not to have a SOG parent.
2011-09-01 01:22:28 +01:00
Makopoppo 4eaca4884e Fixed serverside_object_permission default value confliction 2011-07-23 02:26:13 +01:00
Justin Clark-Casey (justincc) fba961c63f Make default serverside_object_permissions = true since this better matches user expectations.
It also matches the default setting in the OpenSim.ini.example file
2011-07-01 23:06:46 +01:00
Diva Canto 58c53c41de Fixed permissions bug related to friends in PermissionsModule. Added FriendsData[] GetFriends(string principalID) to IFriendsData and FriendInfo[] GetFriends(string PrincipalID) to IFriendsService. Refactored some more in the FriendsModule. Made client get notification of local friends permissions upon HGLogin. HG Friends object permissions work. 2011-05-21 16:48:00 -07:00
Justin Clark-Casey (justincc) 9885f68f44 When setting media on a prim values, use generic object permissions instead of media permissions.
Media permissions are just meant to be checked when we want to know if a user should be shown the navigation bar or allowed to navigate.  It should not be checked when we're setting the media up.
This bug was preventing a user from ever setting any more values if they had unchecked the owner settings.
2011-03-14 22:47:14 +00:00
Melanie 9bd7f3b03a Revamp the viewer -> banlist packet processing so fix a number of bugs.
Remove the too coarse CanEditParcel method in favor of a CanEditParcelProperties
method that takes a GroupPowers argument to specify what action is to be
taken. Also, make the method to set parcel data much more granular. Permissions
in a deeded setting should now work.
2010-12-13 20:35:56 +00:00
Melanie 14adf90805 Fix a typo 2010-09-21 04:02:34 +01:00
Melanie 10a37f5be4 Refactor script create permission into the perms module 2010-09-21 04:02:28 +01:00
Jeff Ames f1f0bc23f4 Formatting cleanup. 2010-09-12 13:43:49 -04:00
Justin Clark-Casey (justincc) 1270727c96 Merge branch 'moap' 2010-08-06 18:29:30 +01:00
Melanie Thielker 696b6c727f Allow gods and estate managers/owners to be unaffected by parcel bans 2010-07-29 16:20:40 +01:00
Justin Clark-Casey (justincc) 5aa56b1274 Fix problem where changes to media textures for prims duplicated by shify copy would change both prims until server restart
I also found out that you can crash the current viewer by giving it more media entrys than it's expecting
2010-07-28 18:55:29 +01:00
Justin Clark-Casey (justincc) 4d23749241 provide config option for media on a prim 2010-07-26 23:34:23 +01:00
Justin Clark-Casey (justincc) 049ccba8d3 fix previous media interact serverside checking. perform very basic serverside url whitelist checks
at the moment, only checking for the exact name prefix is implemented
for some reason, whitelists are not persisting
this commit also fixes a very recent problem where setting any media texture parameters after the initial configuration would not work
2010-07-26 23:34:21 +01:00
Justin Clark-Casey (justincc) ee6cd884c9 implement serverside checks for media texture navigation in order to stop naughty clients 2010-07-26 23:34:21 +01:00
Justin Clark-Casey (justincc) a9101feb10 factor out soon to be common media permissions check code 2010-07-26 23:34:20 +01:00
Justin Clark-Casey (justincc) 51b208e96c implement prim media control permissions serverside in order to stop bad clients 2010-07-26 23:34:20 +01:00
Melanie 0ea908291d Fix some symbol errors 2010-04-30 12:08:08 +01:00
Melanie 22b3217113 Fix link security issue 2010-04-30 11:46:50 +01:00
Justin Clark-Casey (justincc) da83ee28be If a transfer request is received for a task inventory item asset, then route the permissions request through the existing CanEditScript() and CanEditNotecard() methods.
This implements the 'share with group' flag for notecards and scripts in prim inventory since the PermissionsModule checks group membership and permissions.
Other than that, the code in PermissionsModule duplicates the checks in LLClientView so there should be no change other than allowing group members to edit embedded notecards and scripts.
For all other asset types, the permission checking code in LLClientView continues to be used, pending refactoring of suitable permissions code
This means that 'share with group' will not yet work for prim inventory items other than notecards and scripts
2010-04-19 21:02:36 +01:00
Justin Clark-Casey (justincc) 48d2e8309a check group membership and powers with the groups module rather than just the client's active group id
this resolves the earlier issue where notecards/scripts shared with group could only be edited if the user had that group active
2010-04-05 20:44:19 +01:00
Melanie f020bd3206 Fix a nullref in permissions when returning objects via right-click 2010-03-20 15:49:39 +00:00
Melanie e0289bb432 Flesh out the new permission method 2010-03-18 19:58:21 +00:00
Melanie 734b0416de Unify a previous refactor of object return with the older solution. We
really don't need two methods doing the same thing, but differently.
2010-03-18 18:57:29 +00:00
Melanie 04a6b1caf8 Reintroduce a check that was dropped from permissions 2010-03-10 05:31:34 +00:00
Melanie 88771aeed3 Cache UserLevel in ScenePresence on SP creation. Change IsAdministrator
to use that stored value.
2010-03-09 23:11:28 +00:00
John Hurliman 01218093a6 * Typo fixes
* Performance improvement in the expensive GenerateClientFlags()
2010-03-09 12:06:53 -08:00
Melanie baaf660511 Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken.
Please check!
2010-02-08 15:53:38 +00:00
Melanie a87a247f05 Revert "Updates all IRegionModules to the new style region modules."
This reverts commit ec3c31e61e.
2010-01-29 07:21:06 +00:00
Melanie ee12b00cfa Fixes inconsistencies in the permissions module. Adds a region_manager_is_god
configurable. Previously, estate managers could enter god mode, but would
not have any powers. Now estate managers can enter god mode only if this
option is true, and then will have real god powers.
2010-01-28 14:34:31 +00:00
Revolution ec3c31e61e Updates all IRegionModules to the new style region modules.
Signed-off-by: Melanie <melanie@t-data.com>
2010-01-23 15:18:52 +00:00
Melanie 5908b8ed7c Change a member of the friendslist module to better reflect the client side
data storage paradigm of the friends list and avoid repeated, unneccessary
fetches of the entire friends list.
2010-01-19 11:33:42 +00:00
Melanie 10f8c2ea9b Merge branch 'master' into presence-refactor
This merge was very conflicted. I think I got them all, but I can't be sure.
I had to merge to master or risk divergence to the point of unmergeability.
2010-01-16 00:05:08 +00:00