// // Copyright (c) 2008-2011, Kenneth Bell // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the "Software"), // to deal in the Software without restriction, including without limitation // the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. // using System; namespace DiscUtils { /// /// Standard Unix-style file system permissions. /// [Flags] public enum UnixFilePermissions { /// /// No permissions. /// None = 0, /// /// Any user execute permission. /// OthersExecute = 0x001, /// /// Any user write permission. /// OthersWrite = 0x002, /// /// Any user read permission. /// OthersRead = 0x004, /// /// Any user all permissions. /// OthersAll = OthersExecute | OthersWrite | OthersRead, /// /// Group execute permission. /// GroupExecute = 0x008, /// /// Group write permission. /// GroupWrite = 0x010, /// /// Group read permission. /// GroupRead = 0x020, /// /// Group all permissions. /// GroupAll = GroupExecute | GroupWrite | GroupRead, /// /// Owner execute permission. /// OwnerExecute = 0x040, /// /// Owner write permission. /// OwnerWrite = 0x080, /// /// Owner read permission. /// OwnerRead = 0x100, /// /// Owner all permissions. /// OwnerAll = OwnerExecute | OwnerWrite | OwnerRead, /// /// Sticky bit (meaning ill-defined). /// Sticky = 0x200, /// /// Set GUID on execute. /// SetGroupId = 0x400, /// /// Set UID on execute. /// SetUserId = 0x800 } }