lib/replace/system/filesys.h

説明を見る。
00001 #ifndef _system_filesys_h
00002 #define _system_filesys_h
00003 /* 
00004    Unix SMB/CIFS implementation.
00005 
00006    filesystem system include wrappers
00007 
00008    Copyright (C) Andrew Tridgell 2004
00009    
00010    This program is free software; you can redistribute it and/or modify
00011    it under the terms of the GNU General Public License as published by
00012    the Free Software Foundation; either version 2 of the License, or
00013    (at your option) any later version.
00014    
00015    This program is distributed in the hope that it will be useful,
00016    but WITHOUT ANY WARRANTY; without even the implied warranty of
00017    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018    GNU General Public License for more details.
00019    
00020    You should have received a copy of the GNU General Public License
00021    along with this program; if not, write to the Free Software
00022    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00023 */
00024 
00025 #include <unistd.h>
00026 #include <sys/stat.h>
00027 
00028 #ifdef HAVE_SYS_PARAM_H
00029 #include <sys/param.h>
00030 #endif
00031 
00032 #ifdef HAVE_SYS_MOUNT_H
00033 #include <sys/mount.h>
00034 #endif
00035 
00036 #ifdef HAVE_SYS_VFS_H
00037 #include <sys/vfs.h>
00038 #endif
00039 
00040 #ifdef HAVE_SYS_ACL_H
00041 #include <sys/acl.h>
00042 #endif
00043 
00044 #ifdef HAVE_ACL_LIBACL_H
00045 #include <acl/libacl.h>
00046 #endif
00047 
00048 #ifdef HAVE_SYS_FS_S5PARAM_H 
00049 #include <sys/fs/s5param.h>
00050 #endif
00051 
00052 #if defined (HAVE_SYS_FILSYS_H) && !defined (_CRAY)
00053 #include <sys/filsys.h> 
00054 #endif
00055 
00056 #ifdef HAVE_SYS_STATFS_H
00057 # include <sys/statfs.h>
00058 #endif
00059 
00060 #ifdef HAVE_DUSTAT_H              
00061 #include <sys/dustat.h>
00062 #endif
00063 
00064 #ifdef HAVE_SYS_STATVFS_H          
00065 #include <sys/statvfs.h>
00066 #endif
00067 
00068 #ifdef HAVE_SYS_FILIO_H
00069 #include <sys/filio.h>
00070 #endif
00071 
00072 #include <sys/file.h>
00073 
00074 #ifdef HAVE_FCNTL_H
00075 #include <fcntl.h>
00076 #else
00077 #ifdef HAVE_SYS_FCNTL_H
00078 #include <sys/fcntl.h>
00079 #endif
00080 #endif
00081 
00082 #ifdef HAVE_SYS_MODE_H
00083 /* apparently AIX needs this for S_ISLNK */
00084 #ifndef S_ISLNK
00085 #include <sys/mode.h>
00086 #endif
00087 #endif
00088 
00089 #ifdef HAVE_SYS_IOCTL_H
00090 #include <sys/ioctl.h>
00091 #endif
00092 
00093 /*
00094  * Veritas File System.  Often in addition to native.
00095  * Quotas different.
00096  */
00097 #if defined(HAVE_SYS_FS_VX_QUOTA_H)
00098 #define VXFS_QUOTA
00099 #endif
00100 
00101 #if HAVE_SYS_ATTRIBUTES_H
00102 #include <sys/attributes.h>
00103 #endif
00104 
00105 /* mutually exclusive (SuSE 8.2) */
00106 #if HAVE_ATTR_XATTR_H
00107 #include <attr/xattr.h>
00108 #elif HAVE_SYS_XATTR_H
00109 #include <sys/xattr.h>
00110 #endif
00111 
00112 
00113 #ifdef HAVE_SYS_RESOURCE_H
00114 #include <sys/resource.h>
00115 #endif
00116 
00117 /* Some POSIX definitions for those without */
00118  
00119 #ifndef S_IFDIR
00120 #define S_IFDIR         0x4000
00121 #endif
00122 #ifndef S_ISDIR
00123 #define S_ISDIR(mode)   ((mode & 0xF000) == S_IFDIR)
00124 #endif
00125 #ifndef S_IRWXU
00126 #define S_IRWXU 00700           /* read, write, execute: owner */
00127 #endif
00128 #ifndef S_IRUSR
00129 #define S_IRUSR 00400           /* read permission: owner */
00130 #endif
00131 #ifndef S_IWUSR
00132 #define S_IWUSR 00200           /* write permission: owner */
00133 #endif
00134 #ifndef S_IXUSR
00135 #define S_IXUSR 00100           /* execute permission: owner */
00136 #endif
00137 #ifndef S_IRWXG
00138 #define S_IRWXG 00070           /* read, write, execute: group */
00139 #endif
00140 #ifndef S_IRGRP
00141 #define S_IRGRP 00040           /* read permission: group */
00142 #endif
00143 #ifndef S_IWGRP
00144 #define S_IWGRP 00020           /* write permission: group */
00145 #endif
00146 #ifndef S_IXGRP
00147 #define S_IXGRP 00010           /* execute permission: group */
00148 #endif
00149 #ifndef S_IRWXO
00150 #define S_IRWXO 00007           /* read, write, execute: other */
00151 #endif
00152 #ifndef S_IROTH
00153 #define S_IROTH 00004           /* read permission: other */
00154 #endif
00155 #ifndef S_IWOTH
00156 #define S_IWOTH 00002           /* write permission: other */
00157 #endif
00158 #ifndef S_IXOTH
00159 #define S_IXOTH 00001           /* execute permission: other */
00160 #endif
00161 
00162 #ifndef O_ACCMODE
00163 #define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
00164 #endif
00165 
00166 #ifndef MAXPATHLEN
00167 #define MAXPATHLEN 256
00168 #endif
00169 
00170 #ifndef SEEK_SET
00171 #define SEEK_SET 0
00172 #endif
00173 
00174 #endif

Sambaに対してSat Aug 29 21:22:59 2009に生成されました。  doxygen 1.4.7