summaryrefslogtreecommitdiffhomepage
path: root/src/core (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
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
2012-04-12Reduced the number of lines of code in ngx_inet_addr().Ruslan Ermilov1-5/+1
2012-04-11Improved readability of the code that produces bitmask from prefix.Ruslan Ermilov1-2/+2
In collaboration with Maxim Dounin.
2012-04-06Fixed signed integer overflows in timer code (ticket #145).Maxim Dounin1-2/+1
Integer overflow is undefined behaviour in C and this indeed caused problems on Solaris/SPARC (at least in some cases). Fix is to subtract unsigned integers instead, and then cast result to a signed one, which is implementation-defined behaviour and used to work. Strictly speaking, we should compare (unsigned) result with the maximum value of the corresponding signed integer type instead, this will be defined behaviour. This will require much more changes though, and considered to be overkill for now.
2012-04-05Comment fixed.Andrey Belov1-1/+1
2012-04-03In ngx_ptocidr(), check that the supplied prefix length is withinRuslan Ermilov1-0/+7
the allowed range.
2012-04-03Fixed spelling in multiline C comments.Ruslan Ermilov5-6/+6
2012-04-02Version bump.Maxim Dounin1-2/+2
2012-03-22Resolver: added missing sanity checking when creating name queries.Maxim Dounin1-1/+5
Found by Veracode.
2012-03-21worker_cpu_affinity: cleaned up Linux implementation, added FreeBSD support.Ruslan Ermilov2-11/+11
2012-03-15Version bump.Maxim Dounin1-2/+2
2012-03-05Whitespace fixes.Maxim Dounin1-1/+1
2012-03-05Version bump.Maxim Dounin1-2/+2
2012-02-28Fixed spelling in single-line comments.Ruslan Ermilov1-1/+1
2012-02-27Fix of rbtree lookup on hash collisions.Maxim Dounin2-22/+12
Previous code incorrectly assumed that nodes with identical keys are linked together. This might not be true after tree rebalance. Patch by Lanshun Zhou.
2012-02-27Fixed null pointer dereference in resolver (ticket #91).Maxim Dounin1-5/+6
The cycle->new_log.file may not be set before config parsing finished if there are no error_log directive defined at global level. Fix is to copy it after config parsing. Patch by Roman Arutyunyan.
2012-02-27Disable symlinks: added the "from" parameter support to the open file cache.Valentin Bartenev2-1/+26
2012-02-21Disable symlinks: use O_SEARCH|O_DIRECTORY to open path components.Valentin Bartenev1-30/+14
2012-02-21Disable symlinks: don't allow creating or truncating a file via a symlink inValentin Bartenev1-1/+3
the last path component if "if_not_owner" parameter is used. To prevent race condition we have to open a file before checking its owner and there's no way to change access flags for already opened file descriptor, so we disable symlinks for the last path component at all if flags allow creating or truncating the file.
2012-02-21Disable symlinks: cleanups once again.Valentin Bartenev1-8/+10
In collaboration with Ruslan Ermilov.
2012-02-20Disable symlinks: added explicit cast of AT_FDCWD (ticket #111).Maxim Dounin1-4/+4
Solaris has AT_FDCWD defined to unsigned value, and comparison of a file descriptor with it causes warnings in modern versions of gcc. Explicitly cast AT_FDCWD to ngx_fd_t to resolve these warnings.
2012-02-20Disable symlinks: error handling cleanup again.Maxim Dounin1-4/+4
2012-02-20Version bump.Maxim Dounin1-2/+2
2012-02-15Disable symlinks: fixed edge cases of path handling.Maxim Dounin1-14/+60
This includes non-absolute pathnames, multiple slashes and trailing slashes. In collaboration with Valentin Bartenev.