Commit Graph

78 Commits (6c86823803c4f15b2e41e4e73af639ec21d9bb79)

Author SHA1 Message Date
Melanie Thielker 6c86823803 Mantis #2729
Add a check for script reset permissions to the permissions module
2008-12-01 03:40:41 +00:00
Jeff Ames 25d6b18bcd Update svn properties, minor formatting cleanup. 2008-11-22 02:33:18 +00:00
Melanie Thielker 691c4bc756 Mantis #2442
Attempt to reinstate the Object Entry flag in parcel settings
2008-11-22 00:23:48 +00:00
Melanie Thielker ba723a4cf6 Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make all
the internals of the permissions module adapter sane
2008-11-21 22:14:57 +00:00
Justin Clarke Casey 915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life
* A proper inventory interface to follow
* Parallel changes for other inventory partial classes to follow at a later date
2008-11-21 21:16:42 +00:00
Justin Clarke Casey 6052ed4707 * Add allowed_script_editors to OpenSim.ini in the same fashion as allowed_script_creators.
* This allows one to override normal OpenSim permissions and prevent non-gods from editing any scripts.  This allows edit ability 
to be rescinded after it has been given, and prevents the security hole where a single script with liberal perms would allow code changes.
* The default setting remains the existing one of never overruling normal edit permissions.
* These two settings may be enough to stop non-gods entering artbirary script code in a closed grid/standalone configuration.
2008-11-17 19:55:32 +00:00
Justin Clarke Casey de526d0274 * refactor: move user set permissions parsing code into a separate method ready for reuse 2008-11-17 17:59:10 +00:00
Justin Clarke Casey e3770cfee6 * Allow new script creation to be locked down to only gods if specified in OpenSim.ini
* This doesn't allow complete script lockdown of a sim, many avenues (copying, editing) are still uncloseable at the moment
* Default remains to allow all users to create scripts (subject to existing permissions if enabled)
2008-11-14 18:43:40 +00:00
Melanie Thielker edee11ff87 Reapplying a revised version of Christopher Yeoh's (IBM) patch for allow
inventory drop. Also adds a new flags, "propagate_permissions" to
OpenSim.ini to control that feature.
2008-11-14 17:24:56 +00:00
Justin Clarke Casey 165fcd1aac * Switch default permissions back to false (so they are not on) as they were two revisions ago, since it sounds like this was our agreed position from some time back
* Make the default also false (to match what is in OpenSim.ini.example)
2008-11-14 15:48:34 +00:00
Justin Clarke Casey 8372880c75 * Hook up create new object event in the permissions module
* Switch default for serverside_object_permissions from false to true - it seems more natural that we enforce permissions by default rather than not!
* Add some explanation in OpenSim.ini.example for serverside_object_permissions
2008-11-14 15:36:46 +00:00
Dr Scofield 5c21ec6d10 reverting #7295, as it still fails a test case (as pointed out very
kindly by sean) --- lesson learned: just running a "make test" is not
sufficient, you need to precede it by a "make clean".
2008-11-14 13:03:18 +00:00
Dr Scofield 5e20e32b69 From: Christopher Yeoh <cyeoh@au1.ibm.com>
This patch makes llAllowInventoryDrop work with the permissions module
enabled. Changes include:

- Enabled PropagatePermissions when permissions module serverside perms
  is on

- change ownership of item when item is dropped into an object.
  Ownership changes to the owner of the object the item is dropped into

- propagation of permissions if the permissions module enabled (eg
  next-owner mask applied)

- CHANGED_ALLOWED_DROP is now passed to the change script event if an
  item was allowed to be dropped into the object only because
  llAllowInventoryDrop is enabled (instead of CHANGED_INVENTORY being
  passed).

- Sets object flags correctly when llAllowInventoryDrop is called so
  clients are notified immediately of the change in state. Am not
  sure that calling aggregateScriptEvents is the right way to do it,
  but it works and seems to be the only way without making further
  changes to update LocalFlags
