<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libssl/t1_enc.c, branch OPENBSD_7_9</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2026-04-03T13:11:00+00:00</updated>
<entry>
<title>Remove workaround for SSL 3.0/TLS 1.0 CBC vulnerability.</title>
<updated>2026-04-03T13:11:00+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2026-04-03T13:11:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=9726691a1e7289634e04b2e44da815e69091af49'/>
<id>urn:sha1:9726691a1e7289634e04b2e44da815e69091af49</id>
<content type='text'>
We no longer support TLSv1.0 and definitely do not support SSLv3 - remove
the empty fragments workaround for the CBC vulnerability in these
protocols.

ok kenjiro@ tb@
</content>
</entry>
<entry>
<title>Remove cipher from SSL_SESSION.</title>
<updated>2024-07-20T04:04:23+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2024-07-20T04:04:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=026ea65c83ed46dcfd89ada1f6250daa4fcc01b3'/>
<id>urn:sha1:026ea65c83ed46dcfd89ada1f6250daa4fcc01b3</id>
<content type='text'>
For a long time SSL_SESSION has had both a cipher ID and a pointer to
an SSL_CIPHER (and not both are guaranteed to be populated). There is also
a pointer to an SSL_CIPHER in the SSL_HANDSHAKE that denotes the cipher
being used for this connection. Some code has been using the cipher from
SSL_SESSION and some code has been using the cipher from SSL_HANDSHAKE.

Remove cipher from SSL_SESSION and use the version in SSL_HANDSHAKE
everywhere. If resuming from a session then we need to use the SSL_SESSION
cipher ID to set the SSL_HANDSHAKE cipher. And we still need to ensure that
we update the cipher ID in the SSL_SESSION whenever the SSL_HANDSHAKE
cipher changes (this only occurs in a few places).

ok tb@
</content>
</entry>
<entry>
<title>Make internal header file names consistent</title>
<updated>2022-11-26T16:08:57+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-11-26T16:08:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=81d98bf600a381a625eb11b39a725b08c0ba547f'/>
<id>urn:sha1:81d98bf600a381a625eb11b39a725b08c0ba547f</id>
<content type='text'>
Libcrypto currently has a mess of *_lcl.h, *_locl.h, and *_local.h names
used for internal headers. Move all these headers we inherited from
OpenSSL to *_local.h, reserving the name *_internal.h for our own code.
Similarly, move dtls_locl.h and ssl_locl.h to dtls_local and ssl_local.h.
constant_time_locl.h is moved to constant_time.h since it's special.

Adjust all .c files in libcrypto, libssl and regress.

The diff is mechanical with the exception of tls13_quic.c, where
#include &lt;ssl_locl.h&gt; was fixed manually.

discussed with jsing,
no objection bcook
</content>
</entry>
<entry>
<title>Rewrite TLSv1.2 key exporter.</title>
<updated>2022-11-07T11:58:45+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-11-07T11:58:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7ffcd41334db0ef12b6346e2c510090a7d059408'/>
<id>urn:sha1:7ffcd41334db0ef12b6346e2c510090a7d059408</id>
<content type='text'>
Replace the grotty TLSv1.2 key exporter with a cleaner version that uses
CBB and CBS.

ok tb@
</content>
</entry>
<entry>
<title>Get rid of SSL_CTX_INTERNAL and SSL_INTERNAL.</title>
<updated>2022-10-02T16:36:42+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-10-02T16:36:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=efde998d3821e41e124a4bfcdf103e506055fc52'/>
<id>urn:sha1:efde998d3821e41e124a4bfcdf103e506055fc52</id>
<content type='text'>
These are no longer necessary due to SSL_CTX and SSL now being fully
opaque. Merge SSL_CTX_INTERNAL back into SSL_CTX and SSL_INTERNAL back
into SSL.

Prompted by tb@
</content>
</entry>
<entry>
<title>Bye bye S3I.</title>
<updated>2022-02-05T14:54:10+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-02-05T14:54:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a463011117e88ea3125fb580b8c6c60d68722651'/>
<id>urn:sha1:a463011117e88ea3125fb580b8c6c60d68722651</id>
<content type='text'>
S3I has served us well, however now that libssl is fully opaque it is time
to say goodbye. Aside from removing the calloc/free/memset, the rest is
mechanical sed.

ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Convert t1_enc.c to opaque EVP_MD_CTX.</title>
<updated>2021-12-09T17:54:41+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2021-12-09T17:54:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=06a86eedd5f34d26328357e4056896fd2fff2f2e'/>
<id>urn:sha1:06a86eedd5f34d26328357e4056896fd2fff2f2e</id>
<content type='text'>
ok inoguchi jsing
</content>
</entry>
<entry>
<title>Mop up enc_read_ctx and read_hash.</title>
<updated>2021-10-23T15:02:27+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-10-23T15:02:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7ca0bc2d28f377a0efc0813a74f85f451c45b865'/>
<id>urn:sha1:7ca0bc2d28f377a0efc0813a74f85f451c45b865</id>
<content type='text'>
These are no longer public, so we can mop them up along with the machinery
needed to set/clear them.

ok beck@ tb@
</content>
</entry>
<entry>
<title>Merge SSL_METHOD_INTERNAL into SSL_METHOD.</title>
<updated>2021-07-01T17:53:39+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-07-01T17:53:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=909a6d9c0830e04a252ab680efffd5246ba048ba'/>
<id>urn:sha1:909a6d9c0830e04a252ab680efffd5246ba048ba</id>
<content type='text'>
Now that SSL_METHOD is opaque and in internal headers, we can remove
SSL_METHOD_INTERNAL by merging it back into SSL_METHOD.

ok tb@
</content>
</entry>
<entry>
<title>Remove tls1_alert_code().</title>
<updated>2021-06-13T15:34:41+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-06-13T15:34:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cbbda7771dfc3fb2545ee7458ce5ecef7c589352'/>
<id>urn:sha1:cbbda7771dfc3fb2545ee7458ce5ecef7c589352</id>
<content type='text'>
After running the preprocessor, this function becomes:

  switch (code) {
  case 0:
   return (0);
  case 10:
   return (10);
  case 20:
   return (20);
  ...
  }

Its intended purpose was to prevent SSLv3 alerts being sent from TLS code,
however now that we've removed "no_certificate" from LibreSSL's reach, it
no longer does anything useful.

ok tb@
</content>
</entry>
</feed>
