summaryrefslogtreecommitdiffhomepage
path: root/src/core (follow)
AgeCommit message (Collapse)AuthorFilesLines
2012-11-23Core: don't reuse shared memory zone that changed ownership (ticket #210).Ruslan Ermilov1-1/+3
nginx doesn't allow the same shared memory zone to be used for different purposes, but failed to check this on reconfiguration. If a shared memory zone was used for another purpose in the new configuration, nginx attempted to reuse it and crashed.
2012-11-21Fixed location of debug message in ngx_shmtx_lock().Ruslan Ermilov1-3/+3
2012-11-20Fixed failure to start cache manager and cache loader processesIgor Sysoev1-0/+2
if there were more than 512 listening sockets in configuration.
2012-11-16Version bump.Ruslan Ermilov1-2/+2
2012-10-24Resolver: added missing memory allocation error handling.Maxim Dounin1-0/+4
2012-10-23Core: the "auto" parameter of the "worker_processes" directive.Andrey Belov1-2/+33
The parameter will set the number of worker processes to the autodetected number of available CPU cores.
2012-10-03Version bump.Maxim Dounin1-2/+2
2012-10-01OCSP stapling: loading OCSP responses.Maxim Dounin1-1/+1
This includes the ssl_stapling_responder directive (defaults to OCSP responder set in certificate's AIA extension). OCSP response for a given certificate is requested once we get at least one connection with certificate_status extension in ClientHello, and certificate status won't be sent in the connection in question. This due to limitations in the OpenSSL API (certificate status callback is blocking). Note: SSL_CTX_use_certificate_chain_file() was reimplemented as it doesn't allow to access the certificate loaded via SSL_CTX.
2012-09-28Resolver: cached addresses are returned with random rotation now.Maxim Dounin1-2/+25
This ensures balancing when working with dynamically resolved upstream servers with multiple addresses. Based on patch by Anton Jouline.
2012-09-28Correct plural form for "path" in the whole source base.Andrey Belov4-16/+16
2012-09-28Made sure to initialize the entire ngx_file_t structure.Andrey Belov1-0/+2
Found by Coverity.
2012-09-26Version bump.Maxim Dounin1-2/+2
2012-08-30Fixed overflow if ngx_slab_alloc() is called with very big "size" argument.Ruslan Ermilov1-2/+2
2012-08-28Fixed the "include" directive.Ruslan Ermilov2-2/+2
The "include" directive should be able to include multiple files if given a filename mask. Fixed this to work for "include" directives inside the "map" or "types" blocks. The "include" directive inside the "geo" block is still not fixed.
2012-08-27Version bump.Ruslan Ermilov1-2/+2
2012-08-18Radix tree preallocation fix.Maxim Dounin1-1/+1
The preallocation size was calculated incorrectly and was always 8 due to sizeof(ngx_radix_tree_t) accidentally used instead of sizeof(ngx_radix_node_t).
2012-08-16Crypt: fixed handling of corrupted SSHA entries in password file.Maxim Dounin1-2/+9
Found by Coverity.
2012-08-06Resolver: fixed possible memory leak in ngx_resolver_create().Maxim Dounin1-9/+9
Found by Coverity.
2012-08-03Fixed the -p parameter handling.Ruslan Ermilov1-1/+1
Ensure that the path supplied always ends with a `/' except when empty. An empty value now corresponds to the current directory instead of `/'.
2012-08-03Fixed possible use of old cached times if runtime went backwards.Maxim Dounin1-0/+4
If ngx_time_sigsafe_update() updated only ngx_cached_err_log_time, and then clock was adjusted backwards, the cached_time[slot].sec might accidentally match current seconds on next ngx_time_update() call, resulting in various cached times not being updated. Fix is to clear the cached_time[slot].sec to explicitly mark cached times are stale and need updating.
2012-08-03Added "const" to ngx_memcpy() with NGX_MEMCPY_LIMIT defined.Maxim Dounin2-2/+2
This fixes warning produced during compilation of the ngx_http_geoip_module due to const qualifier being discarded.
2012-08-01Reorder checks in ngx_shared_memory_add() for more consistent error messages.Andrey Belov1-8/+8
2012-07-31Version bump.Ruslan Ermilov1-2/+2
2012-07-30Core: ipv6only is now on by default.Ruslan Ermilov2-3/+3
There is a general consensus that this change results in better consistency between different operating systems and differently tuned operating systems. Note: this changes the width and meaning of the ipv6only field of the ngx_listening_t structure. 3rd party modules that create their own listening sockets might need fixing.
2012-07-29Improved diagnostics when a directive is specified in the wrong context.Ruslan Ermilov2-22/+15
2012-07-26Reduced the number of preprocessor directives.Ruslan Ermilov1-5/+1
2012-07-24Fixed compilation with -Wmissing-prototypes.Ruslan Ermilov2-0/+5
2012-07-17Version bump.Ruslan Ermilov1-2/+2
2012-07-03Fixed typo in a function name.Ruslan Ermilov2-4/+4
2012-06-29Version bump.Ruslan Ermilov1-2/+2
2012-06-18Fixed handling of conflicting wildcard server names.Maxim Dounin1-11/+13
With previous code wildcard names were added to hash even if conflict was detected. This resulted in identical names in hash and segfault later in ngx_hash_wildcard_init().
2012-06-18When "resolver" is configured with a domain name, only the firstRuslan Ermilov1-6/+8
resolved address was used. Now all addresses will be used.
2012-06-18Fixed crash in ngx_resolver_cleanup_tree().Ruslan Ermilov1-4/+3
If sending a DNS request fails with an error (e.g., when mistakenly trying to send it to a local IP broadcast), such a request is not deleted if there are clients waiting on it. However, it was still erroneously removed from the queue. Later ngx_resolver_cleanup_tree() attempted to remove it from the queue again that resulted in a NULL pointer dereference.
2012-06-18Version bump.Ruslan Ermilov1-2/+2
2012-06-04Support for IPv6 literals and an optional port in resolver.Ruslan Ermilov1-5/+5
2012-06-04Support for IPv6 literals in proxy_pass and so on.Maxim Dounin1-7/+30
2012-06-03Resolver: fixed format specification.Maxim Dounin1-1/+1
Patch by Yichun Zhang (agentzh).
2012-06-01Code reduction (no functional changes).Ruslan Ermilov1-19/+2
2012-05-22Fixed potential null pointer dereference in ngx_resolver_create().Ruslan Ermilov1-1/+6
While here, improved error message.
2012-05-21Removed historical and now redundant syntax pre-checks in ngx_parse_url().Ruslan Ermilov1-5/+0
2012-05-17Fixed the ngx_regex.h header file compatibility with C++.Valentin Bartenev2-5/+5
2012-05-16Version bump.Ruslan Ermilov1-2/+2
2012-05-14Resolver: protection from duplicate responses.Maxim Dounin1-2/+10
If we already had CNAME in resolver node (i.e. rn->cnlen and rn->u.cname set), and got additional response with A record, it resulted in rn->cnlen set and rn->u.cname overwritten by rn->u.addr (or rn->u.addrs), causing segmentation fault later in ngx_resolver_free_node() on an attempt to free overwritten rn->u.cname. The opposite (i.e. CNAME got after A) might cause similar problems as well.
2012-04-26Fixed segmentation fault in ngx_resolver_create_name_query().Ruslan Ermilov1-0/+4
If name passed for resolution was { 0, NULL } (e.g. as a result of name server returning CNAME pointing to ".") pointer wrapped to (void *) -1 resulting in segmentation fault on an attempt to dereference it. Reported by Lanshun Zhou.
2012-04-26Version bump.Maxim Dounin1-2/+2
2012-04-23Version bump.Maxim Dounin1-2/+2
2012-04-23Fix of "%f" format handling.Igor Sysoev1-16/+19
ngx_sprintf("%.2f", 0.999) incorrectly resulted in "0.100" instead of "1.00".
2012-04-18Don't silently ignore the last line of configuration file thatRuslan Ermilov1-1/+1
consists solely of one unterminated token (inspired by #150).
2012-04-12Fixed grammar in error messages.Ruslan Ermilov2-2/+3
2012-04-12Version bump.Maxim Dounin1-2/+2