comparison src/os/unix/ngx_files.h @ 456:ca8f7f6cab16 NGINX_0_7_40

nginx 0.7.40 *) Feature: the "location" directive supports captures in regular expressions. *) Feature: an "alias" directive with capture references may be used inside a location given by a regular expression with captures. *) Feature: the "server_name" directive supports captures in regular expressions. *) Workaround: the ngx_http_autoindex_module did not show the trailing slash in directories on XFS filesystem; the issue had appeared in 0.7.15. Thanks to Dmitry Kuzmenko.
author Igor Sysoev <http://sysoev.ru>
date Mon, 09 Mar 2009 00:00:00 +0300
parents ff86d646f9df
children c8cfb6c462ef
comparison
equal deleted inserted replaced
455:ead634c4b006 456:ca8f7f6cab16
198 #define ngx_de_link_info(name, dir) lstat((const char *) name, &(dir)->info) 198 #define ngx_de_link_info(name, dir) lstat((const char *) name, &(dir)->info)
199 #define ngx_de_link_info_n "lstat()" 199 #define ngx_de_link_info_n "lstat()"
200 200
201 #if (NGX_HAVE_D_TYPE) 201 #if (NGX_HAVE_D_TYPE)
202 202
203 #if (NGX_LINUX)
204
205 /* XFS on Linux does not set dirent.d_type */
206
207 #define ngx_de_is_dir(dir) \
208 (((dir)->type) ? ((dir)->type == DT_DIR) : (S_ISDIR((dir)->info.st_mode)))
209 #define ngx_de_is_file(dir) \
210 (((dir)->type) ? ((dir)->type == DT_REG) : (S_ISREG((dir)->info.st_mode)))
211 #define ngx_de_is_link(dir) \
212 (((dir)->type) ? ((dir)->type == DT_LINK) : (S_ISLNK((dir)->info.st_mode)))
213
214 #else
215
203 #define ngx_de_is_dir(dir) ((dir)->type == DT_DIR) 216 #define ngx_de_is_dir(dir) ((dir)->type == DT_DIR)
204 #define ngx_de_is_file(dir) ((dir)->type == DT_REG) 217 #define ngx_de_is_file(dir) ((dir)->type == DT_REG)
205 #define ngx_de_is_link(dir) ((dir)->type == DT_LINK) 218 #define ngx_de_is_link(dir) ((dir)->type == DT_LINK)
219
220 #endif /* NGX_LINUX */
206 221
207 #else 222 #else
208 223
209 #define ngx_de_is_dir(dir) (S_ISDIR((dir)->info.st_mode)) 224 #define ngx_de_is_dir(dir) (S_ISDIR((dir)->info.st_mode))
210 #define ngx_de_is_file(dir) (S_ISREG((dir)->info.st_mode)) 225 #define ngx_de_is_file(dir) (S_ISREG((dir)->info.st_mode))