2008-11-14 10:55:14 +00:00
Justin Clarke Casey 1fd32a5ab2 * Rename all the previous methods to be User rather than Avatar (for extra bonus points)
public bool ExternalChecksCanCreateUserInventory(int invType, UUID userID)
public bool ExternalChecksCanCopyUserInventory(UUID itemID, UUID userID)
public bool ExternalChecksCanCopyUserInventory(UUID itemID, UUID userID)
public bool ExternalChecksCanDeleteUserInventory(UUID itemID, UUID userID)
2008-11-13 20:52:06 +00:00
Justin Clarke Casey bd61b946df * Add
public bool ExternalChecksCanCreateAvatarInventory(int invType, UUID userID)
public bool ExternalChecksCanCopyAvatarInventory(UUID itemID, UUID userID)
public bool ExternalChecksCanCopyAvatarInventory(UUID itemID, UUID userID)
public bool ExternalChecksCanDeleteAvatarInventory(UUID itemID, UUID userID)
to ExternalChecks to handle avatar inventory checks (as opposed to object inv checks).
* opensim-dev e-mail to follow concerning this shortly
2008-11-13 20:29:41 +00:00
Justin Clarke Casey bf68255b86 * refactor: rename object inventory permission checks to distinguish between task inventory and agent inventory 2008-11-13 19:16:15 +00:00
Justin Clarke Casey ef601d805a * First part of a series of patches
* Intension is to provide a way to lock down script creation to administrators/gods only
* Defaults will remain as they are at the moment
2008-11-13 18:52:16 +00:00
Justin Clarke Casey 219015d699 * Attempt to make OpenSim.ini.example a bit more readable by
*   Some rearrangement within sections
*   Indenting section contents
* Also, correct indentation levels in PermissionsModule
2008-11-13 17:22:18 +00:00
Justin Clarke Casey 9366a234cf * refactor: Convert most non SOP methods to use SOG.IsAttachment rather than SOP.IsAttachment 2008-11-01 22:04:35 +00:00
Justin Clarke Casey 9324c3f110 * refactor: Move error logging from GetUserDetails up to callers, since there are some circumstances in which not finding a user is not an error 2008-10-15 16:35:27 +00:00
Justin Clarke Casey 48d86fb23f * Apply http://opensimulator.org/mantis/view.php?id=1207
* Implmements llModifyLand() and a check for the "Allow others to terraform flag"
* Thanks tglion!
2008-10-07 14:49:12 +00:00
Charles Krinke e575ef7ad2 Revert r6697 patch as the build fails. 2008-10-06 00:58:43 +00:00
Charles Krinke 4f6cdc08d6 Mantis#1207. Thank you, TGlion for a patch that addresses:
Implementation of llModifyLand() and There is a bug on 
permission-check of land-terraforming: x an y-coordinates 
are interchanged on function-call ExternalChecksCanTerraformLand.
Correct: x is west, and y is north. 2) Missing check of 
"Other allow to terraform-flag" (Parcel.ParcelFlags.AllowTerraform)
2008-10-06 00:46:27 +00:00
Jeff Ames 3f79e6b3e7 Update svn properties, formatting cleanup. 2008-09-23 23:14:00 +00:00
Melanie Thielker 525f66b6f1 Small fix to eliminate a beauty spot 2008-09-23 03:49:07 +00:00
Melanie Thielker 70d264ee6c Update the permissions system to handle scripts and notecards the way
it was meant to. No functional changes, just better code
2008-09-23 03:36:16 +00:00
Melanie Thielker 48672c7fd6 Move script and notecard open perms checks from ClientView to the
perms module
2008-09-22 22:33:00 +00:00
Melanie Thielker a882fddb07 Remove comment in perms module after consulting with awebb 2008-09-22 14:01:41 +00:00
Melanie Thielker 908a1932a8 Fix a small logic error in my perms module changes 2008-09-22 13:03:54 +00:00
Melanie Thielker d7a98925ce Create CanEditObjectInventory to preserve the ability
to have different permissions on inventory and object
edits. This may be needed by the viewer on public grids
2008-09-22 12:52:56 +00:00
Dr Scofield 3f9cc28103 fix: warnings from libomv 2008-09-08 10:28:59 +00:00
Teravus Ovares 7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Dr Scofield 3d101de375 clean up and fixing a typo. 2008-09-03 11:58:36 +00:00
Melanie Thielker ddd68a0537 Mantis #2072
Griefer protection! When running without serverside permissions, let only
the owner edit attachments. Having everyone able to do it just isn't right.
2008-09-01 12:56:53 +00:00
Melanie Thielker 40fa68d3e5 Mantis #1999
Allow the sim owner to add estate managers to any estate on the sim
2008-08-19 20:55:34 +00:00
Jeff Ames 6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Melanie Thielker 1db8f6fbad Patch for Adam: Add two new permissions options to Opensim.ini.example
and the permissions module
2008-08-17 05:05:06 +00:00
Jeff Ames 6fa26f5b41 Update svn properties, minor formatting cleanup. 2008-08-16 17:26:25 +00:00
Melanie Thielker 682ffef101 Reshuffle to eliminate prim owner lookups unless gridgods are enabled 2008-08-16 05:41:40 +00:00
Melanie Thielker 9807a86398 Guard against a null ref in the permissions module when a profile
fetch fails.
2008-08-16 02:57:47 +00:00
Melanie Thielker 437b4a8aaa Perils of copypaste. Missing references. 2008-08-15 23:35:01 +00:00
Melanie Thielker 32f90a028f Fix repeated user profile info lookups. Redirect those lookups to cache. 2008-08-15 23:29:34 +00:00
Melanie Thielker dfc553d0a4 Fix up master avatar handling for estate owners. Introduces a new
hierarchical rights structure. MasterAvatar: Owner of the region server
(may be null), net gods (users with GodLevel 200), Estate owner
(from database). Look at Opensim.ini.example to enable net gods.
Estate owner will default to master avatar.
2008-08-15 13:13:39 +00:00
Jeff Ames dde21314e7 Update svn properties, formatting cleanup, fix a couple compiler warnings. 2008-08-15 10:24:04 +00:00
Melanie Thielker c2f1771c63 Make the estate owner work. Changes permissions checks to allow the
estate owner user the ability to add and remove estate managers,
and have EM rights outside of that.
2008-08-14 18:08:22 +00:00
Melanie Thielker 71cc458610 Make the estate owner UUID from the database have the same rights
as the region master avatar, unless it's LLUUID.Zero (the default).
2008-08-13 01:17:44 +00:00
mingchen f2742fb604 *Added CommandIntentions that is used to describe a console commands hazard. HAZARDOUS if it modifies the simulator, NON_HAZARDOUS if it does a command that doesn't modify the simulator but does a background command such as a forced backup, and STATISTICAL if it returns debug or more information.
*This is useful for implementing a protection system from unwanted script execution or for application modules needing to know what a command does.
2008-07-25 02:30:07 +00:00
Sean Dague 090159defc refactored LandData to use properties, and cleaned up the naming on
the properties a bit to be more consistant with other objects (having things
like .Name .Description, etc).
2008-07-23 15:50:32 +00:00
Melanie Thielker 263633e274 Patch #9151
Makes the estate dialog fully functional. Implements all client facing functionality. Moves estate data from estate_settings.xml, which is used to provide defaults, to the region data store. Creates one estate for each region, and places the region in it. Converts all region bans to estate bans.
2008-07-18 02:40:47 +00:00
Melanie Thielker f629fdb88d Patches #9143 and #9144 (Mantis #1723)
Changes the permissions module to make scripts permissive only when intended
Adds security checks to asset transfers to prevent hacked clients fron
requesting script sources.
Adds security checks to llClientView to verify all aspects of ownership
and permissions for inventory based script retrieval.
2008-07-12 06:24:43 +00:00