Win32 appends synchronized if only FILE_APPEND_DATA and SYNCHRONIZE are set

without any other flags. On the other hand, Unix requires at least the write
flag to be set together with O_APPEND.
This commit is contained in:
Igor Sysoev 2009-03-31 13:52:01 +00:00
parent a701f1956d
commit 0b33dc60c5
4 changed files with 6 additions and 6 deletions

View file

@ -360,7 +360,7 @@ ngx_init_cycle(ngx_cycle_t *old_cycle)
}
file[i].fd = ngx_open_file(file[i].name.data,
NGX_FILE_RDWR|NGX_FILE_APPEND,
NGX_FILE_APPEND,
NGX_FILE_CREATE_OR_OPEN,
NGX_FILE_DEFAULT_ACCESS);
@ -1065,7 +1065,7 @@ ngx_reopen_files(ngx_cycle_t *cycle, ngx_uid_t user)
file[i].pos = file[i].buffer;
}
fd = ngx_open_file(file[i].name.data, NGX_FILE_RDWR|NGX_FILE_APPEND,
fd = ngx_open_file(file[i].name.data, NGX_FILE_APPEND,
NGX_FILE_CREATE_OR_OPEN, NGX_FILE_DEFAULT_ACCESS);
ngx_log_debug3(NGX_LOG_DEBUG_EVENT, cycle->log, 0,

View file

@ -201,7 +201,7 @@ ngx_log_init(void)
ngx_stderr_fileno = GetStdHandle(STD_ERROR_HANDLE);
ngx_stderr.fd = ngx_open_file((u_char *) NGX_ERROR_LOG_PATH,
NGX_FILE_RDWR|NGX_FILE_APPEND,
NGX_FILE_APPEND,
NGX_FILE_CREATE_OR_OPEN,
NGX_FILE_DEFAULT_ACCESS);

View file

@ -466,8 +466,8 @@ ngx_open_and_stat_file(u_char *name, ngx_open_file_info_t *of, ngx_log_t *log)
fd = ngx_open_file(name, NGX_FILE_RDONLY, NGX_FILE_OPEN, 0);
} else {
fd = ngx_open_file(name, NGX_FILE_RDWR|NGX_FILE_APPEND,
NGX_FILE_CREATE_OR_OPEN, NGX_FILE_DEFAULT_ACCESS);
fd = ngx_open_file(name, NGX_FILE_APPEND, NGX_FILE_CREATE_OR_OPEN,
NGX_FILE_DEFAULT_ACCESS);
}
if (fd == NGX_INVALID_FILE) {

View file

@ -64,7 +64,7 @@ typedef struct {
#define NGX_FILE_CREATE_OR_OPEN O_CREAT
#define NGX_FILE_OPEN 0
#define NGX_FILE_TRUNCATE O_TRUNC
#define NGX_FILE_APPEND O_APPEND
#define NGX_FILE_APPEND O_WRONLY|O_APPEND
#define NGX_FILE_DEFAULT_ACCESS 0644
#define NGX_FILE_OWNER_ACCESS 0600