summaryrefslogtreecommitdiffhomepage
path: root/src/os/win32 (follow)
AgeCommit message (Collapse)AuthorFilesLines
2012-09-24Merge of r4779, r4840, r4843, r4844: win32 changes.Maxim Dounin1-0/+1
*) Fixed build with Visual Studio 2005 Express. It is available via winetricks which makes it still usable, and has an old crtdefs.h which uses _CRT_SECURE_NO_DEPRECATE instead of _CRT_SECURE_NO_WARNINGS to suppress warnings. Reported by HAYASHI Kentaro, http://mailman.nginx.org/pipermail/nginx-devel/2012-August/002542.html *) Configure: provide inflate() when building zlib on win32. *) Helper target "win32" to run configure for win32 builds. *) Updated zlib used for win32 builds.
2012-08-06Merge of r4758: win32: fixed cpu hog after process startup failure.Maxim Dounin1-0/+1
If ngx_spawn_process() failed while starting a process, the process handle was closed but left non-NULL in the ngx_processes[] array. The handle later was used in WaitForMultipleObjects() (if there were multiple worker processes configured and at least one worker process was started successfully), resulting in infinite loop. Reported by Ricardo Villalobos Guevara: http://mailman.nginx.org/pipermail/nginx-devel/2012-July/002494.html
2012-07-02Merge of r4682, r4694, r4699, r4704, r4705: minor nits.Maxim Dounin3-3/+3
*) Fixed spelling of "endianness", and called it "byte ordering" in the user visible part. *) Fixed return type of ngx_strerror_init(). *) Fixed a harmless error in spelling of "Connection: close" when computing the response header length. *) Style. *) Added code to look up Google perftools in /opt/local/, for MacPorts.
2012-06-05Merge of r4674, r4675, r4676: win32 fixes.Maxim Dounin1-33/+164
*) Win32: disallowed access to various non-canonical name variants. This includes trailings dots and spaces, NTFS streams (and short names, as previously checked). The checks are now also done in ngx_file_info(), thus allowing to use the "try_files" directive to protect external scripts. *) Win32: normalization of trailing dot inside uri. Windows treats "/directory./" identical to "/directory/". Do the same when working on Windows. Note that the behaviour is different from one with last path component (where multiple spaces and dots are ignored by Windows). *) Win32: uris with ":$" are now rejected. There are too many problems with special NTFS streams, notably "::$data", "::$index_allocation" and ":$i30:$index_allocation". For now we don't reject all URIs with ":" like Apache does as there are no good reasons seen yet, and there are multiple programs using it in URLs (e.g. MediaWiki).
2012-06-04Merge of r4619: accept moderation on EMFILE/ENFILE.Maxim Dounin1-0/+2
In case of EMFILE/ENFILE returned from accept() we disable accept events, and (in case of no accept mutex used) arm timer to re-enable them later. With accept mutex we just drop it, and rely on normal accept mutex handling to re-enable accept events once it's acquired again. As we now handle errors in question, logging level was changed to "crit" (instead of "alert" used for unknown errors). Note: the code might call ngx_enable_accept_events() multiple times if there are many listen sockets. The ngx_enable_accept_events() function was modified to check if connection is already active (via c->read->active) and skip it then, thus making multiple calls safe.
2012-04-03Fixed spelling in multiline C comments.Ruslan Ermilov1-1/+1
2012-04-02Win32: improved ngx_mutex_init() stub (ticket #138).Maxim Dounin1-1/+12
This allows to run nginx with "master_process off" under Windows.
2012-04-02Win32: fixed memory allocation for shmem name (ticket #134).Maxim Dounin1-1/+1
2012-03-28Fixed win32 build after realpath changes in r4559.Maxim Dounin2-3/+3
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-03-22Win32: added missing call to srand().Maxim Dounin1-0/+2
Found by Veracode.
2012-02-28Fixed spelling in single-line comments.Ruslan Ermilov1-1/+1
2012-01-18Copyright updated.Maxim Konovalov33-0/+33
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-10-24malloc() debugging on MacOSX.Igor Sysoev1-0/+1
2011-10-20Fixing conflict with SDK off_t definition.Igor Sysoev1-1/+4
2011-10-20Recent SDKs allow to build IPV6 only for Windows XP or above.Igor Sysoev1-1/+1
2011-09-19Replaced "can not" with "cannot" and "could not" in a bunch of places.Ruslan Ermilov1-1/+1
Fixed nearby grammar errors.
2011-08-22Fix buffer overrun under Windows.Maxim Dounin1-1/+2
2011-07-24elimination of reading cache files by cache loaderIgor Sysoev1-0/+1
2011-05-16"$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic moduleIgor Sysoev2-2/+2
patch by Maxim Dounin
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.
2011-01-20use SwitchToThread() instead of Sleep(0), because the laterIgor Sysoev1-1/+1
may not yield control, if there is no thread with higher priority
2010-11-25use copied strerror() messages and autoconfigured sys_nerr valueIgor Sysoev2-2/+11
2010-09-02add "Global\" prefix for signal eventsIgor Sysoev1-9/+11
2010-07-05fix building by owc12: GetLongPathName() is available since Win2K onlyIgor Sysoev1-1/+1
2010-06-29ngx_create_file_mapping()Igor Sysoev2-0/+107
2010-06-23style fixIgor Sysoev1-2/+2
2010-06-14do not free() stack allocated bufferIgor Sysoev1-1/+0
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
2010-03-25*) introduce ngx_time_sigsafe_update() to update the error log time onlyIgor Sysoev2-8/+8
*) change ngx_time_update() interface
2010-03-13*) use previously cached GMT offset value to update time from a signal handlerIgor Sysoev2-8/+8
*) change ngx_time_update() interface since there are no notification methods those return time
2010-03-03compare long file names in case-insensitive mode,Igor Sysoev3-1/+5
the bug had been introduced in r3418
2010-01-28disable Win32 short file namesIgor Sysoev1-14/+50
2009-12-15fix Win32 error messages when an temporary file replaces an existent file:Igor Sysoev2-13/+7
*) 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-11-23add NGX_PROCESS_HELPER process statusIgor Sysoev2-7/+2
2009-11-17a cache manager thread handle was overwritten by a cache loader thread handle,Igor Sysoev1-2/+2
this caused an exit delay, the bug had been introduced in r3023
2009-11-15update allocation error messagesIgor Sysoev1-1/+1
2009-11-02style fixIgor Sysoev1-1/+0
2009-10-14*) reset cached dirent.d_type after stat()Igor Sysoev2-2/+2
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 Sysoev2-0/+9
2009-09-25use parents around NGX_ATOMIC_T_LEN valueIgor Sysoev1-1/+1
2009-09-25uniform ngx_directio_on/off() interface with other file functionsIgor Sysoev1-2/+2
2009-09-24test incomplete WriteFile()Igor Sysoev1-0/+7
2009-09-24log file name for read/write errorsIgor Sysoev1-2/+4
2009-09-24delete Win95 codeIgor Sysoev1-90/+12
2009-09-16win32 ngx_file_info() utf8 supportIgor Sysoev1-4/+16
2009-09-16preserve errno while ngx_free()Igor Sysoev1-3/+6
2009-08-21*) share temporary number between workersIgor Sysoev1-4/+0
*) randomize collision offset