<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/auto/unix, branch release-1.10.2</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Compatibility with FreeBSD 2.2.9.</title>
<updated>2016-04-01T13:38:31+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-04-01T13:38:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5fd9cfa376692e1274283e1a421b41e130183104'/>
<id>5fd9cfa376692e1274283e1a421b41e130183104</id>
<content type='text'>
Added (RTLD_NOW | RTLD_GLOBAL) to dlopen() test.  There is no RTLD_GLOBAL
on FreeBSD 2.2.9.

Added uint32_t test, with fallback to u_int32_t, similar to uint64_t one.
Added fallback to u_int32_t in in_addr_t test.

With these changes it is now possible to compile nginx on FreeBSD 2.2.9
with only few minor warnings (assuming -Wno-error).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added (RTLD_NOW | RTLD_GLOBAL) to dlopen() test.  There is no RTLD_GLOBAL
on FreeBSD 2.2.9.

Added uint32_t test, with fallback to u_int32_t, similar to uint64_t one.
Added fallback to u_int32_t in in_addr_t test.

With these changes it is now possible to compile nginx on FreeBSD 2.2.9
with only few minor warnings (assuming -Wno-error).
</pre>
</div>
</content>
</entry>
<entry>
<title>Stream: UDP proxy.</title>
<updated>2016-01-20T16:52:12+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2016-01-20T16:52:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2ce791f2cddff967fd3bcbbedcd4ea283a9c77e1'/>
<id>2ce791f2cddff967fd3bcbbedcd4ea283a9c77e1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Configure: fixed static nginx build with OpenSSL (ticket #903).</title>
<updated>2016-02-18T08:39:57+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2016-02-18T08:39:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=6fccc00aa8afc95827a828641ec0dc72b72502ee'/>
<id>6fccc00aa8afc95827a828641ec0dc72b72502ee</id>
<content type='text'>
Before 7142b04337d6, it was possible to build the OpenSSL library
along with nginx, and link nginx statically with this library
(--with-openssl=DIR --with-ld-opt=-static --with-http_ssl_module).
This was broken on Linux by not adding -ldl after -lcrypto.

The fix also makes it possible to link nginx statically on Linux
with the system OpenSSL library, which never worked before.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before 7142b04337d6, it was possible to build the OpenSSL library
along with nginx, and link nginx statically with this library
(--with-openssl=DIR --with-ld-opt=-static --with-http_ssl_module).
This was broken on Linux by not adding -ldl after -lcrypto.

The fix also makes it possible to link nginx statically on Linux
with the system OpenSSL library, which never worked before.
</pre>
</div>
</content>
</entry>
<entry>
<title>Dynamic modules: added dlsym() to configure test.</title>
<updated>2016-02-05T18:48:25+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2016-02-05T18:48:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c2a00bacac483960a240b0eaa4bd07cffa91656c'/>
<id>c2a00bacac483960a240b0eaa4bd07cffa91656c</id>
<content type='text'>
It appears that AddressSanitizer in GCC 5 intercepts dlopen() and dlclose()
but not dlsym().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It appears that AddressSanitizer in GCC 5 intercepts dlopen() and dlclose()
but not dlsym().
</pre>
</div>
</content>
</entry>
<entry>
<title>Dynamic modules: dlopen() support.</title>
<updated>2016-02-04T15:30:21+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2016-02-04T15:30:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=86cc342a26af3aa677d9770dc6a9bcdbd07f5a9e'/>
<id>86cc342a26af3aa677d9770dc6a9bcdbd07f5a9e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Used the pwritev() syscall for writing files where possible.</title>
<updated>2015-11-17T16:01:41+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2015-11-17T16:01:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=d862ae8e6854501c6692e84bd5708150f2a1d9a1'/>
<id>d862ae8e6854501c6692e84bd5708150f2a1d9a1</id>
<content type='text'>
It is more effective, because it doesn't require a separate lseek().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is more effective, because it doesn't require a separate lseek().
</pre>
</div>
</content>
</entry>
<entry>
<title>Configure: fix tests with multi-level relative build directory.</title>
<updated>2015-06-17T11:15:27+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-06-17T11:15:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=72c3706bc52d1aabcc102656c67fb444187c37e2'/>
<id>72c3706bc52d1aabcc102656c67fb444187c37e2</id>
<content type='text'>
Based on a patch by Piotr Sikora.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Based on a patch by Piotr Sikora.
</pre>
</div>
</content>
</entry>
<entry>
<title>The "reuseport" option of the "listen" directive.</title>
<updated>2015-05-20T12:51:56+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-05-20T12:51:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=f7f1607bf2b8b7c45834b66cb45f6445bee65587'/>
<id>f7f1607bf2b8b7c45834b66cb45f6445bee65587</id>
<content type='text'>
When configured, an individual listen socket on a given address is
created for each worker process.  This allows to reduce in-kernel lock
contention on configurations with high accept rates, resulting in better
performance.  As of now it works on Linux and DragonFly BSD.

Note that on Linux incoming connection requests are currently tied up
to a specific listen socket, and if some sockets are closed, connection
requests will be reset, see https://lwn.net/Articles/542629/.  With
nginx, this may happen if the number of worker processes is reduced.
There is no such problem on DragonFly BSD.

Based on previous work by Sepherosa Ziehau and Yingqi Lu.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When configured, an individual listen socket on a given address is
created for each worker process.  This allows to reduce in-kernel lock
contention on configurations with high accept rates, resulting in better
performance.  As of now it works on Linux and DragonFly BSD.

Note that on Linux incoming connection requests are currently tied up
to a specific listen socket, and if some sockets are closed, connection
requests will be reset, see https://lwn.net/Articles/542629/.  With
nginx, this may happen if the number of worker processes is reduced.
There is no such problem on DragonFly BSD.

Based on previous work by Sepherosa Ziehau and Yingqi Lu.
</pre>
</div>
</content>
</entry>
<entry>
<title>Configure: style.</title>
<updated>2015-05-20T12:51:13+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-05-20T12:51:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=e58321a4cae2642b0ce8af11a22b606652cd4b50'/>
<id>e58321a4cae2642b0ce8af11a22b606652cd4b50</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Events: implemented epoll notification mechanism.</title>
<updated>2015-03-14T14:37:13+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2015-03-14T14:37:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=e10e7a4831cfaf6a41824da7c35819fc7f58f8ee'/>
<id>e10e7a4831cfaf6a41824da7c35819fc7f58f8ee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
