Mercurial > hg > nginx
comparison src/os/win32/ngx_files.c @ 561:e48ebafc6939 release-0.3.2
nginx-0.3.2-RELEASE import
*) Feature: the Sun Studio 10 C compiler support.
*) Feature: the "proxy_upstream_max_fails",
"proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and
"fastcgi_upstream_fail_timeout" directives.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 12 Oct 2005 13:50:36 +0000 |
parents | d4ea69372b94 |
children | 4d9ea73a627a |
comparison
equal
deleted
inserted
replaced
560:8886091eddd2 | 561:e48ebafc6939 |
---|---|
6 | 6 |
7 #include <ngx_config.h> | 7 #include <ngx_config.h> |
8 #include <ngx_core.h> | 8 #include <ngx_core.h> |
9 | 9 |
10 | 10 |
11 ssize_t ngx_read_file(ngx_file_t *file, u_char *buf, size_t size, off_t offset) | 11 ssize_t |
12 ngx_read_file(ngx_file_t *file, u_char *buf, size_t size, off_t offset) | |
12 { | 13 { |
13 long high_offset; | 14 long high_offset; |
14 u_long n; | 15 u_long n; |
15 ngx_err_t err; | 16 ngx_err_t err; |
16 OVERLAPPED ovlp, *povlp; | 17 OVERLAPPED ovlp, *povlp; |
70 | 71 |
71 return n; | 72 return n; |
72 } | 73 } |
73 | 74 |
74 | 75 |
75 ssize_t ngx_write_file(ngx_file_t *file, u_char *buf, size_t size, off_t offset) | 76 ssize_t |
77 ngx_write_file(ngx_file_t *file, u_char *buf, size_t size, off_t offset) | |
76 { | 78 { |
77 long high_offset; | 79 long high_offset; |
78 u_long n; | 80 u_long n; |
79 ngx_err_t err; | 81 ngx_err_t err; |
80 OVERLAPPED ovlp, *povlp; | 82 OVERLAPPED ovlp, *povlp; |
133 | 135 |
134 return n; | 136 return n; |
135 } | 137 } |
136 | 138 |
137 | 139 |
138 ssize_t ngx_write_chain_to_file(ngx_file_t *file, ngx_chain_t *cl, | 140 ssize_t |
139 off_t offset, ngx_pool_t *pool) | 141 ngx_write_chain_to_file(ngx_file_t *file, ngx_chain_t *cl, off_t offset, |
142 ngx_pool_t *pool) | |
140 { | 143 { |
141 u_char *buf, *prev; | 144 u_char *buf, *prev; |
142 size_t size; | 145 size_t size; |
143 ssize_t total, n; | 146 ssize_t total, n; |
144 | 147 |
169 | 172 |
170 return total; | 173 return total; |
171 } | 174 } |
172 | 175 |
173 | 176 |
174 ngx_int_t ngx_win32_rename_file(ngx_str_t *from, ngx_str_t *to, | 177 ngx_int_t |
175 ngx_pool_t *pool) | 178 ngx_win32_rename_file(ngx_str_t *from, ngx_str_t *to, ngx_pool_t *pool) |
176 { | 179 { |
177 u_char *name; | 180 u_char *name; |
178 ngx_int_t rc; | 181 ngx_int_t rc; |
179 ngx_uint_t collision; | 182 ngx_uint_t collision; |
180 ngx_atomic_uint_t num; | 183 ngx_atomic_uint_t num; |
231 } | 234 } |
232 | 235 |
233 | 236 |
234 #if 0 | 237 #if 0 |
235 | 238 |
236 ngx_int_t ngx_file_info(char *file, ngx_file_info_t *sb) | 239 ngx_int_t |
240 ngx_file_info(char *file, ngx_file_info_t *sb) | |
237 { | 241 { |
238 WIN32_FILE_ATTRIBUTE_DATA fa; | 242 WIN32_FILE_ATTRIBUTE_DATA fa; |
239 | 243 |
240 /* NT4 and Win98 */ | 244 /* NT4 and Win98 */ |
241 | 245 |
254 } | 258 } |
255 | 259 |
256 #endif | 260 #endif |
257 | 261 |
258 | 262 |
259 ngx_int_t ngx_file_info(u_char *file, ngx_file_info_t *sb) | 263 ngx_int_t |
264 ngx_file_info(u_char *file, ngx_file_info_t *sb) | |
260 { | 265 { |
261 /* Win95 */ | 266 /* Win95 */ |
262 | 267 |
263 sb->dwFileAttributes = GetFileAttributes((const char *) file); | 268 sb->dwFileAttributes = GetFileAttributes((const char *) file); |
264 | 269 |
268 | 273 |
269 return NGX_OK; | 274 return NGX_OK; |
270 } | 275 } |
271 | 276 |
272 | 277 |
273 ngx_int_t ngx_open_dir(ngx_str_t *name, ngx_dir_t *dir) | 278 ngx_int_t |
279 ngx_open_dir(ngx_str_t *name, ngx_dir_t *dir) | |
274 { | 280 { |
275 ngx_cpystrn(name->data + name->len, NGX_DIR_MASK, NGX_DIR_MASK_LEN + 1); | 281 ngx_cpystrn(name->data + name->len, NGX_DIR_MASK, NGX_DIR_MASK_LEN + 1); |
276 | 282 |
277 dir->dir = FindFirstFile((const char *) name->data, &dir->fd); | 283 dir->dir = FindFirstFile((const char *) name->data, &dir->fd); |
278 | 284 |
285 | 291 |
286 return NGX_OK; | 292 return NGX_OK; |
287 } | 293 } |
288 | 294 |
289 | 295 |
290 ngx_int_t ngx_read_dir(ngx_dir_t *dir) | 296 ngx_int_t |
297 ngx_read_dir(ngx_dir_t *dir) | |
291 { | 298 { |
292 if (dir->ready) { | 299 if (dir->ready) { |
293 dir->ready = 0; | 300 dir->ready = 0; |
294 return NGX_OK; | 301 return NGX_OK; |
295 } | 302 } |
314 { | 321 { |
315 return NGX_OK; | 322 return NGX_OK; |
316 } | 323 } |
317 | 324 |
318 | 325 |
319 ngx_int_t ngx_file_append_mode(ngx_fd_t fd) | 326 ngx_int_t |
327 ngx_file_append_mode(ngx_fd_t fd) | |
320 { | 328 { |
321 #if 0 | 329 #if 0 |
322 if (LockFile(fd, 0, 0, 0xffffffff, 0xffffffff) == 0) { | 330 if (LockFile(fd, 0, 0, 0xffffffff, 0xffffffff) == 0) { |
323 return NGX_ERROR; | 331 return NGX_ERROR; |
324 } | 332 } |