Don't click here unless you want to be banned.

LSL Wiki : AssetPermissions

HomePage :: PageIndex :: RecentChanges :: RecentlyCommented :: UserSettings :: You are crawl809.us.archive.org

Asset Permissions


Asset Permissions refer to the DRM (Digital Rights Management) system for all assets in SL. An asset is any type of inventory item: object, script, texture, sound, animation, body part, clothing, gesture, landmark, or notecard.

There are two sets of permissions for each object, plus a couple of "extras". The first set is the permissions the current user has; the second set is the permissions the next user to own it will have. Each set contains three options:

Note: An item cannot be set to next owner: no copy, no transfer. The exception to this is if a "no-copy" object contains a "no-transfer" item. However, removing this will allow the object to be copied.
Note: "(As of late 2006) I've actually been able to make my objects no (as in NONE - No Copy, No Modify, No Transfer) perms many times with great ease. Instant Message me and I'll send you one of them, its also not hard to replicate this "bug", if you will, either. - Tre Giles":

The other two "extra" permissions are "everyone can copy" and "share with group". Every object can be set to one of the groups the owner is a member of for use with the "share with group" option. An object that is shared with a group can be deeded to the group if the owner has transfer permission.

Note: Be very careful when working on group projects and passing items back and forth! Always check the "next owner" permissions before handing off an item!

Warning: Permission settings set while object is in inventory are not cross-checked with contents until rezzed.

Be Carefull. If a no-copy item is placed in a copy-enabled prim, the prim becomes no-copy. If a prim is placed in inventory and changed back to copy-enabled, this state persists even after transferring to another resident because permission are not cross-checked with contents until the object rezzed. If careless, a receiving resident can be allowed to copy no-copy items. source

Script permissions are handled slightly differently than other objects. The transfer permission works normally, but the other two permissions have unique behavior. In order for a script's source code to be viewable by the next owner, both modify and copy permissions must be set. Without the modify flag set, copy only controls copying of the script item itself. Setting just the modify flag appears to do nothing.

One can assume the reasoning for this behavior with script items is the fact that if the source code can be seen, it can be copied.

The base permission mask contains the permissions that the object had when it was given to the current owner. In theory, no other mask can have more permissions then the base mask. If they do then this is a bug in permissions and should be reported.

Functions
Function Description
llGetInventoryPermMask Get an inventory item's permissions for a particular mask.
llGetObjectPermMask Get the object's permissions for a particular mask.

Constants
Constant Value Description
MASK_BASE 0 Get the object's base permissions.
MASK_OWNER 1 Get the permissions the current owner has.
MASK_GROUP 2 Get the permissions the object's active group has.
MASK_EVERYONE 3 Get the permissions everyone has on the object.
MASK_NEXT 4 Get the permissions the next owner has.

Permissions Value (hex) Description
PERM_ALL 0x7FFFFFFF Move/Modify/Copy/Transfer
PERM_COPY 0x00008000 Copy
PERM_MODIFY 0x00004000 Modify
PERM_MOVE 0x00080000 Move
PERM_TRANSFER 0x00002000 Transfer

Phoenix Linden once wrote (source?):

Permissions Explained

Permissions

The permissions system is designed to foster the best possible content and sanctify the best possible experience in Second Life. We track four basic permissions - move, modify, copy and transfer. The move, modify, and copy permissions can be applied to four categories - owner, group, everyone else, and next owner. By applying different permission sets to different categories of people, you can control how items you create in Second Life are used and distributed.

Example Applications






Permissions Settings




Categories
The permissions track four primary categories for each object - owner, group, everyone else, and next owner. Each category has its own set of permissions. Group and next owner permissions can never be more permissive than the owner permissions field. The everyone permissions field can never be set modifiable, and can never be more permissive than the group field.

Group owned objects conceptually collapse the owner and group categories into the same value.

Fair Use Rights
To further the goal of best possible content and best possible experience, the permissions system comes with a set of fair use rights. Fair use rights apply to the owner of the item.


Right of First Sale
The right of first sale applies when an item is transferred without next owner copy. Since you are allowed to specify 'no derivative works' by specifying 'next owner cannot modify', this right is interpreted as 'next owner can always transfer that single instance of the item to anyone else'.


Permissions | Script Permissions
Comments [Hide comments/form]
Attach a comment to this page: