<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/http/modules/ngx_http_log_module.c, branch release-1.30.0</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Access log: support for disabling escaping (ticket #1450).</title>
<updated>2018-03-01T08:42:55+00:00</updated>
<author>
<name>Vladimir Homutov</name>
<email>vl@nginx.com</email>
</author>
<published>2018-03-01T08:42:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=764737256521de5c34f7ce1cc1b27bf440b6cced'/>
<id>764737256521de5c34f7ce1cc1b27bf440b6cced</id>
<content type='text'>
Based on patches by Johannes Baiter &lt;johannes.baiter@bsb-muenchen.de&gt;
and Calin Don.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Based on patches by Johannes Baiter &lt;johannes.baiter@bsb-muenchen.de&gt;
and Calin Don.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed ngx_open_cached_file() error handling.</title>
<updated>2017-03-28T11:21:38+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2017-03-28T11:21:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=9ad18e43ac2c9956399018cbb998337943988333'/>
<id>9ad18e43ac2c9956399018cbb998337943988333</id>
<content type='text'>
If of.err is 0, it means that there was a memory allocation error
and no further logging and/or processing is needed.  The of.failed
string can be only accessed if of.err is not 0.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If of.err is 0, it means that there was a memory allocation error
and no further logging and/or processing is needed.  The of.failed
string can be only accessed if of.err is not 0.
</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>Access log: support for json escaping.</title>
<updated>2016-12-15T13:25:42+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2016-12-15T13:25:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c40d8ddc5d907ebd90f85cf362f501d2cf3e05a2'/>
<id>c40d8ddc5d907ebd90f85cf362f501d2cf3e05a2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid left-shifting integers into the sign bit, which is undefined.</title>
<updated>2016-07-07T18:02:28+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2016-07-07T18:02:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=6299f5e9149483251bbbcc8ad26cf29b6109e75c'/>
<id>6299f5e9149483251bbbcc8ad26cf29b6109e75c</id>
<content type='text'>
Found with UndefinedBehaviorSanitizer.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Found with UndefinedBehaviorSanitizer.
</pre>
</div>
</content>
</entry>
<entry>
<title>Access log: restricted "log_format" to "http" level.</title>
<updated>2014-12-01T11:51:36+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2014-12-01T11:51:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=778cc4b42ea85e19a8ebf6c1a42fc636e48ec309'/>
<id>778cc4b42ea85e19a8ebf6c1a42fc636e48ec309</id>
<content type='text'>
Specifying the "log_format" directive on levels other than "http"
is deprecated since 73d37e1ccb91 (1.1.11).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Specifying the "log_format" directive on levels other than "http"
is deprecated since 73d37e1ccb91 (1.1.11).
</pre>
</div>
</content>
</entry>
<entry>
<title>Access log: cancel the flush timer on graceful shutdown.</title>
<updated>2014-08-25T09:41:31+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-08-25T09:41:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=f9b99baed366b855cef24f3443be6337583ac0f3'/>
<id>f9b99baed366b855cef24f3443be6337583ac0f3</id>
<content type='text'>
Previously, it could prevent a worker process from exiting
for up to the configured flush timeout.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, it could prevent a worker process from exiting
for up to the configured flush timeout.
</pre>
</div>
</content>
</entry>
<entry>
<title>Access log: fixed the "if=" parameter with buffering (ticket #625).</title>
<updated>2014-09-13T17:47:13+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-09-13T17:47:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=152d92b4b76303d7b2d64e76cadf6d466df48f7f'/>
<id>152d92b4b76303d7b2d64e76cadf6d466df48f7f</id>
<content type='text'>
It might not work if there were more than one "access_log" directives
pointed to the same file and duplicate buffer parameters.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It might not work if there were more than one "access_log" directives
pointed to the same file and duplicate buffer parameters.
</pre>
</div>
</content>
</entry>
<entry>
<title>Access log: allowed logs to syslog with "if=" (ticket #596).</title>
<updated>2014-08-05T20:22:36+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-08-05T20:22:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=8f0f4c10e91a82e6f636d792c14cc608c06ca37d'/>
<id>8f0f4c10e91a82e6f636d792c14cc608c06ca37d</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: fix default value, broken by cb308813b453.</title>
<updated>2014-06-03T17:53:48+00:00</updated>
<author>
<name>Piotr Sikora</name>
<email>piotr@cloudflare.com</email>
</author>
<published>2014-06-03T17:53:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=a1a8defb4956ce5416ff633c47da2dc4d473fac0'/>
<id>a1a8defb4956ce5416ff633c47da2dc4d473fac0</id>
<content type='text'>
log-&gt;filter ("if" parameter) was uninitialized when the default value
was being used, which would lead to a crash (SIGSEGV) when access_log
directive wasn't specified in the configuration.

Zero-fill the whole structure instead of zeroing fields one-by-one
in order to prevent similar issues in the future.

Signed-off-by: Piotr Sikora &lt;piotr@cloudflare.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
log-&gt;filter ("if" parameter) was uninitialized when the default value
was being used, which would lead to a crash (SIGSEGV) when access_log
directive wasn't specified in the configuration.

Zero-fill the whole structure instead of zeroing fields one-by-one
in order to prevent similar issues in the future.

Signed-off-by: Piotr Sikora &lt;piotr@cloudflare.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
