<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/ssl, branch OTP-21.1.3</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Prepare release</title>
<updated>2018-10-12T15:12:09+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2018-10-12T15:12:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=218f84f6b7cca496d3100fcb3ba1b3f7fa2fc1ac'/>
<id>218f84f6b7cca496d3100fcb3ba1b3f7fa2fc1ac</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: TLS sender process needs to get updates of the socket option packet</title>
<updated>2018-10-11T09:38:48+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2018-10-09T13:52:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=ac75d4152fca80ecfd19ebfdf735127b6df35ab6'/>
<id>ac75d4152fca80ecfd19ebfdf735127b6df35ab6</id>
<content type='text'>
If the socket option is set to {packet, 1|2|3|4}  sender process needs to
add a packet length header. If packet is changed with ssl:setopts/2 this needs
to be communicated to tls_sender.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the socket option is set to {packet, 1|2|3|4}  sender process needs to
add a packet length header. If packet is changed with ssl:setopts/2 this needs
to be communicated to tls_sender.
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: ERL-738 - Correct alert handling with new TLS sender process</title>
<updated>2018-10-10T08:28:59+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2018-10-04T06:14:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=a210b0ed49f026919eea9fcef50f140a037b0982'/>
<id>a210b0ed49f026919eea9fcef50f140a037b0982</id>
<content type='text'>
With the new TLS sender process, solving ERL-622, TLS ALERTs sent in
the connection state must be encrypted and sent by the TLS sender
process. This to make sure that the correct encryption state is used
to encode the ALERTS. Care must also be taken to ensure a graceful
close down behavior both for normal shutdown and downgrading from TLS
to TCP.

The original TR ERL-738 is verified by cowboy tests, and close down
behavior by our tests. However we alas have not been able to yet
create a minimal test case for the originating problem.

Also it seems it has become less likely that we run in to the TCP
delivery problem, that is the guarantee is only on transport level,
not application level. Keep work around function in ssl_test_lib but
we can have better test as long as we do not get to much wobbling
tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With the new TLS sender process, solving ERL-622, TLS ALERTs sent in
the connection state must be encrypted and sent by the TLS sender
process. This to make sure that the correct encryption state is used
to encode the ALERTS. Care must also be taken to ensure a graceful
close down behavior both for normal shutdown and downgrading from TLS
to TCP.

The original TR ERL-738 is verified by cowboy tests, and close down
behavior by our tests. However we alas have not been able to yet
create a minimal test case for the originating problem.

Also it seems it has become less likely that we run in to the TCP
delivery problem, that is the guarantee is only on transport level,
not application level. Keep work around function in ssl_test_lib but
we can have better test as long as we do not get to much wobbling
tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Prepare release</title>
<updated>2018-09-24T09:32:41+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2018-09-24T09:32:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fb7006280f8d5a45459e1fba066fe6f6131e8e86'/>
<id>fb7006280f8d5a45459e1fba066fe6f6131e8e86</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright year</title>
<updated>2018-09-21T10:23:25+00:00</updated>
<author>
<name>Henrik Nord</name>
<email>henrik@erlang.org</email>
</author>
<published>2018-09-21T10:23:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=d04b53936d5e9f84a3066ecd466993671b1428bf'/>
<id>d04b53936d5e9f84a3066ecd466993671b1428bf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: Improve interop checks</title>
<updated>2018-09-20T13:27:51+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2018-09-14T14:14:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=012cb5bdafddf3e2b4279f001d4b2b5e0e96e367'/>
<id>012cb5bdafddf3e2b4279f001d4b2b5e0e96e367</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: Move link to correct process</title>
<updated>2018-09-20T08:54:59+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2018-09-18T16:57:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=81cf7b6c922f56b2de4656b91a6d1af0d9a9c432'/>
<id>81cf7b6c922f56b2de4656b91a6d1af0d9a9c432</id>
<content type='text'>
The link should be between the connection process and the tls_sender
process. But the start of the tls_sender process needs to be done
by the process that also starts the connection process in order to
correctly create the opaque #ssl_socket{}.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The link should be between the connection process and the tls_sender
process. But the start of the tls_sender process needs to be done
by the process that also starts the connection process in order to
correctly create the opaque #ssl_socket{}.
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: Handle incomplete and unorded chains</title>
<updated>2018-09-12T08:51:03+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2016-01-13T21:04:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=45b6afd71bbb7c4b9a0678067bbb7f9276be5605'/>
<id>45b6afd71bbb7c4b9a0678067bbb7f9276be5605</id>
<content type='text'>
If the peer sends an incomplete chain that we can reconstruct with
our known CA-certs it will be accepted.

We will assume that the peer honors the protocol and sends an orded
chain, however if validation fails we will try to order the chain in
case it was unorded. Will also handle that extraneous cert where present.

See Note form RFC 8446

Note: Prior to TLS 1.3, "certificate_list" ordering required each
certificate to certify the one immediately preceding it; however,
some implementations allowed some flexibility.  Servers sometimes
send both a current and deprecated intermediate for transitional
purposes, and others are simply configured incorrectly, but these
cases can nonetheless be validated properly.  For maximum
compatibility, all implementations SHOULD be prepared to handle
potentially extraneous certificates and arbitrary orderings from any
TLS version, with the exception of the end-entity certificate which
MUST be first.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the peer sends an incomplete chain that we can reconstruct with
our known CA-certs it will be accepted.

We will assume that the peer honors the protocol and sends an orded
chain, however if validation fails we will try to order the chain in
case it was unorded. Will also handle that extraneous cert where present.

See Note form RFC 8446

Note: Prior to TLS 1.3, "certificate_list" ordering required each
certificate to certify the one immediately preceding it; however,
some implementations allowed some flexibility.  Servers sometimes
send both a current and deprecated intermediate for transitional
purposes, and others are simply configured incorrectly, but these
cases can nonetheless be validated properly.  For maximum
compatibility, all implementations SHOULD be prepared to handle
potentially extraneous certificates and arbitrary orderings from any
TLS version, with the exception of the end-entity certificate which
MUST be first.
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: Correct handling of all PSK cipher suites</title>
<updated>2018-09-11T08:49:32+00:00</updated>
<author>
<name>Ingela Anderton Andin</name>
<email>ingela@erlang.org</email>
</author>
<published>2018-09-06T13:49:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=b7138087d757f3e4190af92386145a1d942b7b8b'/>
<id>b7138087d757f3e4190af92386145a1d942b7b8b</id>
<content type='text'>
Before only some PSK suites would be correctly negotiated and most PSK
ciphers suites would fail the connection.

PSK cipher suites are anonymous in the sense that they do not use
certificates except for rsa_psk.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before only some PSK suites would be correctly negotiated and most PSK
ciphers suites would fail the connection.

PSK cipher suites are anonymous in the sense that they do not use
certificates except for rsa_psk.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed ssl_options typespec for key</title>
<updated>2018-09-04T10:37:00+00:00</updated>
<author>
<name>Lasse Skindstad Ebert</name>
<email>lasse@lasseebert.dk</email>
</author>
<published>2018-09-04T10:32:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=07c4928d48a65f240f83668838cf179140514afd'/>
<id>07c4928d48a65f240f83668838cf179140514afd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
