<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/mail, branch release-1.17.0</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Multiple addresses in "listen".</title>
<updated>2019-03-15T12:45:56+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2019-03-15T12:45:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=4e17b93eb6787e99a4023f20f8c391284f86bbf3'/>
<id>4e17b93eb6787e99a4023f20f8c391284f86bbf3</id>
<content type='text'>
Previously only one address was used by the listen directive handler even if
host name resolved to multiple addresses.  Now a separate listening socket is
created for each address.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously only one address was used by the listen directive handler even if
host name resolved to multiple addresses.  Now a separate listening socket is
created for each address.
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: fixed potential leak on memory allocation errors.</title>
<updated>2019-03-03T13:48:39+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2019-03-03T13:48:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=fe43346dc3151e80dae0acd751f0a94314dcb91c'/>
<id>fe43346dc3151e80dae0acd751f0a94314dcb91c</id>
<content type='text'>
If ngx_pool_cleanup_add() fails, we have to clean just created SSL context
manually, thus appropriate call added.

Additionally, ngx_pool_cleanup_add() moved closer to ngx_ssl_create() in
the ngx_http_ssl_module, to make sure there are no leaks due to intermediate
code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If ngx_pool_cleanup_add() fails, we have to clean just created SSL context
manually, thus appropriate call added.

Additionally, ngx_pool_cleanup_add() moved closer to ngx_ssl_create() in
the ngx_http_ssl_module, to make sure there are no leaks due to intermediate
code.
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: adjusted session id context with dynamic certificates.</title>
<updated>2019-02-25T13:42:54+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2019-02-25T13:42:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ecfab06cb20959219c9aadc2ef59507488e4fa99'/>
<id>ecfab06cb20959219c9aadc2ef59507488e4fa99</id>
<content type='text'>
Dynamic certificates re-introduce problem with incorrect session
reuse (AKA "virtual host confusion", CVE-2014-3616), since there are
no server certificates to generate session id context from.

To prevent this, session id context is now generated from ssl_certificate
directives as specified in the configuration.  This approach prevents
incorrect session reuse in most cases, while still allowing sharing
sessions across multiple machines with ssl_session_ticket_key set as
long as configurations are identical.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Dynamic certificates re-introduce problem with incorrect session
reuse (AKA "virtual host confusion", CVE-2014-3616), since there are
no server certificates to generate session id context from.

