Mercurial > hg > nginx-quic
diff src/os/win32/ngx_files.h @ 186:c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sun, 16 Nov 2003 21:49:42 +0000 |
parents | d5f50cefc322 |
children | 0ba4821f4460 |
line wrap: on
line diff
--- a/src/os/win32/ngx_files.h +++ b/src/os/win32/ngx_files.h @@ -21,6 +21,8 @@ #define NGX_FILE_ERROR 0 +#define STDERR_FILENO (HANDLE) 2 + #define ngx_open_file(name, access, create) \ CreateFile(name, access, \ @@ -58,35 +60,87 @@ int ngx_file_append_mode(ngx_fd_t fd); #define ngx_close_file CloseHandle #define ngx_close_file_n "CloseHandle()" -int ngx_rename_file(ngx_str_t *from, ngx_str_t *to, ngx_pool_t *pool); -#define ngx_rename_file_n "MoveFile()" + +#define ngx_delete_file DeleteFile +#define ngx_delete_file_n "DeleteFile()" + -#define ngx_mkdir(name) CreateDirectory(name, NULL) -#define ngx_mkdir_n "CreateDirectory()" +#define ngx_rename_file MoveFile +#define ngx_rename_file_n "MoveFile()" +int ngx_win32_rename_file(ngx_str_t *from, ngx_str_t *to, ngx_pool_t *pool); -int ngx_file_type(char *filename, ngx_file_info_t *fi); -#define ngx_file_type_n "GetFileAttributesEx()" + +int ngx_file_info(char *filename, ngx_file_info_t *fi); +#define ngx_file_info_n "GetFileAttributesEx()" -#define ngx_stat_fd(fd, fi) GetFileInformationByHandle(fd, fi) -#define ngx_stat_fd_n "GetFileInformationByHandle" + +#define ngx_fd_info(fd, fi) GetFileInformationByHandle(fd, fi) +#define ngx_fd_info_n "GetFileInformationByHandle" + -#define ngx_is_dir(fi) (fi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) -#define ngx_is_file(fi) !(fi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) +#define ngx_is_dir(fi) ((fi)->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) +#define ngx_is_file(fi) !((fi)->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) + -#define ngx_file_size(fi) \ - (((off_t) fi.nFileSizeHigh << 32) | fi.nFileSizeLow) +#define ngx_file_size(fi) \ + (((off_t) (fi)->nFileSizeHigh << 32) | (fi)->nFileSizeLow) -#define ngx_file_uniq(fi) (*(ngx_file_uniq_t *) &fi.nFileIndexHigh) +#define ngx_file_uniq(fi) (*(ngx_file_uniq_t *) &(fi)->nFileIndexHigh) /* 116444736000000000 is commented in src/os/win32/ngx_time.c */ -#define ngx_file_mtime(fi) \ - (time_t) (((((unsigned __int64) fi.ftLastWriteTime.dwHighDateTime << 32) \ - | fi.ftLastWriteTime.dwLowDateTime) \ +#define ngx_file_mtime(fi) \ + (time_t) (((((unsigned __int64) (fi)->ftLastWriteTime.dwHighDateTime << 32) \ + | (fi)->ftLastWriteTime.dwLowDateTime) \ - 116444736000000000) / 10000000) +#define NGX_DIR_MASK "/*" +#define NGX_DIR_MASK_LEN 2 + + +int ngx_open_dir(ngx_str_t *name, ngx_dir_t *dir); +#define ngx_open_dir_n "FindFirstFile()" + + +int ngx_read_dir(ngx_dir_t *dir); +#define ngx_read_dir_n "FindNextFile()" + + +#define ngx_close_dir(d) FindClose((d)->dir) +#define ngx_close_dir_n "FindClose()" + + +#define ngx_create_dir(name) CreateDirectory(name, NULL) +#define ngx_create_dir_n "CreateDirectory()" + + +#define ngx_delete_dir RemoveDirectory +#define ngx_delete_dir_n "RemoveDirectory()" + + +#define ngx_de_name(dir) (dir)->fd.cFileName +#define ngx_de_namelen(dir) ngx_strlen((dir)->fd.cFileName) +#define ngx_de_info(name, dir) NGX_OK +#define ngx_de_info_n "dummy()" +#define ngx_de_is_dir(dir) \ + ((dir)->fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) +#define ngx_de_is_file(dir) \ + !((dir)->fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) +#define ngx_de_size(dir) \ + (((off_t) (dir)->fd.nFileSizeHigh << 32) | (dir)->fd.nFileSizeLow) + +/* 116444736000000000 is commented in src/os/win32/ngx_time.c */ + +#define ngx_de_mtime(dir) \ + (time_t) (((((unsigned __int64) \ + (dir)->fd.ftLastWriteTime.dwHighDateTime << 32) \ + | (dir)->fd.ftLastWriteTime.dwLowDateTime) \ + - 116444736000000000) / 10000000) + + + ssize_t ngx_read_file(ngx_file_t *file, char *buf, size_t size, off_t offset); #define ngx_read_file_n "ReadFile()" @@ -96,8 +150,4 @@ ssize_t ngx_write_chain_to_file(ngx_file off_t offset, ngx_pool_t *pool); - -#define STDERR_FILENO (HANDLE) 2 - - #endif /* _NGX_FILES_H_INCLUDED_ */