mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
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"
This commit is contained in:
@@ -50,6 +50,7 @@ using OpenSim.Services.Interfaces;
|
||||
using Caps = OpenSim.Framework.Capabilities.Caps;
|
||||
using OSDArray = OpenMetaverse.StructuredData.OSDArray;
|
||||
using OSDMap = OpenMetaverse.StructuredData.OSDMap;
|
||||
using PermissionMask = OpenSim.Framework.PermissionMask;
|
||||
|
||||
namespace OpenSim.Region.ClientStack.Linden
|
||||
{
|
||||
@@ -830,9 +831,9 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||
texitem.Folder = texturesFolder;
|
||||
|
||||
texitem.CurrentPermissions
|
||||
= (uint)(PermissionMask.Move | PermissionMask.Copy | PermissionMask.Modify | PermissionMask.Transfer);
|
||||
= (uint)(PermissionMask.Move | PermissionMask.Copy | PermissionMask.Modify | PermissionMask.Transfer | PermissionMask.Export);
|
||||
|
||||
texitem.BasePermissions = (uint)PermissionMask.All;
|
||||
texitem.BasePermissions = (uint)PermissionMask.All | (uint)PermissionMask.Export;
|
||||
texitem.EveryOnePermissions = 0;
|
||||
texitem.NextPermissions = (uint)PermissionMask.All;
|
||||
texitem.CreationDate = Util.UnixTimeSinceEpoch();
|
||||
@@ -1097,9 +1098,9 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||
else
|
||||
{
|
||||
item.CurrentPermissions
|
||||
= (uint)(PermissionMask.Move | PermissionMask.Copy | PermissionMask.Modify | PermissionMask.Transfer);
|
||||
= (uint)(PermissionMask.Move | PermissionMask.Copy | PermissionMask.Modify | PermissionMask.Transfer | PermissionMask.Export);
|
||||
|
||||
item.BasePermissions = (uint)PermissionMask.All;
|
||||
item.BasePermissions = (uint)PermissionMask.All | (uint)PermissionMask.Export;
|
||||
item.EveryOnePermissions = 0;
|
||||
item.NextPermissions = (uint)PermissionMask.All;
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ using RegionFlags = OpenMetaverse.RegionFlags;
|
||||
using Nini.Config;
|
||||
|
||||
using System.IO;
|
||||
using PermissionMask = OpenSim.Framework.PermissionMask;
|
||||
|
||||
namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
{
|
||||
@@ -1802,7 +1803,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
|
||||
public void SendInventoryItemDetails(UUID ownerID, InventoryItemBase item)
|
||||
{
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)PermissionMask.All;
|
||||
// Fudge this value. It's only needed to make the CRC anyway
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)0x7fffffff;
|
||||
|
||||
FetchInventoryReplyPacket inventoryReply = (FetchInventoryReplyPacket)PacketPool.Instance.GetPacket(PacketType.FetchInventoryReply);
|
||||
// TODO: don't create new blocks if recycling an old packet
|
||||
@@ -2007,7 +2009,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
|
||||
protected void SendBulkUpdateInventoryItem(InventoryItemBase item)
|
||||
{
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)PermissionMask.All;
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)0x7ffffff;
|
||||
|
||||
BulkUpdateInventoryPacket bulkUpdate
|
||||
= (BulkUpdateInventoryPacket)PacketPool.Instance.GetPacket(PacketType.BulkUpdateInventory);
|
||||
@@ -2066,7 +2068,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
/// <see>IClientAPI.SendInventoryItemCreateUpdate(InventoryItemBase)</see>
|
||||
public void SendInventoryItemCreateUpdate(InventoryItemBase Item, UUID transactionID, uint callbackId)
|
||||
{
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)PermissionMask.All;
|
||||
const uint FULL_MASK_PERMISSIONS = (uint)0x7fffffff;
|
||||
|
||||
UpdateCreateInventoryItemPacket InventoryReply
|
||||
= (UpdateCreateInventoryItemPacket)PacketPool.Instance.GetPacket(
|
||||
|
||||
Reference in New Issue
Block a user