]> git.kaiwu.me - nginx.git/commitdiff
fix win32 ngx_read_fd() and ngx_write_fd()
authorIgor Sysoev <igor@sysoev.ru>
Sun, 11 Nov 2007 19:56:46 +0000 (19:56 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Sun, 11 Nov 2007 19:56:46 +0000 (19:56 +0000)
src/os/win32/ngx_files.c
src/os/win32/ngx_files.h

index e4efb4df0172128edcccf10a52805cadb0467153..e74dc52ea0b125be63e18715c8e17f98500cac6a 100644 (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)
 {
index fb338830ac807e8b0b0f3d1a73cf153c2843f5d2..560e91cdc894b6c5b464199040c6ecf978d012b1 100644 (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