<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libssl/tls13_handshake.c, branch OPENBSD_6_8_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_6_8_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_6_8_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2020-07-30T16:23:17+00:00</updated>
<entry>
<title>Add minimal info callback support for TLSv1.3</title>
<updated>2020-07-30T16:23:17+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2020-07-30T16:23:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d72120f6c7c798dbddfd43101f7adba6a8f598e0'/>
<id>urn:sha1:d72120f6c7c798dbddfd43101f7adba6a8f598e0</id>
<content type='text'>
As abieber@ found the hard way, some python frameworks (twisted, synapse)
thought it a great idea to use the info callback mechanism (designed to
get state information about SSL objects) to modify state information such
as setting and verifying the SNI.  The switch of TLS_method() to default
to TLSv1.3 broke these contraptions.  Further bits of the info callback
mechanism will likely metastasize throughout the TLSv1.3 stack if we
need them, so we only do what's really necessary now.

Lots of debugging, crucial hint and testing by abieber

input &amp; ok jsing
</content>
</entry>
<entry>
<title>Remove const modifier in return type of tls13_handshake_active_state()</title>
<updated>2020-06-02T13:57:09+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2020-06-02T13:57:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=df60c1f682ef3f1684f75488097b5b56038506de'/>
<id>urn:sha1:df60c1f682ef3f1684f75488097b5b56038506de</id>
<content type='text'>
which make no sense as pointed out by gcc on sparc64.

ok jsing
</content>
</entry>
<entry>
<title>Send dummy ChangeCipherSpec messages from the TLSv1.3 server</title>
<updated>2020-05-10T17:13:30+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2020-05-10T17:13:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=42977f0c5dfb5d699fb459f527b85ca475cd30aa'/>
<id>urn:sha1:42977f0c5dfb5d699fb459f527b85ca475cd30aa</id>
<content type='text'>
If the client has requested middle box compatibility mode by sending
a non-empty legacy_session_id, the server must send a dummy CCS right
after its first handshake message. This means right after ServerHello
or HelloRetryRequest.

Two important improvements over the backed-out diffr: make sure that
First: client and server can send their dummy CCS at the correct moment
(right before the next flight or right after the current flight).
Second: as jsing noted, we also need to deal with the corner case that
tls13_send_dummy_ccs() can return TLS13_IO_WANT_POLLOUT.

with/ok jsing
</content>
</entry>
<entry>
<title>Provide alert defines for TLSv1.3 and use in the TLSv1.3 code.</title>
<updated>2020-05-10T16:56:11+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2020-05-10T16:56:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b31d318d829815c32911ba41253883a36be79792'/>
<id>urn:sha1:b31d318d829815c32911ba41253883a36be79792</id>
<content type='text'>
Rather than using a mess of SSL_AL_*, SSL_AD_*, SSL3_AD_* and TLS1_AD_*
defines, provide our own TLS13_ALERT_* defines and use those. This also
provides the alerts that are new to TLSv1.3.

ok beck@
</content>
</entry>
<entry>
<title>Provide an easy way to get debug information from TLSv1.3 handshakes.</title>
<updated>2020-05-10T14:22:51+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2020-05-10T14:22:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7307f1dd5e30b646fc44384ead7b0ded4fb8f217'/>
<id>urn:sha1:7307f1dd5e30b646fc44384ead7b0ded4fb8f217</id>
<content type='text'>
This makes it easier to debug TLSv1.3 handshake failures.

"Yes please!" tb@, ok beck@
</content>
</entry>
<entry>
<title>Back out server side CCS sending. It breaks TLSv1.3 client communication</title>
<updated>2020-05-09T20:38:19+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2020-05-09T20:38:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=33729ac96dd7f69c129d65cf90c030d7022373c9'/>
<id>urn:sha1:33729ac96dd7f69c129d65cf90c030d7022373c9</id>
<content type='text'>
with TLSv1.2 servers, since it makes clients send their dummy CCS too
early...  There's an obvious but dirty bandaid which I can't bring myself
to applying - this business is already disgusting enough.

Issue found the hard way by sthen
</content>
</entry>
<entry>
<title>Send dummy ChangeCipherSpec messages from the TLSv1.3 server</title>
<updated>2020-05-09T16:43:05+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2020-05-09T16:43:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a69862d24afd7ba98c527672f2e886cdb17723dc'/>
<id>urn:sha1:a69862d24afd7ba98c527672f2e886cdb17723dc</id>
<content type='text'>
If the client has requested middle box compatibility mode by sending
a non-empty legacy_session_id, the server must send a dummy CCS right
after its first handshake message. This means right after ServerHello
or HelloRetryRequest.

ok jsing
</content>
</entry>
<entry>
<title>Send dummy ChangeCipherSpec messages from the TLSv1.3 client.</title>
<updated>2020-05-09T15:47:11+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2020-05-09T15:47:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=84ddbcb8c28d02b2e49dfa7ece879c8d7c496eae'/>
<id>urn:sha1:84ddbcb8c28d02b2e49dfa7ece879c8d7c496eae</id>
<content type='text'>
When operating in middlebox compatibility mode, the TLSv1.3 client needs
to send a dummy ChangeCipherSpec message immediately before its second
flight of handshake messages (when early data is not offered).

ok tb@
</content>
</entry>
<entry>
<title>Pull the sending of alerts up into tls13_handshake_perform().</title>
<updated>2020-05-09T08:39:44+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2020-05-09T08:39:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=8dd6c173e5508218fa9d285e2eed53d2c6342d03'/>
<id>urn:sha1:8dd6c173e5508218fa9d285e2eed53d2c6342d03</id>
<content type='text'>
This fixes the case where a send function signals that an alert should be
sent, then returns failure. Previously the failure would be propagated
up, without the alert being sent.

Issued noted by tb@

ok tb@
</content>
</entry>
<entry>
<title>Add const to TLS1.3 internal vectors</title>
<updated>2020-05-02T00:31:54+00:00</updated>
<author>
<name>inoguchi</name>
<email></email>
</author>
<published>2020-05-02T00:31:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2e6d47dd230cf0a1dc61aea57faf78019cf22858'/>
<id>urn:sha1:2e6d47dd230cf0a1dc61aea57faf78019cf22858</id>
<content type='text'>
ok tb@
</content>
</entry>
</feed>
