<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/os, branch release-1.3.2</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Style.</title>
<updated>2012-06-25T18:09:38+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-06-25T18:09:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c6d5225e5b714be7983a9edcdd1c301b3b540663'/>
<id>c6d5225e5b714be7983a9edcdd1c301b3b540663</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed return type of ngx_strerror_init().</title>
<updated>2012-06-18T14:12:03+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-06-18T14:12:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=91c654debc86b584b0d33ff8b30513105c8e5283'/>
<id>91c654debc86b584b0d33ff8b30513105c8e5283</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed "sendmsg() failed" alerts on HP-UX.</title>
<updated>2012-06-18T14:11:29+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-06-18T14:11:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=97f7bf25c937f530b9184409c1f2bd8e4f3d2d99'/>
<id>97f7bf25c937f530b9184409c1f2bd8e4f3d2d99</id>
<content type='text'>
HP-UX needs _HPUX_ALT_XOPEN_SOCKET_API to be defined to be able to
use various POSIX versions of networking functions.  Notably sendmsg()
resulted in "sendmsg() failed (9: Bad file number)" alerts without it.

See xopen_networking(7) for more details.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HP-UX needs _HPUX_ALT_XOPEN_SOCKET_API to be defined to be able to
use various POSIX versions of networking functions.  Notably sendmsg()
resulted in "sendmsg() failed (9: Bad file number)" alerts without it.

See xopen_networking(7) for more details.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed segfault with poll and resolver used.</title>
<updated>2012-06-18T14:10:50+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-06-18T14:10:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=a769c530ff587705754469c01c41688a995a12ce'/>
<id>a769c530ff587705754469c01c41688a995a12ce</id>
<content type='text'>
Poll event method needs ngx_cycle-&gt;files to work, and use of ngx_exit_cycle
without files set caused null pointer dereference in resolver's cleanup
on udp socket close.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Poll event method needs ngx_cycle-&gt;files to work, and use of ngx_exit_cycle
without files set caused null pointer dereference in resolver's cleanup
on udp socket close.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: disallowed access to various non-canonical name variants.</title>
<updated>2012-06-05T13:36:09+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-06-05T13:36:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=db80a7adfc1636ef146006b652c1892d42847ccd'/>
<id>db80a7adfc1636ef146006b652c1892d42847ccd</id>
<content type='text'>
This includes trailings dots and spaces, NTFS streams (and short names, as
previously checked).  The checks are now also done in ngx_file_info(), thus
allowing to use the "try_files" directive to protect external scripts.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This includes trailings dots and spaces, NTFS streams (and short names, as
previously checked).  The checks are now also done in ngx_file_info(), thus
allowing to use the "try_files" directive to protect external scripts.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed compilation with -DNGX_DEBUG_MALLOC on FreeBSD 10.</title>
<updated>2012-05-23T15:07:01+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-05-23T15:07:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=e1133ca60e051c0fa9c7af3425b9d4b5c140f7d3'/>
<id>e1133ca60e051c0fa9c7af3425b9d4b5c140f7d3</id>
<content type='text'>
After jemalloc 3.0.0 import there is no _malloc_options symbol, it has
been replaced with the malloc_conf one with a different syntax.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After jemalloc 3.0.0 import there is no _malloc_options symbol, it has
been replaced with the malloc_conf one with a different syntax.
</pre>
</div>
</content>
</entry>
<entry>
<title>Accept moderation in case of EMFILE/ENFILE.</title>
<updated>2012-05-11T13:33:06+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-05-11T13:33:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=0e3b423dc6c6653d600f4bf1687f0653be04a830'/>
<id>0e3b423dc6c6653d600f4bf1687f0653be04a830</id>
<content type='text'>
In case of EMFILE/ENFILE returned from accept() we disable accept events,
and (in case of no accept mutex used) arm timer to re-enable them later.
With accept mutex we just drop it, and rely on normal accept mutex handling
to re-enable accept events once it's acquired again.

As we now handle errors in question, logging level was changed to "crit"
(instead of "alert" used for unknown errors).

Note: the code might call ngx_enable_accept_events() multiple times if
there are many listen sockets.  The ngx_enable_accept_events() function was
modified to check if connection is already active (via c-&gt;read-&gt;active) and
skip it then, thus making multiple calls safe.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In case of EMFILE/ENFILE returned from accept() we disable accept events,
and (in case of no accept mutex used) arm timer to re-enable them later.
With accept mutex we just drop it, and rely on normal accept mutex handling
to re-enable accept events once it's acquired again.

As we now handle errors in question, logging level was changed to "crit"
(instead of "alert" used for unknown errors).

Note: the code might call ngx_enable_accept_events() multiple times if
there are many listen sockets.  The ngx_enable_accept_events() function was
modified to check if connection is already active (via c-&gt;read-&gt;active) and
skip it then, thus making multiple calls safe.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed ngx_readv_chain() to honor IOV_MAX (ticket #14).</title>
<updated>2012-04-17T09:13:58+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-04-17T09:13:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=0abb0bce5f297546f8f982677707fb33dadb96d8'/>
<id>0abb0bce5f297546f8f982677707fb33dadb96d8</id>
<content type='text'>
Not using full chain passed is ok as consumers are expected to check
event's ready flag to determine if another call is needed, not the
returned size.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Not using full chain passed is ok as consumers are expected to check
event's ready flag to determine if another call is needed, not the
returned size.
</pre>
</div>
</content>
</entry>
<entry>
<title>IOV_MAX handling microoptimization.</title>
<updated>2012-04-17T09:13:15+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-04-17T09:13:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=578c02f3a1fda0ad43277af2af022c24f2e74104'/>
<id>578c02f3a1fda0ad43277af2af022c24f2e74104</id>
<content type='text'>
We now stop on IOV_MAX iovec entries only if we are going to add new one,
i.e. next buffer can't be coalesced into last iovec.

This also fixes incorrect checks for trailer creation on FreeBSD and
Mac OS X, header.nelts was checked instead of trailer.nelts.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We now stop on IOV_MAX iovec entries only if we are going to add new one,
i.e. next buffer can't be coalesced into last iovec.

This also fixes incorrect checks for trailer creation on FreeBSD and
Mac OS X, header.nelts was checked instead of trailer.nelts.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed loop in ngx_writev_chain() and ngx_solaris_sendfilev_chain().</title>
<updated>2012-04-17T09:10:50+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2012-04-17T09:10:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=96d73e291f77152d6494f7cb969ec0cd3bb74215'/>
<id>96d73e291f77152d6494f7cb969ec0cd3bb74215</id>
<content type='text'>
The "complete" flag wasn't cleared on loop iteration start, resulting in
broken behaviour if there were more than IOV_MAX buffers and first
iteration was fully completed (and hence the "complete" flag was set
to 1).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The "complete" flag wasn't cleared on loop iteration start, resulting in
broken behaviour if there were more than IOV_MAX buffers and first
iteration was fully completed (and hence the "complete" flag was set
to 1).
</pre>
</div>
</content>
</entry>
</feed>
