00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00047 #ifndef SYNSOFT_UNIXEM_INCL_UNIXEM_H_UNISTD
00048 #define SYNSOFT_UNIXEM_INCL_UNIXEM_H_UNISTD
00049
00050 #ifndef UNIXEM_DOCUMENTATION_SKIP_SECTION
00051 # define SYNSOFT_UNIXEM_VER_UNIXEM_H_UNISTD_MAJOR 3
00052 # define SYNSOFT_UNIXEM_VER_UNIXEM_H_UNISTD_MINOR 0
00053 # define SYNSOFT_UNIXEM_VER_UNIXEM_H_UNISTD_REVISION 1
00054 # define SYNSOFT_UNIXEM_VER_UNIXEM_H_UNISTD_EDIT 43
00055 #endif
00056
00057
00058
00059
00060
00061 #include <unixem/unixem.h>
00062 #include <stddef.h>
00063 #include <sys/types.h>
00064
00065
00066
00077
00078
00079 #ifndef _WIN32
00080 # error This file is only currently defined for compilation on Win32 systems
00081 #endif
00082
00083
00084
00085
00086
00087 #if 0
00088 # ifndef PATH_MAX
00089 # define PATH_MAX (260)
00090 # endif
00091 #endif
00092
00093 enum
00094 {
00095 UNIXEM_PC_LINK_MAX
00096 , UNIXEM_PC_MAX_CANON
00097 , UNIXEM_PC_MAX_INPUT
00098 , UNIXEM_PC_NAME_MAX
00099 , UNIXEM_PC_PATH_MAX
00100 , UNIXEM_PC_PIPE_BUF
00101 , UNIXEM_PC_CHOWN_RESTRICTED
00102 , UNIXEM_PC_NO_TRUNC
00103 , UNIXEM_PC_VDISABLE
00104 , UNIXEM_PC_AIX_DISK_PARTITION
00105 , UNIXEM_PC_AIX_DISK_SIZE
00106 , UNIXEM_PC_FILESIZEBITS
00107 , UNIXEM_PC_SYNC_IO
00109 #ifndef UNIXEM_DOCUMENTATION_SKIP_SECTION
00110 # define UNIXEM_PC_LINK_MAX UNIXEM_PC_LINK_MAX
00111 # define UNIXEM_PC_MAX_CANON UNIXEM_PC_MAX_CANON
00112 # define UNIXEM_PC_MAX_INPUT UNIXEM_PC_MAX_INPUT
00113 # define UNIXEM_PC_NAME_MAX UNIXEM_PC_NAME_MAX
00114 # define UNIXEM_PC_PATH_MAX UNIXEM_PC_PATH_MAX
00115 # define UNIXEM_PC_PIPE_BUF UNIXEM_PC_PIPE_BUF
00116 # define UNIXEM_PC_CHOWN_RESTRICTED UNIXEM_PC_CHOWN_RESTRICTED
00117 # define UNIXEM_PC_NO_TRUNC UNIXEM_PC_NO_TRUNC
00118 # define UNIXEM_PC_VDISABLE UNIXEM_PC_VDISABLE
00119 # define UNIXEM_PC_AIX_DISK_PARTITION UNIXEM_PC_AIX_DISK_PARTITION
00120 # define UNIXEM_PC_AIX_DISK_SIZE UNIXEM_PC_AIX_DISK_SIZE
00121 # define UNIXEM_PC_FILESIZEBITS UNIXEM_PC_FILESIZEBITS
00122 # define UNIXEM_PC_SYNC_IO UNIXEM_PC_SYNC_IO
00123 #endif
00124 };
00125
00126
00127
00128
00129
00131 typedef int unixem_pid_t;
00132
00133
00134
00135
00136
00137 #ifdef __cplusplus
00138 extern "C" {
00139 #endif
00140
00153 int unixem_link(
00154 char const* originalFile
00155 , char const* linkName
00156 );
00157
00164 int unixem_unlink(char const* path);
00165
00166
00175 int unixem_chdir(char const* dirName);
00176
00177
00187 char* unixem_getcwd(
00188 char* buffer
00189 , size_t max_len
00190 );
00191
00192
00202 int unixem_mkdir(
00203 char const* dirName
00204 , unsigned mode
00205 );
00206
00207
00215 int unixem_rmdir(char const* dirName);
00216
00217
00223 int unixem_close(int handle);
00224
00225
00226
00227
00228
00229
00230
00231
00232
00233
00236 int unixem_getpagesize(void);
00237
00240 long unixem_pathconf(
00241 char const* path
00242 , int name
00243 );
00244
00245
00253 char* unixem_realpath(
00254 char const* path
00255 , char resolvedPath[]
00256 );
00257
00262 int unixem_usleep(unsigned long microSeconds);
00263
00264
00267 unixem_pid_t unixem_getpid(void);
00268
00269
00281 int __stdcall unixem_gethostname(
00282 char* name
00283 , size_t cchName
00284 );
00285
00286 #ifdef __cplusplus
00287 }
00288 #endif
00289
00290
00291
00294
00295
00296 #endif
00297
00298