mirror of
https://github.com/holub/mame
synced 2025-06-06 12:53:46 +03:00
76 lines
2.1 KiB
C
76 lines
2.1 KiB
C
// MyLinux.h
|
|
|
|
#ifndef ZIP7_INC_COMMON_MY_LINUX_H
|
|
#define ZIP7_INC_COMMON_MY_LINUX_H
|
|
|
|
// #include "../../C/7zTypes.h"
|
|
|
|
#define MY_LIN_DT_UNKNOWN 0
|
|
#define MY_LIN_DT_FIFO 1
|
|
#define MY_LIN_DT_CHR 2
|
|
#define MY_LIN_DT_DIR 4
|
|
#define MY_LIN_DT_BLK 6
|
|
#define MY_LIN_DT_REG 8
|
|
#define MY_LIN_DT_LNK 10
|
|
#define MY_LIN_DT_SOCK 12
|
|
#define MY_LIN_DT_WHT 14
|
|
|
|
#define MY_LIN_S_IFMT 00170000
|
|
#define MY_LIN_S_IFSOCK 0140000
|
|
#define MY_LIN_S_IFLNK 0120000
|
|
#define MY_LIN_S_IFREG 0100000
|
|
#define MY_LIN_S_IFBLK 0060000
|
|
#define MY_LIN_S_IFDIR 0040000
|
|
#define MY_LIN_S_IFCHR 0020000
|
|
#define MY_LIN_S_IFIFO 0010000
|
|
|
|
#define MY_LIN_S_ISLNK(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFLNK)
|
|
#define MY_LIN_S_ISREG(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFREG)
|
|
#define MY_LIN_S_ISDIR(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFDIR)
|
|
#define MY_LIN_S_ISCHR(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFCHR)
|
|
#define MY_LIN_S_ISBLK(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFBLK)
|
|
#define MY_LIN_S_ISFIFO(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFIFO)
|
|
#define MY_LIN_S_ISSOCK(m) (((m) & MY_LIN_S_IFMT) == MY_LIN_S_IFSOCK)
|
|
|
|
#define MY_LIN_S_ISUID 0004000
|
|
#define MY_LIN_S_ISGID 0002000
|
|
#define MY_LIN_S_ISVTX 0001000
|
|
|
|
#define MY_LIN_S_IRWXU 00700
|
|
#define MY_LIN_S_IRUSR 00400
|
|
#define MY_LIN_S_IWUSR 00200
|
|
#define MY_LIN_S_IXUSR 00100
|
|
|
|
#define MY_LIN_S_IRWXG 00070
|
|
#define MY_LIN_S_IRGRP 00040
|
|
#define MY_LIN_S_IWGRP 00020
|
|
#define MY_LIN_S_IXGRP 00010
|
|
|
|
#define MY_LIN_S_IRWXO 00007
|
|
#define MY_LIN_S_IROTH 00004
|
|
#define MY_LIN_S_IWOTH 00002
|
|
#define MY_LIN_S_IXOTH 00001
|
|
|
|
/*
|
|
// major/minor encoding for makedev(): MMMMMmmmmmmMMMmm:
|
|
|
|
inline UInt32 MY_dev_major(UInt64 dev)
|
|
{
|
|
return ((UInt32)(dev >> 8) & (UInt32)0xfff) | ((UInt32)(dev >> 32) & ~(UInt32)0xfff);
|
|
}
|
|
|
|
inline UInt32 MY_dev_minor(UInt64 dev)
|
|
{
|
|
return ((UInt32)(dev) & 0xff) | ((UInt32)(dev >> 12) & ~0xff);
|
|
}
|
|
|
|
inline UInt64 MY_dev_makedev(UInt32 __major, UInt32 __minor)
|
|
{
|
|
return (__minor & 0xff) | ((__major & 0xfff) << 8)
|
|
| ((UInt64) (__minor & ~0xff) << 12)
|
|
| ((UInt64) (__major & ~0xfff) << 32);
|
|
}
|
|
*/
|
|
|
|
#endif
|