summaryrefslogtreecommitdiffhomepage
path: root/src/os/win32/ngx_files.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2024-02-26Win32: fixed unique file index calculations.Piotr Sikora1-1/+2
The old code was breaking strict aliasing rules. Signed-off-by: Piotr Sikora <piotr@aviatrix.com>
2023-02-23Win32: non-ASCII names support in ngx_open_tempfile().Maxim Dounin1-10/+2
This makes it possible to use temporary directories with non-ASCII characters, either explicitly or via a prefix with non-ASCII characters in it.
2023-02-23Win32: non-ASCII names support in ngx_rename_file().Maxim Dounin1-1/+1
This makes it possible to upload files with non-ASCII characters when using the dav module (ticket #1433).
2023-02-23Win32: non-ASCII names support in ngx_delete_file().Maxim Dounin1-1/+1
This makes it possible to delete files with non-ASCII characters when using the dav module (ticket #1433).
2023-02-23Win32: non-ASCII directory names support in ngx_delete_dir().Maxim Dounin1-1/+1
This makes it possible to delete directories with non-ASCII characters when using the dav module (ticket #1433).
2023-02-23Win32: non-ASCII directory names support in ngx_create_dir().Maxim Dounin1-1/+1
This makes it possible to create directories under prefix with non-ASCII characters, as well as makes it possible to create directories with non-ASCII characters when using the dav module (ticket #1433). To ensure that the dav module operations are restricted similarly to other file operations (in particular, short names are not allowed), the ngx_win32_check_filename() function is used. It improved to support checking of just dirname, and now can be used to check paths when creating files or directories.
2023-02-23Win32: non-ASCII directory names support in ngx_getcwd().Maxim Dounin1-1/+5
This makes it possible to start nginx without a prefix explicitly set in a directory with non-ASCII characters in it.
2023-02-23Win32: non-ASCII names support in "include" with wildcards.Maxim Dounin1-1/+1
Notably, ngx_open_glob() now supports opening directories with non-ASCII characters, and pathnames returned by ngx_read_glob() are converted to UTF-8.
2023-02-23Win32: non-ASCII names support in autoindex (ticket #458).Maxim Dounin1-3/+7
Notably, ngx_open_dir() now supports opening directories with non-ASCII characters, and directory entries returned by ngx_read_dir() are properly converted to UTF-8.
2020-06-22Cache: introduced min_free cache clearing.Maxim Dounin1-0/+1
Clearing cache based on free space left on a file system is expected to allow better disk utilization in some cases, notably when disk space might be also used for something other than nginx cache (including nginx own temporary files) and while loading cache (when cache size might be inaccurate for a while, effectively disabling max_size cache clearing). Based on a patch by Adam Bambuch.
2018-12-24Win32: removed NGX_DIR_MASK concept.Maxim Dounin1-3/+0
Previous interface of ngx_open_dir() assumed that passed directory name has a room for NGX_DIR_MASK at the end (NGX_DIR_MASK_LEN bytes). While all direct users of ngx_dir_open() followed this interface, this also implied similar requirements for indirect uses - in particular, via ngx_walk_tree(). Currently none of ngx_walk_tree() uses provides appropriate space, and fixing this does not look like a right way to go. Instead, ngx_dir_open() interface was changed to not require any additional space and use appropriate allocations instead.
2015-06-16Core: added support for writing to stdout.Vladimir Homutov1-0/+1
2014-07-05Win32: ngx_open_dir() and ngx_close_dir() fixes.Maxim Dounin1-1/+1
The ngx_open_dir() function changed to restore name passed to it. This fixes removing destination directory in dav module, as caught by dav.t. The ngx_close_dir() function introduced to properly convert errors, as FindClose() returns 0 on error.
2013-09-23Added ngx_filename_cmp() with "/" sorted to the left.Maxim Dounin1-5/+0
This patch fixes incorrect handling of auto redirect in configurations like: location /0 { } location /a- { } location /a/ { proxy_pass ... } With previously used sorting, this resulted in the following locations tree (as "-" is less than "/"): "/a-" "/0" "/a/" and a request to "/a" didn't match "/a/" with auto_redirect, as it didn't traverse relevant tree node during lookup (it tested "/a-", then "/0", and then falled back to null location). To preserve locale use for non-ASCII characters on case-insensetive systems, libc's tolower() used.
2012-03-28Fixed win32 build after realpath changes in r4559.Maxim Dounin1-1/+1
2012-03-27Fixed unconditional MAX_PATH usage (ticket #22).Maxim Dounin1-0/+1
POSIX doesn't require it to be defined, and Debian GNU/Hurd doesn't define it. Note that if there is no MAX_PATH defined we have to use realpath() with NULL argument and free() the result.
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2011-11-14Introduction of simple ngx_write_stderr() instead of ngx_log_stderr()Igor Sysoev1-0/+1
for output of ./configure options, etc., since ngx_log_stderr() output length is limited by 2048 characters defined as NGX_MAX_ERROR_STR.
2011-07-24elimination of reading cache files by cache loaderIgor Sysoev1-0/+1
2011-04-22Use more precise stat.st_blocks to account cache size on UnixIgor Sysoev1-0/+1
instead of file length rounded to a file system block size. There is no similar way on Windows, so rounding to a cache->bsize is kept.
2010-06-29ngx_create_file_mapping()Igor Sysoev1-0/+15
2010-04-22use lstat() for WebDAV DELETE, COPY, and MOVE to handle symlinksIgor Sysoev1-0/+4
2010-04-21use non-blocking open() not to hang on FIFO files, etc.Igor Sysoev1-0/+1
2009-12-15fix Win32 error messages when an temporary file replaces an existent file:Igor Sysoev1-1/+1
*) do not rename an already renamed file *) now ngx_win32_rename_file() returns error code *) do not log failure inside ngx_win32_rename_file()
2009-10-14*) reset cached dirent.d_type after stat()Igor Sysoev1-1/+1
this fixes slash after link to a directory in ngx_http_autoindex_module; *) use cached dirent.d_type as hint on all systems the issues has been introduced in r2235
2009-09-30read_aheadIgor Sysoev1-0/+2
2009-07-14use caseless regex locations on caseless filesystems: MacOSX, Win32, CygwinIgor Sysoev1-0/+1
2009-04-28introduce ngx_write_console() to support OEM code pagesIgor Sysoev1-0/+3
2009-04-27-p and --prefix=Igor Sysoev1-2/+1
2009-04-23ngx_path_separator()Igor Sysoev1-0/+2
2009-04-23issue start up errors and warning on both stderr and error_logIgor Sysoev1-0/+5
2009-04-08delete win32 ngx_file_append_mode() as we use reliableIgor Sysoev1-4/+0
FILE_APPEND_DATA|SYNCHRONIZE flags
2009-04-08adopt NGX_FILE_TRUNCATE for win32Igor Sysoev1-0/+1
2009-03-30win32 ngx_open_file() supports utf8 names and NGX_FILE_APPENDIgor Sysoev1-9/+3
2009-03-30ngx_fs_bsize()Igor Sysoev1-0/+2
2009-03-23a prelimiary proxy cache supportIgor Sysoev1-0/+1
2009-01-21fix win32 ngx_is_dir(), etcIgor Sysoev1-4/+6
2008-09-27$realpath_rootIgor Sysoev1-0/+2
2008-09-12disable directio for unaligned reads in LinuxIgor Sysoev1-2/+5
2008-09-05*) autoconfigure struct dirent capabilitiesIgor Sysoev1-14/+30
*) move src/os/.../ngx_types.h's content into src/os/.../ngx_files.h and delete src/os/.../ngx_types.h
2008-09-05style fixIgor Sysoev1-9/+9
2008-08-04fix building by msvc8 introduced in r2127Igor Sysoev1-1/+1
2008-08-04fix building by bcc broken in r2130Igor Sysoev1-1/+1
2008-07-30directioIgor Sysoev1-1/+5
2008-07-29case insensitive file system location support provided by locale onlyIgor Sysoev1-0/+3
2008-04-29ignore glob no match errorIgor Sysoev1-1/+5
2007-12-07use malloc() in ngx_win32_rename_file, set crit level instead of errorIgor Sysoev1-2/+1
2007-11-11fix win32 ngx_read_fd() and ngx_write_fd()Igor Sysoev1-2/+4
2007-11-11fix win32 globIgor Sysoev1-0/+2
2007-08-30win32 ngx_is_exec() stubIgor Sysoev1-0/+1