<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/http, branch release-1.11.5</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Modules compatibility: compatibility with NGX_HTTP_SSL.</title>
<updated>2016-10-10T15:44:17+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-10T15:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=8fd8c32ccf7987f51d774edfcf7f5a65c75c137a'/>
<id>8fd8c32ccf7987f51d774edfcf7f5a65c75c137a</id>
<content type='text'>
With this change it is now possible to load modules compiled without
the "--with-http_ssl_module" configure option into nginx binary compiled
with it, and vice versa (if a module doesn't use ssl-specific functions),
assuming both use the "--with-compat" option.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With this change it is now possible to load modules compiled without
the "--with-http_ssl_module" configure option into nginx binary compiled
with it, and vice versa (if a module doesn't use ssl-specific functions),
assuming both use the "--with-compat" option.
</pre>
</div>
</content>
</entry>
<entry>
<title>Modules compatibility: compatibility with NGX_HAVE_FILE_AIO.</title>
<updated>2016-10-10T15:44:17+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-10T15:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=844c78556bc93343dd1c3c9236b5c16f4e2eac39'/>
<id>844c78556bc93343dd1c3c9236b5c16f4e2eac39</id>
<content type='text'>
With this change it is now possible to load modules compiled without
the "--with-file-aio" configure option into nginx binary compiled with it,
and vice versa, assuming both use the "--with-compat" option.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With this change it is now possible to load modules compiled without
the "--with-file-aio" configure option into nginx binary compiled with it,
and vice versa, assuming both use the "--with-compat" option.
</pre>
</div>
</content>
</entry>
<entry>
<title>Modules compatibility: compatibility with NGX_THREADS.</title>
<updated>2016-10-10T15:44:17+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-10T15:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=9f6e8673f40f7532bf3059bda41e05b545520dd3'/>
<id>9f6e8673f40f7532bf3059bda41e05b545520dd3</id>
<content type='text'>
With this change it is now possible to load modules compiled without
the "--with-threads" configure option into nginx binary compiled with it,
and vice versa (if a module does not use thread-specific functions),
assuming both use the "--with-compat" option.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With this change it is now possible to load modules compiled without
the "--with-threads" configure option into nginx binary compiled with it,
and vice versa (if a module does not use thread-specific functions),
assuming both use the "--with-compat" option.
</pre>
</div>
</content>
</entry>
<entry>
<title>Allowed '-' in method names.</title>
<updated>2016-10-10T13:24:50+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-10T13:24:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=82ec8492717dcf141eead17fd158ff3f9e072e84'/>
<id>82ec8492717dcf141eead17fd158ff3f9e072e84</id>
<content type='text'>
It is used at least by SOAP (M-POST method, defined by RFC 2774) and
by WebDAV versioning (VERSION-CONTROL and BASELINE-CONTROL methods,
defined by RFC 3253).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is used at least by SOAP (M-POST method, defined by RFC 2774) and
by WebDAV versioning (VERSION-CONTROL and BASELINE-CONTROL methods,
defined by RFC 3253).
</pre>
</div>
</content>
</entry>
<entry>
<title>Realip: fixed duplicate processing on redirects (ticket #1098).</title>
<updated>2016-10-06T20:16:05+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-06T20:16:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=52892835ef16ea15a77e2407099e0de0dfcc8a28'/>
<id>52892835ef16ea15a77e2407099e0de0dfcc8a28</id>
<content type='text'>
Duplicate processing was possible if the address set by realip was
listed in set_realip_from, and there was an internal redirect so module
context was cleared.  This resulted in exactly the same address being set,
so this wasn't a problem before the $realip_remote_addr variable was
introduced, though now results in incorrect $realip_remote_addr being
picked.

Fix is to use ngx_http_realip_get_module_ctx() to look up module context
even if it was cleared.  Additionally, the order of checks was switched to
check the configuration first as it looks more effective.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Duplicate processing was possible if the address set by realip was
listed in set_realip_from, and there was an internal redirect so module
context was cleared.  This resulted in exactly the same address being set,
so this wasn't a problem before the $realip_remote_addr variable was
introduced, though now results in incorrect $realip_remote_addr being
picked.

Fix is to use ngx_http_realip_get_module_ctx() to look up module context
even if it was cleared.  Additionally, the order of checks was switched to
check the configuration first as it looks more effective.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache: cache manager limits.</title>
<updated>2016-10-05T11:22:30+00:00</updated>
<author>
<name>Dmitry Volyntsev</name>
<email>xeioex@nginx.com</email>
</author>
<published>2016-10-05T11:22:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=b072a6957c97ca7c33a64b1a34f7b66c6e209acf'/>
<id>b072a6957c97ca7c33a64b1a34f7b66c6e209acf</id>
<content type='text'>
The new parameters "manager_files", "manager_sleep"
and "manager_threshold" were added to proxy_cache_path
and friends.

Note that ngx_path_manager_pt was changed to return ngx_msec_t
instead of time_t (API change).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The new parameters "manager_files", "manager_sleep"
and "manager_threshold" were added to proxy_cache_path
and friends.

Note that ngx_path_manager_pt was changed to return ngx_msec_t
instead of time_t (API change).
</pre>
</div>
</content>
</entry>
<entry>
<title>Addition filter: set last_in_chain flag when clearing last_buf.</title>
<updated>2016-10-03T18:03:27+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2016-10-03T18:03:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=967ebbec321b1daa6632ab843b2dd2346a9fa8d0'/>
<id>967ebbec321b1daa6632ab843b2dd2346a9fa8d0</id>
<content type='text'>
When the last_buf flag is cleared for add_after_body to append more data from a
subrequest, other filters may still have buffered data, which should be flushed
at this point.  For example, the sub_filter may have a partial match buffered,
which will only be flushed after the subrequest is done, ending up with
interleaved data in output.

Setting last_in_chain instead of last_buf flushes the data and fixes the order
of output buffers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the last_buf flag is cleared for add_after_body to append more data from a
subrequest, other filters may still have buffered data, which should be flushed
at this point.  For example, the sub_filter may have a partial match buffered,
which will only be flushed after the subrequest is done, ending up with
interleaved data in output.

Setting last_in_chain instead of last_buf flushes the data and fixes the order
of output buffers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Do not set last_buf flag in subrequests.</title>
<updated>2016-10-03T17:48:51+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2016-10-03T17:48:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=f3bbd1c87f0bc97367603c3254c1465d3c622d1f'/>
<id>f3bbd1c87f0bc97367603c3254c1465d3c622d1f</id>
<content type='text'>
The last_buf flag should only be set in the last buffer of the main request.
Otherwise, several last_buf flags can appear in output.  This can, for example,
break the chunked filter, which will include several final chunks in output.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The last_buf flag should only be set in the last buffer of the main request.
Otherwise, several last_buf flags can appear in output.  This can, for example,
break the chunked filter, which will include several final chunks in output.
</pre>
</div>
</content>
</entry>
<entry>
<title>Modules compatibility: removed two NGX_HAVE_DEFERRED_ACCEPT checks.</title>
<updated>2016-10-03T12:58:30+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2016-10-03T12:58:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2e12afb955a211f55bfdcb3f3d92fc1b42d9dc99'/>
<id>2e12afb955a211f55bfdcb3f3d92fc1b42d9dc99</id>
<content type='text'>
Removed (NGX_HAVE_DEFERRED_ACCEPT &amp;&amp; defined TCP_DEFER_ACCEPT)
from the signature accordingly.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Removed (NGX_HAVE_DEFERRED_ACCEPT &amp;&amp; defined TCP_DEFER_ACCEPT)
from the signature accordingly.
</pre>
</div>
</content>
</entry>
<entry>
<title>Modules compatibility: removed unneeded NGX_HAVE_REUSEPORT checks.</title>
<updated>2016-10-03T12:58:29+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-10-03T12:58:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=58b85017a4063916b010de75e7c153576cf660ea'/>
<id>58b85017a4063916b010de75e7c153576cf660ea</id>
<content type='text'>
Removed NGX_HAVE_REUSEPORT from the signature accordingly.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Removed NGX_HAVE_REUSEPORT from the signature accordingly.
</pre>
</div>
</content>
</entry>
</feed>