To prevent this, session id context is now generated from ssl_certificate
directives as specified in the configuration.  This approach prevents
incorrect session reuse in most cases, while still allowing sharing
sessions across multiple machines with ssl_session_ticket_key set as
long as configurations are identical.
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: deprecated the "ssl" directive.</title>
<updated>2018-04-25T11:57:24+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2018-04-25T11:57:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=658a84f4252b65ef060b1d33b2ff0e749902978b'/>
<id>658a84f4252b65ef060b1d33b2ff0e749902978b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: detect "listen ... ssl" without certificates (ticket #178).</title>
<updated>2018-04-24T12:29:01+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2018-04-24T12:29:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=76be1ea9de13c5e8bb0d9523c6a2ad4009a5d7cf'/>
<id>76be1ea9de13c5e8bb0d9523c6a2ad4009a5d7cf</id>
<content type='text'>
In mail and stream modules, no certificate provided is a fatal condition,
much like with the "ssl" and "starttls" directives.

In http, "listen ... ssl" can be used in a non-default server without
certificates as long as there is a certificate in the default one, so
missing certificate is only fatal for default servers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In mail and stream modules, no certificate provided is a fatal condition,
much like with the "ssl" and "starttls" directives.

In http, "listen ... ssl" can be used in a non-default server without
certificates as long as there is a certificate in the default one, so
missing certificate is only fatal for default servers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Mail: fixed error message about missing ssl_certificate_key.</title>
<updated>2018-04-24T12:28:58+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2018-04-24T12:28:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5d3a854ebd4f59854ade798b94070ff1ee3eddcf'/>
<id>5d3a854ebd4f59854ade798b94070ff1ee3eddcf</id>
<content type='text'>
In 51e1f047d15d, the "ssl" directive name was incorrectly hardcoded
in the error message shown when there are some SSL keys defined, but
not for all certificates.  Right approach is to use the "mode" variable,
which can be either "ssl" or "starttls".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In 51e1f047d15d, the "ssl" directive name was incorrectly hardcoded
in the error message shown when there are some SSL keys defined, but
not for all certificates.  Right approach is to use the "mode" variable,
which can be either "ssl" or "starttls".
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: using default server context in session remove (closes #1464).</title>
<updated>2018-01-30T14:46:31+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2018-01-30T14:46:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=57dde2ab37708423d97333be19830437732b3f4f'/>
<id>57dde2ab37708423d97333be19830437732b3f4f</id>
<content type='text'>
This fixes segfault in configurations with multiple virtual servers sharing
the same port, where a non-default virtual server block misses certificate.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes segfault in configurations with multiple virtual servers sharing
the same port, where a non-default virtual server block misses certificate.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed worker_shutdown_timeout in various cases.</title>
<updated>2017-11-20T13:31:07+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-11-20T13:31:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=b32cb6b61079d2eff69c89e0e718a79258507717'/>
<id>b32cb6b61079d2eff69c89e0e718a79258507717</id>
<content type='text'>
The ngx_http_upstream_process_upgraded() did not handle c-&gt;close request,
and upgraded connections do not use the write filter.  As a result,
worker_shutdown_timeout did not affect upgraded connections (ticket #1419).
Fix is to handle c-&gt;close in the ngx_http_request_handler() function, thus
covering most of the possible cases in http handling.

Additionally, mail proxying did not handle neither c-&gt;close nor c-&gt;error,
and thus worker_shutdown_timeout did not work for mail connections.  Fix is
to add c-&gt;close handling to ngx_mail_proxy_handler().

Also, added explicit handling of c-&gt;close to stream proxy,
ngx_stream_proxy_process_connection().  This improves worker_shutdown_timeout
handling in stream, it will no longer wait for some data being transferred
in a connection before closing it, and will also provide appropriate
logging at the "info" level.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ngx_http_upstream_process_upgraded() did not handle c-&gt;close request,
and upgraded connections do not use the write filter.  As a result,
worker_shutdown_timeout did not affect upgraded connections (ticket #1419).
Fix is to handle c-&gt;close in the ngx_http_request_handler() function, thus
covering most of the possible cases in http handling.

Additionally, mail proxying did not handle neither c-&gt;close nor c-&gt;error,
and thus worker_shutdown_timeout did not work for mail connections.  Fix is
to add c-&gt;close handling to ngx_mail_proxy_handler().

Also, added explicit handling of c-&gt;close to stream proxy,
ngx_stream_proxy_process_connection().  This improves worker_shutdown_timeout
handling in stream, it will no longer wait for some data being transferred
in a connection before closing it, and will also provide appropriate
logging at the "info" level.
</pre>
</div>
</content>
</entry>
<entry>
<title>Style: changed checks of ngx_ssl_create_connection() to != NGX_OK.</title>
<updated>2017-05-29T13:34:35+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2017-05-29T13:34:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=0514e14a8bbd8e5977712c892b53aa471a91fcb5'/>
<id>0514e14a8bbd8e5977712c892b53aa471a91fcb5</id>
<content type='text'>
In http these checks were changed in a6d6d762c554, though mail module
was missed at that time.  Since then, the stream module was introduced
based on mail, using "== NGX_ERROR" check.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In http these checks were changed in a6d6d762c554, though mail module
was missed at that time.  Since then, the stream module was introduced
based on mail, using "== NGX_ERROR" check.
</pre>
</div>
</content>
</entry>
<entry>
<title>SSL: added support for TLSv1.3 in ssl_protocols directive.</title>
<updated>2017-04-18T12:12:38+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2017-04-18T12:12:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=9a37eb3a62130473596e0e4c2e388d80bdb14956'/>
<id>9a37eb3a62130473596e0e4c2e388d80bdb14956</id>
<content type='text'>
Support for the TLSv1.3 protocol will be introduced in OpenSSL 1.1.1.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Support for the TLSv1.3 protocol will be introduced in OpenSSL 1.1.1.
</pre>
</div>
</content>
</entry>
</feed>
