diff options
Diffstat (limited to '')
| -rw-r--r-- | src/os/win32/ngx_files.c | 20 | ||||
| -rw-r--r-- | src/os/win32/ngx_files.h | 2 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/os/win32/ngx_files.c b/src/os/win32/ngx_files.c index eff843ab7..afe31b9a0 100644 --- a/src/os/win32/ngx_files.c +++ b/src/os/win32/ngx_files.c @@ -504,8 +504,28 @@ ngx_directio_on(ngx_fd_t fd) return 0; } + ngx_int_t ngx_directio_off(ngx_fd_t fd) { return 0; } + + +size_t +ngx_fs_bsize(u_char *name) +{ + u_char root[4]; + u_long sc, bs, nfree, ncl; + + if (name[2] == ':') { + ngx_cpystrn(root, name, 4); + name = root; + } + + if (GetDiskFreeSpace((const char *) name, &sc, &bs, &nfree, &ncl) == 0) { + return 512; + } + + return sc * bs; +} diff --git a/src/os/win32/ngx_files.h b/src/os/win32/ngx_files.h index b8487920f..47a76611b 100644 --- a/src/os/win32/ngx_files.h +++ b/src/os/win32/ngx_files.h @@ -243,5 +243,7 @@ ngx_int_t ngx_directio_on(ngx_fd_t fd); ngx_int_t ngx_directio_off(ngx_fd_t fd); #define ngx_directio_off_n "ngx_directio_off_n" +size_t ngx_fs_bsize(u_char *name); + #endif /* _NGX_FILES_H_INCLUDED_ */ |
