using System.Diagnostics.CodeAnalysis;
namespace JetBrains.Profiler.SelfApi.Impl.Unix
{
[SuppressMessage("ReSharper", "InconsistentNaming")]
[SuppressMessage("ReSharper", "IdentifierTypo")]
internal enum UnixFileModes : uint
{
///
/// Set user ID on execution
///
S_ISUID = 0x0800,
///
/// Set group ID on execution
///
S_ISGID = 0x0400,
///
/// Save swapped text after use (sticky).
///
S_ISVTX = 0x0200,
///
/// Read by owner
///
S_IRUSR = 0x0100,
///
/// Write by owner
///
S_IWUSR = 0x0080,
///
/// Execute by owner
///
S_IXUSR = 0x0040,
///
/// Read by group
///
S_IRGRP = 0x0020,
///
/// Write by group
///
S_IWGRP = 0x0010,
///
/// Execute by group
///
S_IXGRP = 0x0008,
///
/// Read by other
///
S_IROTH = 0x0004,
///
/// Write by other
///
S_IWOTH = 0x0002,
///
/// Execute by other
///
S_IXOTH = 0x0001,
///
/// Read, write, execute by group
///
S_IRWXG = S_IRGRP | S_IWGRP | S_IXGRP,
///
/// Read, write, execute by user
///
S_IRWXU = S_IRUSR | S_IWUSR | S_IXUSR,
///
/// Read, write, execute by other
///
S_IRWXO = S_IROTH | S_IWOTH | S_IXOTH,
///
/// 0777
///
ACCESSPERMS = S_IRWXU | S_IRWXG | S_IRWXO,
///
/// 07777
///
ALLPERMS = S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO,
///
/// 0666
///
DEFFILEMODE = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH,
///
/// Bits which determine file type
///
S_IFMT = 0xF000,
///
/// Directory
///
S_IFDIR = 0x4000,
///
/// Character device
///
S_IFCHR = 0x2000,
///
/// Block device
///
S_IFBLK = 0x6000,
///
/// Regular file
///
S_IFREG = 0x8000,
///
/// FIFO
///
S_IFIFO = 0x1000,
///
/// Symbolic link
///
S_IFLNK = 0xA000,
///
/// Socket
///
S_IFSOCK = 0xC000,
///
/// Alias for 0644
///
rw_r__r__ = S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH,
///
/// Alias for 0755
///
rwxr_xr_x = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH
}
}