<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src, branch release-1.11.11</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Fixed a comment.</title>
<updated>2017-03-17T09:09:31+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2017-03-17T09:09:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=05f5a7325d939ade37daf1e2d4b34f4e83d49aff'/>
<id>05f5a7325d939ade37daf1e2d4b34f4e83d49aff</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Added missing "static" specifier found by gcc -Wtraditional.</title>
<updated>2017-03-16T16:01:05+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2017-03-16T16:01:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=b1682ecae4ccf3eef377271ae44c04490c5213eb'/>
<id>b1682ecae4ccf3eef377271ae44c04490c5213eb</id>
<content type='text'>
This has somehow escaped from fbdaad9b0e7b.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This has somehow escaped from fbdaad9b0e7b.
</pre>
</div>
</content>
</entry>
<entry>
<title>Style.</title>
<updated>2017-03-07T15:51:17+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:51:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c265b11770b3254a12f7c43792ade710cc35f18a'/>
<id>c265b11770b3254a12f7c43792ade710cc35f18a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduced worker_shutdown_timeout.</title>
<updated>2017-03-07T15:51:16+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=12b9974d510d38574c6cfb28ee3e87540230c56e'/>
<id>12b9974d510d38574c6cfb28ee3e87540230c56e</id>
<content type='text'>
The directive configures a timeout to be used when gracefully shutting down
worker processes.  When the timer expires, nginx will try to close all
the connections currently open to facilitate shutdown.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The directive configures a timeout to be used when gracefully shutting down
worker processes.  When the timer expires, nginx will try to close all
the connections currently open to facilitate shutdown.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cancelable timers are now preserved if there are other timers.</title>
<updated>2017-03-07T15:51:15+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:51:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=1a58418ae76a96c830a0536432e96a9ad051bc58'/>
<id>1a58418ae76a96c830a0536432e96a9ad051bc58</id>
<content type='text'>
There is no need to cancel timers early if there are other timers blocking
shutdown anyway.  Preserving such timers allows nginx to continue some
periodic work till the shutdown is actually possible.

With the new approach, timers with ev-&gt;cancelable are simply ignored when
checking if there are any timers left during shutdown.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is no need to cancel timers early if there are other timers blocking
shutdown anyway.  Preserving such timers allows nginx to continue some
periodic work till the shutdown is actually possible.

With the new approach, timers with ev-&gt;cancelable are simply ignored when
checking if there are any timers left during shutdown.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: introduced ngx_rbtree_next().</title>
<updated>2017-03-07T15:51:13+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:51:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=0212c7fac1a63d33c9b0084ed75803713af8a230'/>
<id>0212c7fac1a63d33c9b0084ed75803713af8a230</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Access log: removed dead ev-&gt;timedout check in flush timer handler.</title>
<updated>2017-03-07T15:51:12+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:51:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c1d8318d3112a2752971d76fc15d1fca8557691d'/>
<id>c1d8318d3112a2752971d76fc15d1fca8557691d</id>
<content type='text'>
The ev-&gt;timedout flag is set on first timer expiration, and never reset
after it.  Due to this the code to stop the timer when the timer was
canceled never worked (except in a very specific time frame immediately
after start), and the timer was always armed again.  This essentially
resulted in a buffer flush at the end of an event loop iteration.

This behaviour actually seems to be better than just stopping the flush
timer for the whole shutdown, so it is preserved as is instead of fixing
the code to actually remove the timer.  It will be further improved by
upcoming changes to preserve cancelable timers if there are other timers
blocking shutdown.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ev-&gt;timedout flag is set on first timer expiration, and never reset
after it.  Due to this the code to stop the timer when the timer was
canceled never worked (except in a very specific time frame immediately
after start), and the timer was always armed again.  This essentially
resulted in a buffer flush at the end of an event loop iteration.

This behaviour actually seems to be better than just stopping the flush
timer for the whole shutdown, so it is preserved as is instead of fixing
the code to actually remove the timer.  It will be further improved by
upcoming changes to preserve cancelable timers if there are other timers
blocking shutdown.
</pre>
</div>
</content>
</entry>
<entry>
<title>Converted hc-&gt;busy/hc-&gt;free to use chain links.</title>
<updated>2017-03-07T15:49:31+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-03-07T15:49:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=fca26c2e53d46549320a3b23ce0398c5921348dd'/>
<id>fca26c2e53d46549320a3b23ce0398c5921348dd</id>
<content type='text'>
Most notably, this fixes possible buffer overflows if number of large
client header buffers in a virtual server is different from the one in
the default server.

Reported by Daniil Bondarev.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most notably, this fixes possible buffer overflows if number of large
client header buffers in a virtual server is different from the one in
the default server.

Reported by Daniil Bondarev.
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed casts not needed after 1f513d7f1b45.</title>
<updated>2017-03-07T08:47:58+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2017-03-07T08:47:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=422e0f8689e5cc08aa9023d4a67b6d9ce28a79e5'/>
<id>422e0f8689e5cc08aa9023d4a67b6d9ce28a79e5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Mail: don't emit separator in capability lists for APOP.</title>
<updated>2017-03-06T14:56:23+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2017-03-06T14:56:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=fbe9759e4b8d0a80863a4000a724111b0741a9ab'/>
<id>fbe9759e4b8d0a80863a4000a724111b0741a9ab</id>
<content type='text'>
Notably, this fixes CAPA and AUTH output.

The bug had appeared in nginx 1.11.6 (73b451d304c0).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Notably, this fixes CAPA and AUTH output.

The bug had appeared in nginx 1.11.6 (73b451d304c0).
</pre>
</div>
</content>
</entry>
</feed>
