<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src, branch release-1.6.3</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Overflow detection in ngx_http_parse_chunked().</title>
<updated>2015-03-16T21:26:27+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=405b7f34297989a8790943797ca61a68baacc206'/>
<id>405b7f34297989a8790943797ca61a68baacc206</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Overflow detection in ngx_http_range_parse().</title>
<updated>2015-03-16T21:26:24+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=dabbd1f6a63778269ae3e007fa905daa009f1d0e'/>
<id>dabbd1f6a63778269ae3e007fa905daa009f1d0e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Overflow detection in ngx_inet_addr().</title>
<updated>2015-03-16T21:26:22+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=166a3a13a497c7218d052a7fae4a9a5456268575'/>
<id>166a3a13a497c7218d052a7fae4a9a5456268575</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: overflow detection in ngx_parse_time() (ticket #732).</title>
<updated>2015-03-16T21:26:20+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=7523e71888d3f2b62e4752c8b7df7c554ae679f6'/>
<id>7523e71888d3f2b62e4752c8b7df7c554ae679f6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Refactored ngx_parse_time().</title>
<updated>2015-03-16T21:26:18+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ea13aadd303ed8afa404e1aff0b2f33aad79c1a8'/>
<id>ea13aadd303ed8afa404e1aff0b2f33aad79c1a8</id>
<content type='text'>
No functional changes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No functional changes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: overflow detection in number parsing functions.</title>
<updated>2015-03-16T21:26:15+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:26:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=d5d9d7092087a434c75dc034148bd3b5d862da84'/>
<id>d5d9d7092087a434c75dc034148bd3b5d862da84</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: expose maximum values of time_t and ngx_int_t.</title>
<updated>2015-03-16T21:24:34+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-03-16T21:24:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=44a2b97bd2773dc679ebce32eaf3c6f4f665f36c'/>
<id>44a2b97bd2773dc679ebce32eaf3c6f4f665f36c</id>
<content type='text'>
These are needed to detect overflows.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These are needed to detect overflows.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: fixed potential buffer overrun when initializing hash.</title>
<updated>2015-02-24T15:37:14+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-02-24T15:37:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=0071fbb9e6685b76a4865f460cb674020dfdf8ec'/>
<id>0071fbb9e6685b76a4865f460cb674020dfdf8ec</id>
<content type='text'>
Initial size as calculated from the number of elements may be bigger
than max_size.  If this happens, make sure to set size to max_size.

Reported by Chris West.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Initial size as calculated from the number of elements may be bigger
than max_size.  If this happens, make sure to set size to max_size.

Reported by Chris West.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: fixed a race resulting in extra sem_post()'s.</title>
<updated>2015-02-04T13:22:43+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2015-02-04T13:22:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=06d72320ff5d5cd717b576920bc27c3e26329774'/>
<id>06d72320ff5d5cd717b576920bc27c3e26329774</id>
<content type='text'>
The mtx-&gt;wait counter was not decremented if we were able to obtain the lock
right after incrementing it.  This resulted in unneeded sem_post() calls,
eventually leading to EOVERFLOW errors being logged, "sem_post() failed
while wake shmtx (75: Value too large for defined data type)".

To close the race, mtx-&gt;wait is now decremented if we obtain the lock right
after incrementing it in ngx_shmtx_lock().  The result can become -1 if a
concurrent ngx_shmtx_unlock() decrements mtx-&gt;wait before the added code does.
However, that only leads to one extra iteration in the next call of
ngx_shmtx_lock().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The mtx-&gt;wait counter was not decremented if we were able to obtain the lock
right after incrementing it.  This resulted in unneeded sem_post() calls,
eventually leading to EOVERFLOW errors being logged, "sem_post() failed
while wake shmtx (75: Value too large for defined data type)".

To close the race, mtx-&gt;wait is now decremented if we obtain the lock right
after incrementing it in ngx_shmtx_lock().  The result can become -1 if a
concurrent ngx_shmtx_unlock() decrements mtx-&gt;wait before the added code does.
However, that only leads to one extra iteration in the next call of
ngx_shmtx_lock().
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed post_action to not trigger "header already sent" alert.</title>
<updated>2014-11-28T13:57:50+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-11-28T13:57:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=cb451bd6a46dd4b3053bc4ec2f667d4970c41665'/>
<id>cb451bd6a46dd4b3053bc4ec2f667d4970c41665</id>
<content type='text'>
The alert was introduced in 03ff14058272 (1.5.4), and was triggered on each
post_action invocation.

There is no real need to call header filters in case of post_action,
so return NGX_OK from ngx_http_send_header() if r-&gt;post_action is set.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The alert was introduced in 03ff14058272 (1.5.4), and was triggered on each
post_action invocation.

There is no real need to call header filters in case of post_action,
so return NGX_OK from ngx_http_send_header() if r-&gt;post_action is set.
</pre>
</div>
</content>
</entry>
</feed>
