Blame lib/driver/filemode.h

Packit dd8086
/*
Packit dd8086
  filemode.h -- file modes common definitions
Packit dd8086
Packit dd8086
  Copyright (C) 2005, 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org>
Packit dd8086
  Copyright (C) 1985, 1990, 1993, 1998-2000 Free Software Foundation, Inc.
Packit dd8086
Packit dd8086
  This program is free software: you can redistribute it and/or modify
Packit dd8086
  it under the terms of the GNU General Public License as published by
Packit dd8086
  the Free Software Foundation, either version 3 of the License, or
Packit dd8086
  (at your option) any later version.
Packit dd8086
Packit dd8086
  This program is distributed in the hope that it will be useful,
Packit dd8086
  but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit dd8086
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit dd8086
  GNU General Public License for more details.
Packit dd8086
Packit dd8086
  You should have received a copy of the GNU General Public License
Packit dd8086
  along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit dd8086
*/
Packit dd8086
Packit dd8086
#ifndef CDIO_DRIVER_FILEMODE_H_
Packit dd8086
#define CDIO_DRIVER_FILEMODE_H_
Packit dd8086
Packit dd8086
#ifdef HAVE_SYS_STAT_H
Packit dd8086
#include <sys/stat.h>
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#ifndef S_IRUSR
Packit dd8086
# ifdef S_IREAD
Packit dd8086
#  define S_IRUSR S_IREAD
Packit dd8086
# else
Packit dd8086
#  define S_IRUSR 00400
Packit dd8086
# endif
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#ifndef S_IWUSR
Packit dd8086
# ifdef S_IWRITE
Packit dd8086
#  define S_IWUSR S_IWRITE
Packit dd8086
# else
Packit dd8086
#  define S_IWUSR 00200
Packit dd8086
# endif
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#ifndef S_IXUSR
Packit dd8086
# ifdef S_IEXEC
Packit dd8086
#  define S_IXUSR S_IEXEC
Packit dd8086
# else
Packit dd8086
#  define S_IXUSR 00100
Packit dd8086
# endif
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#ifndef S_IRGRP
Packit dd8086
# define S_IRGRP (S_IRUSR >> 3)
Packit dd8086
#endif
Packit dd8086
#ifndef S_IWGRP
Packit dd8086
# define S_IWGRP (S_IWUSR >> 3)
Packit dd8086
#endif
Packit dd8086
#ifndef S_IXGRP
Packit dd8086
# define S_IXGRP (S_IXUSR >> 3)
Packit dd8086
#endif
Packit dd8086
#ifndef S_IROTH
Packit dd8086
# define S_IROTH (S_IRUSR >> 6)
Packit dd8086
#endif
Packit dd8086
#ifndef S_IWOTH
Packit dd8086
# define S_IWOTH (S_IWUSR >> 6)
Packit dd8086
#endif
Packit dd8086
#ifndef S_IXOTH
Packit dd8086
# define S_IXOTH (S_IXUSR >> 6)
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#ifdef STAT_MACROS_BROKEN
Packit dd8086
# undef S_ISBLK
Packit dd8086
# undef S_ISCHR
Packit dd8086
# undef S_ISDIR
Packit dd8086
# undef S_ISFIFO
Packit dd8086
# undef S_ISLNK
Packit dd8086
# undef S_ISMPB
Packit dd8086
# undef S_ISMPC
Packit dd8086
# undef S_ISNWK
Packit dd8086
# undef S_ISREG
Packit dd8086
# undef S_ISSOCK
Packit dd8086
#endif /* STAT_MACROS_BROKEN.  */
Packit dd8086
Packit dd8086
#if !defined S_IFBLK && defined _WIN32
Packit dd8086
# define S_IFBLK 0x3000
Packit dd8086
#endif
Packit dd8086
#if !defined S_IFIFO && defined _WIN32
Packit dd8086
# define S_IFIFO 0x1000
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#if !defined S_ISBLK && defined S_IFBLK
Packit dd8086
# define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISCHR && defined S_IFCHR
Packit dd8086
# define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISDIR && defined S_IFDIR
Packit dd8086
# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISREG && defined S_IFREG
Packit dd8086
# define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISFIFO && defined S_IFIFO
Packit dd8086
# define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
Packit dd8086
#endif
Packit dd8086
#if !defined HAVE_S_ISLNK
Packit dd8086
# if !defined S_ISLNK && defined S_IFLNK
Packit dd8086
#  define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
Packit dd8086
# else
Packit dd8086
#  define S_ISLNK(m) ((void)m, 0)
Packit dd8086
# endif
Packit dd8086
#endif
Packit dd8086
#if !defined HAVE_S_ISSOCK
Packit dd8086
# if !defined S_ISSOCK && defined S_IFSOCK
Packit dd8086
#  define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
Packit dd8086
# else
Packit dd8086
#  define S_ISSOCK(m) ((void)m, 0)
Packit dd8086
# endif
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISMPB && defined S_IFMPB /* V7 */
Packit dd8086
# define S_ISMPB(m) (((m) & S_IFMT) == S_IFMPB)
Packit dd8086
# define S_ISMPC(m) (((m) & S_IFMT) == S_IFMPC)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISNWK && defined S_IFNWK /* HP/UX */
Packit dd8086
# define S_ISNWK(m) (((m) & S_IFMT) == S_IFNWK)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISDOOR && defined S_IFDOOR /* Solaris 2.5 and up */
Packit dd8086
# define S_ISDOOR(m) (((m) & S_IFMT) == S_IFDOOR)
Packit dd8086
#endif
Packit dd8086
#if !defined S_ISCTG && defined S_IFCTG /* MassComp */
Packit dd8086
# define S_ISCTG(m) (((m) & S_IFMT) == S_IFCTG)
Packit dd8086
#endif
Packit dd8086
Packit dd8086
#endif /* CDIO_DRIVER_FILEMODE_H_ */