summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/io.h
blob: 09b615c8f1a311493fc707eda7800b2a9db07dc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
/*
 * System I/O definitions.
 *
 * Derived from the mingw header written by Colin Peters.
 * Modified for Wine use by Jon Griffiths and Francois Gouget.
 * This file is in the public domain.
 */
#ifndef __WINE_IO_H
#define __WINE_IO_H

#include <crtdefs.h>

#include <pshpack8.h>

/* The following are also defined in dos.h */
#define _A_NORMAL 0x00000000
#define _A_RDONLY 0x00000001
#define _A_HIDDEN 0x00000002
#define _A_SYSTEM 0x00000004
#define _A_VOLID  0x00000008
#define _A_SUBDIR 0x00000010
#define _A_ARCH   0x00000020

#ifndef _FSIZE_T_DEFINED
typedef __msvcrt_ulong _fsize_t;
#define _FSIZE_T_DEFINED
#endif

#ifndef _FINDDATA_T_DEFINED
#define _FINDDATA_T_DEFINED
struct _finddata_t
{
  unsigned attrib;
  time_t   time_create;
  time_t   time_access;
  time_t   time_write;
  _fsize_t size;
  char             name[260];
};

struct _finddatai64_t
{
  unsigned attrib;
  time_t time_create;
  time_t time_access;
  time_t time_write;
  __int64 DECLSPEC_ALIGN(8) size;
  char           name[260];
};

struct _finddata64_t
{
  unsigned attrib;
  __time64_t time_create;
  __time64_t time_access;
  __time64_t time_write;
  __int64 DECLSPEC_ALIGN(8) size;
  char           name[260];
};
#endif /* _FINDDATA_T_DEFINED */

#ifndef _WFINDDATA_T_DEFINED
#define _WFINDDATA_T_DEFINED
struct _wfinddata_t {
  unsigned attrib;
  time_t   time_create;
  time_t   time_access;
  time_t   time_write;
  _fsize_t size;
  wchar_t  name[260];
};

struct _wfinddatai64_t {
  unsigned attrib;
  time_t  time_create;
  time_t  time_access;
  time_t  time_write;
  __int64 DECLSPEC_ALIGN(8) size;
  wchar_t name[260];
};
#endif /* _WFINDDATA_T_DEFINED */

#ifdef __cplusplus
extern "C" {
#endif

int         __cdecl _access(const char*,int);
int         __cdecl _chmod(const char*,int);
int         __cdecl _chsize(int,__msvcrt_ulong);
int         __cdecl _close(int);
int         __cdecl _commit(int);
int         __cdecl _creat(const char*,int);
int         __cdecl _dup(int);
int         __cdecl _dup2(int,int);
int         __cdecl _eof(int);
__int64     __cdecl _filelengthi64(int);
__msvcrt_long __cdecl _filelength(int);
int         __cdecl _findclose(intptr_t);
intptr_t    __cdecl _findfirst(const char*,struct _finddata_t*);
intptr_t    __cdecl _findfirsti64(const char*, struct _finddatai64_t*);
intptr_t    __cdecl _findfirst64(const char*, struct _finddata64_t*);
int         __cdecl _findnext(intptr_t,struct _finddata_t*);
int         __cdecl _findnexti64(intptr_t, struct _finddatai64_t*);
int         __cdecl _findnext64(intptr_t, struct _finddata64_t*);
intptr_t    __cdecl _get_osfhandle(int);
int         __cdecl _isatty(int);
int         __cdecl _locking(int,int,__msvcrt_long);
__msvcrt_long __cdecl _lseek(int,__msvcrt_long,int);
__int64     __cdecl _lseeki64(int,__int64,int);
char*       __cdecl _mktemp(char*);
int         __cdecl _mktemp_s(char*,size_t);
int         __cdecl _open(const char*,int,...);
int         __cdecl _open_osfhandle(intptr_t,int);
int         __cdecl _pipe(int*,unsigned int,int);
int         __cdecl _read(int,void*,unsigned int);
int         __cdecl _setmode(int,int);
int         __cdecl _sopen(const char*,int,int,...);
__msvcrt_long __cdecl _tell(int);
__int64     __cdecl _telli64(int);
int         __cdecl _umask(int);
int         __cdecl _unlink(const char*);
int         __cdecl _write(int,const void*,unsigned int);

int         __cdecl remove(const char*);
int         __cdecl rename(const char*,const char*);

#ifndef _WIO_DEFINED
#define _WIO_DEFINED
int         __cdecl _waccess(const wchar_t*,int);
int         __cdecl _wchmod(const wchar_t*,int);
int         __cdecl _wcreat(const wchar_t*,int);
intptr_t    __cdecl _wfindfirst(const wchar_t*,struct _wfinddata_t*);
intptr_t    __cdecl _wfindfirsti64(const wchar_t*, struct _wfinddatai64_t*);
int         __cdecl _wfindnext(intptr_t,struct _wfinddata_t*);
int         __cdecl _wfindnexti64(intptr_t, struct _wfinddatai64_t*);
wchar_t *   __cdecl _wmktemp(wchar_t*);
int         __cdecl _wopen(const wchar_t*,int,...);
int         __cdecl _wrename(const wchar_t*,const wchar_t*);
int         __cdecl _wsopen(const wchar_t*,int,int,...);
int         __cdecl _wunlink(const wchar_t*);
#endif /* _WIO_DEFINED */

#ifdef __cplusplus
}
#endif


static inline int access(const char* path, int mode) { return _access(path, mode); }
static inline int chmod(const char* path, int mode) { return _chmod(path, mode); }
static inline int chsize(int fd, __msvcrt_long size) { return _chsize(fd, size); }
static inline int close(int fd) { return _close(fd); }
static inline int creat(const char* path, int mode) { return _creat(path, mode); }
static inline int dup(int od) { return _dup(od); }
static inline int dup2(int od, int nd) { return _dup2(od, nd); }
static inline int eof(int fd) { return _eof(fd); }
static inline __msvcrt_long filelength(int fd) { return _filelength(fd); }
static inline int isatty(int fd) { return _isatty(fd); }
static inline int locking(int fd, int mode, __msvcrt_long size) { return _locking(fd, mode, size); }
static inline __msvcrt_long lseek(int fd, __msvcrt_long off, int where) { return _lseek(fd, off, where); }
static inline char* mktemp(char* pat) { return _mktemp(pat); }
static inline int read(int fd, void* buf, unsigned int size) { return _read(fd, buf, size); }
static inline int setmode(int fd, int mode) { return _setmode(fd, mode); }
static inline __msvcrt_long tell(int fd) { return _tell(fd); }
#ifndef _UMASK_DEFINED
static inline int umask(int fd) { return _umask(fd); }
#define _UMASK_DEFINED
#endif
#ifndef _UNLINK_DEFINED
static inline int unlink(const char* path) { return _unlink(path); }
#define _UNLINK_DEFINED
#endif
static inline int write(int fd, const void* buf, unsigned int size) { return _write(fd, buf, size); }

#if defined(__GNUC__) && (__GNUC__ < 4)
extern int __cdecl open(const char*,int,...) __attribute__((alias("_open")));
extern int __cdecl sopen(const char*,int,int,...) __attribute__((alias("_sopen")));
#else
#define open _open
#define sopen _sopen
#endif /* __GNUC__ */

#include <poppack.h>

#endif /* __WINE_IO_H */