00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 #ifndef ACE_OS_INCLUDE_SYS_OS_STAT_H
00017 #define ACE_OS_INCLUDE_SYS_OS_STAT_H
00018 
00019 #include  "ace/pre.h"
00020 
00021 #include "ace/config-lite.h"
00022 
00023 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00024 # pragma once
00025 #endif 
00026 
00027 #include "ace/os_include/sys/os_types.h"
00028 
00029 #if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
00030 #  include  <direct.h>
00031 #endif 
00032 
00033 #if !defined (ACE_LACKS_SYS_STAT_H)
00034 #  include  <sys/stat.h>
00035 #endif 
00036 
00037 
00038 #ifdef __cplusplus
00039 extern "C"
00040 {
00041 #endif 
00042 
00043 #if defined (ACE_LACKS_MODE_MASKS)
00044 
00045 
00046 
00047 
00048 #  if !defined (ACE_HAS_USER_MODE_MASKS)
00049 #    define S_IRWXU 00700         
00050 #    define S_IRUSR 00400         
00051 #    define S_IWUSR 00200         
00052 #    define S_IXUSR 00100         
00053 #  endif 
00054 #  define S_IRWXG 00070           
00055 #  define S_IRGRP 00040           
00056 #  define S_IWGRP 00020           
00057 #  define S_IXGRP 00010           
00058 #  define S_IRWXO 00007           
00059 #  define S_IROTH 00004           
00060 #  define S_IWOTH 00002           
00061 #  define S_IXOTH 00001           
00062 
00063 
00064 #if !defined (S_IFLNK) && !defined (ACE_HAS_WINCE)
00065 #define S_IFLNK 0200000
00066 #endif 
00067 
00068 #endif 
00069 
00070 
00071 #if !defined (S_ISLNK)
00072 # if defined (S_IFLNK)
00073 #   define S_ISLNK(mode) (((mode)&S_IFLNK) == S_IFLNK)
00074 # else
00075 #   define S_ISLNK(mode) 0
00076 # endif 
00077 #endif 
00078 
00079 #if defined (ACE_HAS_WINCE)
00080 #  include "ace/Time_Value.h"
00081 
00082 
00083 
00084 
00085 #  define S_IFMT 0xFFFF
00086 #  define S_IFDIR FILE_ATTRIBUTE_DIRECTORY
00087 #  define S_IFREG FILE_ATTRIBUTE_NORMAL
00088 #  define S_IFLNK 0
00089 
00090    struct stat
00091    {
00092 
00093       dev_t st_dev;
00094 
00095 
00096       dev_t st_rdev;
00097 
00098 
00099       unsigned short st_mode;
00100 
00101 
00102       short st_nlink;
00103 
00104 
00105       ACE_Time_Value st_atime;
00106 
00107 
00108       ACE_Time_Value st_mtime;
00109 
00110 
00111       ACE_Time_Value st_ctime;
00112 
00113 
00114       ACE_OFF_T st_size;
00115 
00116       
00117       
00118       
00119    };
00120 #endif 
00121 
00122 #ifdef __cplusplus
00123 }
00124 #endif 
00125 
00126 #include  "ace/post.h"
00127 #endif