aboutsummaryrefslogtreecommitdiff
path: root/src/os/win32/ngx_files.c
blob: 3734bdc8319b9f252b18ec2196d19e5878ba8589 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <ngx_config.h>
#include <ngx_core.h>


ssize_t ngx_read_file(ngx_file_t *file, char *buf, size_t size, off_t offset)
{
    size_t n;

    if (ReadFile(file->fd, buf, size, &n, NULL) == 0) {
        ngx_log_error(NGX_LOG_ERR, file->log, ngx_errno, "ReadFile() failed");
        return NGX_ERROR;
    }

    file->offset += n;

    return n;
}


int ngx_file_append_mode(ngx_fd_t *fd)
{
    if (SetFilePointer(fd, 0, NULL, FILE_END) == 0xFFFFFFFF) {
        if (GetLastError() != NO_ERROR) {
            return NGX_ERROR;
        }
    }

    return NGX_OK;
}