fix win32 ngx_read_fd() and ngx_write_fd()

This commit is contained in:
Igor Sysoev 2007-11-11 19:56:46 +00:00
parent 479c786e0d
commit a0951d5494
2 changed files with 30 additions and 2 deletions

View File

@ -174,6 +174,32 @@ ngx_write_chain_to_file(ngx_file_t *file, ngx_chain_t *cl, off_t offset,
}
ssize_t
ngx_read_fd(ngx_fd_t fd, void *buf, size_t size)
{
u_long n;
if (ReadFile(fd, buf, size, &n, NULL) != 0) {
return (size_t) n;
}
return -1;
}
ssize_t
ngx_write_fd(ngx_fd_t fd, void *buf, size_t size)
{
u_long n;
if (WriteFile(fd, buf, size, &n, NULL) != 0) {
return (size_t) n;
}
return -1;
}
ngx_int_t
ngx_win32_rename_file(ngx_str_t *from, ngx_str_t *to, ngx_pool_t *pool)
{

View File

@ -68,12 +68,14 @@ ngx_int_t ngx_file_append_mode(ngx_fd_t fd);
#define ngx_close_file_n "CloseHandle()"
#define ngx_read_fd(fd, buf, size) ReadFile(fd, buf, size, NULL, NULL)
ssize_t ngx_read_fd(ngx_fd_t fd, void *buf, size_t size);
#define ngx_read_fd_n "ReadFile()"
#define ngx_write_fd(fd, buf, size) WriteFile(fd, buf, size, NULL, NULL)
ssize_t ngx_write_fd(ngx_fd_t fd, void *buf, size_t size);
#define ngx_write_fd_n "WriteFile()"
#define ngx_linefeed(p) *p++ = CR; *p++ = LF;
#define NGX_LINEFEED_SIZE 2