Mercurial > hg > nginx-vendor-0-5
comparison src/core/ngx_file.h @ 16:74b1868dd3cd NGINX_0_1_8
nginx 0.1.8
*) Bugfix: in the ngx_http_autoindex_module if the long file names were
in the listing.
*) Feature: the "^~" modifier in the location directive.
*) Feature: the proxy_max_temp_file_size directive.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Sat, 20 Nov 2004 00:00:00 +0300 |
parents | 80ba094c6b3e |
children | 7ca9bdc82b3f |
comparison
equal
deleted
inserted
replaced
15:0503cb60c4e4 | 16:74b1868dd3cd |
---|---|
15 | 15 |
16 #include <ngx_garbage_collector.h> | 16 #include <ngx_garbage_collector.h> |
17 | 17 |
18 | 18 |
19 struct ngx_file_s { | 19 struct ngx_file_s { |
20 ngx_fd_t fd; | 20 ngx_fd_t fd; |
21 ngx_str_t name; | 21 ngx_str_t name; |
22 ngx_file_info_t info; | 22 ngx_file_info_t info; |
23 | 23 |
24 off_t offset; | 24 off_t offset; |
25 off_t sys_offset; | 25 off_t sys_offset; |
26 | 26 |
27 ngx_log_t *log; | 27 ngx_log_t *log; |
28 | 28 |
29 ngx_uint_t valid_info:1; /* unsigned valid_info:1; */ | 29 ngx_uint_t valid_info:1; /* unsigned valid_info:1; */ |
30 }; | 30 }; |
31 | 31 |
32 #define NGX_MAX_PATH_LEVEL 3 | 32 #define NGX_MAX_PATH_LEVEL 3 |
33 | 33 |
34 struct ngx_path_s { | 34 struct ngx_path_s { |
35 ngx_str_t name; | 35 ngx_str_t name; |
36 u_int len; | 36 ngx_uint_t len; |
37 u_int level[3]; | 37 ngx_uint_t level[3]; |
38 ngx_gc_handler_pt gc_handler; | 38 ngx_gc_handler_pt gc_handler; |
39 | |
40 u_char *conf_file; | |
41 ngx_uint_t line; | |
39 }; | 42 }; |
40 | 43 |
41 | 44 |
42 typedef struct { | 45 typedef struct { |
43 ngx_file_t file; | 46 ngx_file_t file; |
44 off_t offset; | 47 off_t offset; |
45 ngx_path_t *path; | 48 ngx_path_t *path; |
46 ngx_pool_t *pool; | 49 ngx_pool_t *pool; |
47 char *warn; | 50 char *warn; |
48 | 51 |
49 unsigned persistent:1; | 52 unsigned persistent:1; |
50 } ngx_temp_file_t; | 53 } ngx_temp_file_t; |
51 | 54 |
52 | 55 |
53 int ngx_write_chain_to_temp_file(ngx_temp_file_t *tf, ngx_chain_t *chain); | 56 ssize_t ngx_write_chain_to_temp_file(ngx_temp_file_t *tf, ngx_chain_t *chain); |
54 int ngx_create_temp_file(ngx_file_t *file, ngx_path_t *path, | 57 ngx_int_t ngx_create_temp_file(ngx_file_t *file, ngx_path_t *path, |
55 ngx_pool_t *pool, int persistent); | 58 ngx_pool_t *pool, int persistent); |
56 void ngx_create_hashed_filename(ngx_file_t *file, ngx_path_t *path); | 59 void ngx_create_hashed_filename(ngx_file_t *file, ngx_path_t *path); |
57 int ngx_create_path(ngx_file_t *file, ngx_path_t *path); | 60 ngx_int_t ngx_create_path(ngx_file_t *file, ngx_path_t *path); |
61 ngx_int_t ngx_create_pathes(ngx_cycle_t *cycle, ngx_uid_t user); | |
58 | 62 |
59 void ngx_init_temp_number(); | 63 void ngx_init_temp_number(); |
60 ngx_uint_t ngx_next_temp_number(ngx_uint_t collision); | 64 ngx_uint_t ngx_next_temp_number(ngx_uint_t collision); |
61 | 65 |
62 char *ngx_conf_set_path_slot(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); | 66 char *ngx_conf_set_path_slot(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); |