<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/http, branch release-1.5.2</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Fixed ngx_http_parse_chunked() minimal length calculation.</title>
<updated>2013-06-28T09:55:05+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2013-06-28T09:55:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=88fc0f793e6ba4a7ece20f43fcd4357df1231f00'/>
<id>88fc0f793e6ba4a7ece20f43fcd4357df1231f00</id>
<content type='text'>
Minimal data length we expect for further calls was calculated incorrectly
if parsing stopped right after parsing chunk size.  This might in theory
affect clients and/or backends using LF instead of CRLF.

Patch by Dmitry Popov.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Minimal data length we expect for further calls was calculated incorrectly
if parsing stopped right after parsing chunk size.  This might in theory
affect clients and/or backends using LF instead of CRLF.

Patch by Dmitry Popov.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: support several "error_log" directives.</title>
<updated>2013-06-20T16:47:39+00:00</updated>
<author>
<name>Vladimir Homutov</name>
<email>vl@nginx.com</email>
</author>
<published>2013-06-20T16:47:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=11ff177a9fe3129cd1c8b23e1850bfbc3e2c6ae1'/>
<id>11ff177a9fe3129cd1c8b23e1850bfbc3e2c6ae1</id>
<content type='text'>
When several "error_log" directives are specified in the same configuration
block, logs are written to all files with a matching log level.

All logs are stored in the singly-linked list that is sorted by log level in
the descending order.

Specific debug levels (NGX_LOG_DEBUG_HTTP,EVENT, etc.) are not supported
if several "error_log" directives are specified.  In this case all logs
will use debug level that has largest absolute value.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When several "error_log" directives are specified in the same configuration
block, logs are written to all files with a matching log level.

All logs are stored in the singly-linked list that is sorted by log level in
the descending order.

Specific debug levels (NGX_LOG_DEBUG_HTTP,EVENT, etc.) are not supported
if several "error_log" directives are specified.  In this case all logs
will use debug level that has largest absolute value.
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: fixed code style, no functional changes.</title>
<updated>2013-06-13T12:28:42+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2013-06-13T12:28:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=420e41ef0972a4c8f91f8200fff04fbc4aee0a4b'/>
<id>420e41ef0972a4c8f91f8200fff04fbc4aee0a4b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: pass through the full status when available.</title>
<updated>2013-06-07T20:16:00+00:00</updated>
<author>
<name>Jim Radford</name>
<email>radford@galvanix.com</email>
</author>
<published>2013-06-07T20:16:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=de2ec2c65099b18f02020107fc97b5c639ed5aec'/>
<id>de2ec2c65099b18f02020107fc97b5c639ed5aec</id>
<content type='text'>
Avoid stripping the status text when proxying for compatibility with http.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoid stripping the status text when proxying for compatibility with http.
</pre>
</div>
</content>
</entry>
<entry>
<title>Perl: fixed r-&gt;header_in("Cookie") (ticket #351).</title>
<updated>2013-06-10T10:35:00+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2013-06-10T10:35:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ddece08218b4fceaf86afb6a721ed8cd4a6411fe'/>
<id>ddece08218b4fceaf86afb6a721ed8cd4a6411fe</id>
<content type='text'>
It was broken by X-Forwarded-For related changes in f7fe817c92a2 (1.3.14)
as hh-&gt;offset is no longer 0 for Cookie.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It was broken by X-Forwarded-For related changes in f7fe817c92a2 (1.3.14)
as hh-&gt;offset is no longer 0 for Cookie.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed debug logging in ngx_http_parse_complex_uri().</title>
<updated>2013-06-05T15:45:08+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2013-06-05T15:45:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=dc5c6928fb0d45a80947b2a294f77a432985747a'/>
<id>dc5c6928fb0d45a80947b2a294f77a432985747a</id>
<content type='text'>
The *u previously logged isn't yet initialized at this point, and
Valgrind complains.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The *u previously logged isn't yet initialized at this point, and
Valgrind complains.
</pre>
</div>
</content>
</entry>
<entry>
<title>Valgrind: supressed complaints about uninitialized bytes.</title>
<updated>2013-06-05T15:44:22+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2013-06-05T15:44:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=40c4e7b73cf35f26125f7d2bb205e91274832ffc'/>
<id>40c4e7b73cf35f26125f7d2bb205e91274832ffc</id>
<content type='text'>
Valgrind complains if we pass uninitialized memory to a syscall:

==36492== Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
==36492==    at 0x6B5E6A: sendmsg (in /usr/lib/system/libsystem_kernel.dylib)
==36492==    by 0x10004288E: ngx_signal_worker_processes (ngx_process_cycle.c:527)
==36492==    by 0x1000417A7: ngx_master_process_cycle (ngx_process_cycle.c:203)
==36492==    by 0x100001F10: main (nginx.c:410)
==36492==  Address 0x7fff5fbff71c is on thread 1's stack

Even initialization of all members of the structure passed isn't enough, as
there is padding which still remains uninitialized and results in Valgrind
complaint.  Note there is no real problem here as data from uninitialized
memory isn't used.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Valgrind complains if we pass uninitialized memory to a syscall:

==36492== Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
==36492==    at 0x6B5E6A: sendmsg (in /usr/lib/system/libsystem_kernel.dylib)
==36492==    by 0x10004288E: ngx_signal_worker_processes (ngx_process_cycle.c:527)
==36492==    by 0x1000417A7: ngx_master_process_cycle (ngx_process_cycle.c:203)
==36492==    by 0x100001F10: main (nginx.c:410)
==36492==  Address 0x7fff5fbff71c is on thread 1's stack

Even initialization of all members of the structure passed isn't enough, as
there is padding which still remains uninitialized and results in Valgrind
complaint.  Note there is no real problem here as data from uninitialized
memory isn't used.
</pre>
</div>
</content>
</entry>
<entry>
<title>Status: the "last_in_chain" flag must be set.</title>
<updated>2013-06-05T12:22:40+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2013-06-05T12:22:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=f6650479c30d26b82187bfe0a343a4c92eb9a81a'/>
<id>f6650479c30d26b82187bfe0a343a4c92eb9a81a</id>
<content type='text'>
The module always produces only one and obviously the last buffer in chain.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The module always produces only one and obviously the last buffer in chain.
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: use proper macros for value length and headers counter.</title>
<updated>2013-06-04T22:13:52+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2013-06-04T22:13:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ba4b4991d18aef821086488e0b93a23df8b26039'/>
<id>ba4b4991d18aef821086488e0b93a23df8b26039</id>
<content type='text'>
Currently these macros are synonyms, but this may change in the future
(in particular, spdy/3 uses 4 bytes for lengths).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently these macros are synonyms, but this may change in the future
(in particular, spdy/3 uses 4 bytes for lengths).
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: fixed handling of "stderr" in error_log.</title>
<updated>2013-06-04T07:27:36+00:00</updated>
<author>
<name>Vladimir Homutov</name>
<email>vl@nginx.com</email>
</author>
<published>2013-06-04T07:27:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=26489b16e5abc76eb1b72e37651d01a1e1a657cb'/>
<id>26489b16e5abc76eb1b72e37651d01a1e1a657cb</id>
<content type='text'>
If "stderr" was specified in one of the "error_log" directives,
stderr is not redirected to the first error_log on startup,
configuration reload, and reopening log files.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If "stderr" was specified in one of the "error_log" directives,
stderr is not redirected to the first error_log on startup,
configuration reload, and reopening log files.
</pre>
</div>
</content>
</entry>
</feed>
