diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2010-04-22 17:15:42 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2010-04-22 17:15:42 +0000 |
| commit | 3ec15dd090e45c6a767407f758e1765c146b2bb4 (patch) | |
| tree | b62fd110b8a99311e1f8382c161cfeecd69505a1 /src/os | |
| parent | fa7d06ee4f31823f65c5aecea3a273940770bc9d (diff) | |
| download | nginx-3ec15dd090e45c6a767407f758e1765c146b2bb4.tar.gz nginx-3ec15dd090e45c6a767407f758e1765c146b2bb4.tar.bz2 | |
use lstat() for WebDAV DELETE, COPY, and MOVE to handle symlinks
Diffstat (limited to 'src/os')
| -rw-r--r-- | src/os/unix/ngx_files.h | 3 | ||||
| -rw-r--r-- | src/os/win32/ngx_files.h | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/os/unix/ngx_files.h b/src/os/unix/ngx_files.h index f41eba581..c40cfe2ea 100644 --- a/src/os/unix/ngx_files.h +++ b/src/os/unix/ngx_files.h @@ -139,6 +139,9 @@ ngx_int_t ngx_set_file_time(u_char *name, ngx_fd_t fd, time_t s); #define ngx_fd_info(fd, sb) fstat(fd, sb) #define ngx_fd_info_n "fstat()" +#define ngx_link_info(file, sb) lstat((const char *) file, sb) +#define ngx_link_info_n "lstat()" + #define ngx_is_dir(sb) (S_ISDIR((sb)->st_mode)) #define ngx_is_file(sb) (S_ISREG((sb)->st_mode)) #define ngx_is_link(sb) (S_ISLNK((sb)->st_mode)) diff --git a/src/os/win32/ngx_files.h b/src/os/win32/ngx_files.h index c5bb88807..bd78112e7 100644 --- a/src/os/win32/ngx_files.h +++ b/src/os/win32/ngx_files.h @@ -128,6 +128,10 @@ ngx_int_t ngx_file_info(u_char *filename, ngx_file_info_t *fi); #define ngx_fd_info_n "GetFileInformationByHandle()" +#define ngx_link_info(name, fi) ngx_file_info(name, fi) +#define ngx_link_info_n "GetFileAttributesEx()" + + #define ngx_is_dir(fi) \ (((fi)->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0) #define ngx_is_file(fi) \ |
