comparison src/os/win32/ngx_file.h @ 3:34a521b1a148

nginx-0.0.1-2002-08-20-18:48:28 import
author Igor Sysoev <igor@sysoev.ru>
date Tue, 20 Aug 2002 14:48:28 +0000
parents
children 669801705ab1
comparison
equal deleted inserted replaced
2:ffffe1499bce 3:34a521b1a148
1 #ifndef _NGX_FILE_H_INCLUDED_
2 #define _NGX_FILE_H_INCLUDED_
3
4
5 #include <ngx_config.h>
6
7
8 /* INVALID_FILE_ATTRIBUTES specified but never defined at least in VC6SP2 */
9 #ifndef INVALID_FILE_ATTRIBUTES
10 #define INVALID_FILE_ATTRIBUTES 0xFFFFFFFF
11 #endif
12
13 typedef HANDLE ngx_file_t;
14 typedef BY_HANDLE_FILE_INFORMATION ngx_file_info_t;
15
16
17 #define ngx_open_file(name, flags) \
18 CreateFile(name, flags, \
19 FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE, \
20 NULL, OPEN_EXISTING, 0, NULL)
21
22 #define ngx_open_file_n "CreateFile"
23
24 #define NGX_FILE_RDONLY GENERIC_READ
25
26
27 int ngx_file_type(char *filename, ngx_file_info_t *fi);
28 #define ngx_file_type_n "GetFileAttributes"
29
30 #define ngx_stat_fd(fd, fi) GetFileInformationByHandle(fd, fi)
31 #define ngx_stat_fd_n "GetFileInformationByHandle"
32
33 #define ngx_is_dir(fi) (fi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
34
35 #define ngx_file_size(fi) \
36 fi.nFileSizeLow
37
38 /*
39 #define ngx_file_size(fi) \
40 ((off_t) fi.nFileSizeHigh << 32 & fi.nFileSizeLow)
41 */
42
43 #define ngx_file_mtime(fi) fi.ftLastWriteTime
44
45 /*
46 1970 - 1601:
47 116444736000000000
48 19DB1DED53E8000
49 */
50
51
52 #endif /* _NGX_FILE_H_INCLUDED_ */