comparison src/os/unix/ngx_files.h @ 4475:0b05acc045eb

Added openat()/fstatat().
author Andrey Belov <defan@nginx.com>
date Mon, 13 Feb 2012 16:13:21 +0000
parents d620f497c50f
children f7d131008e9c
comparison
equal deleted inserted replaced
4474:41f640a693de 4475:0b05acc045eb
73 #define NGX_FILE_CREATE_OR_OPEN O_CREAT 73 #define NGX_FILE_CREATE_OR_OPEN O_CREAT
74 #define NGX_FILE_OPEN 0 74 #define NGX_FILE_OPEN 0
75 #define NGX_FILE_TRUNCATE O_CREAT|O_TRUNC 75 #define NGX_FILE_TRUNCATE O_CREAT|O_TRUNC
76 #define NGX_FILE_APPEND O_WRONLY|O_APPEND 76 #define NGX_FILE_APPEND O_WRONLY|O_APPEND
77 #define NGX_FILE_NONBLOCK O_NONBLOCK 77 #define NGX_FILE_NONBLOCK O_NONBLOCK
78
79 #if (NGX_HAVE_OPENAT)
80 #define NGX_FILE_NOFOLLOW O_NOFOLLOW
81 #endif
78 82
79 #define NGX_FILE_DEFAULT_ACCESS 0644 83 #define NGX_FILE_DEFAULT_ACCESS 0644
80 #define NGX_FILE_OWNER_ACCESS 0600 84 #define NGX_FILE_OWNER_ACCESS 0600
81 85
82 86
322 #endif 326 #endif
323 327
324 size_t ngx_fs_bsize(u_char *name); 328 size_t ngx_fs_bsize(u_char *name);
325 329
326 330
331 #if (NGX_HAVE_OPENAT)
332
333 #define ngx_openat_file(fd, name, mode, create, access) \
334 openat(fd, (const char *) name, mode|create, access)
335
336 #define ngx_openat_file_n "openat()"
337
338 #define ngx_file_at_info(fd, name, sb, flag) \
339 fstatat(fd, (const char *) name, sb, flag)
340
341 #define ngx_file_at_info_n "fstatat()"
342
343 #endif
344
345
327 #define ngx_stderr STDERR_FILENO 346 #define ngx_stderr STDERR_FILENO
328 #define ngx_set_stderr(fd) dup2(fd, STDERR_FILENO) 347 #define ngx_set_stderr(fd) dup2(fd, STDERR_FILENO)
329 #define ngx_set_stderr_n "dup2(STDERR_FILENO)" 348 #define ngx_set_stderr_n "dup2(STDERR_FILENO)"
330 349
331 350