<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openssl/include, branch openssl-3.6.4</title>
<subtitle>TLS/SSL and crypto library.</subtitle>
<id>http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.6.4</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.6.4'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/'/>
<updated>2026-08-25T11:46:17Z</updated>
<entry>
<title>Copyright year updates</title>
<updated>2026-08-25T11:46:17Z</updated>
<author>
<name>openssl-machine</name>
<email>openssl-machine@openssl.org</email>
</author>
<published>2026-08-25T11:46:17Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=30e544491153c118dabbe9410f48f8f0a30e741b'/>
<id>urn:sha1:30e544491153c118dabbe9410f48f8f0a30e741b</id>
<content type='text'>
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Milan Broz &lt;mbroz@openssl.org&gt;
MergeDate: Tue Aug 25 11:46:18 2026
Release: yes
</content>
</entry>
<entry>
<title>Avoid double free of qrx in port_default_packet_handler()</title>
<updated>2026-08-24T15:49:29Z</updated>
<author>
<name>Alexandr Nedvedicky</name>
<email>sashan@openssl.org</email>
</author>
<published>2026-08-04T22:56:25Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=70cebd74d3592f5272945501b58a60374c4e13af'/>
<id>urn:sha1:70cebd74d3592f5272945501b58a60374c4e13af</id>
<content type='text'>
port_default_packet_handler() may perform double free of qrx
when channel creation fails. The port_default_packet_handler()
transfers ownership of qrx to channel/connection via call to
port_bind_channel(). The port_bind_channel() however may
release the qrx when channel can not be bound. The error is
then detected in port_default_packet_handler() which then agains
releases qrx for the second time.

The fix is to add a reference counter to QRX object so transfer
of ownership between port_default_packet_handler() and QUIC_CHANNEL
can be handled safely.

Fixes CVE-2026-18798

Reviewed-by: Igor Ustinov &lt;igus@openssl.foundation&gt;
Reviewed-by: Andrew Dinh &lt;andrewd@openssl.org&gt;
Merge-date: Mon Aug 24 15:47:02 2026
</content>
</entry>
<entry>
<title>Don't store ACK-only frames in TX history for QUIC.</title>
<updated>2026-08-24T12:13:24Z</updated>
<author>
<name>Neil Horman</name>
<email>nhorman@openssl.org</email>
</author>
<published>2026-07-09T19:34:30Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=bf84721c2548351176e367e6de505792f0118dc6'/>
<id>urn:sha1:bf84721c2548351176e367e6de505792f0118dc6</id>
<content type='text'>
When QUIC sends an ACK-only frame, there is no expectation that the
peer will ack that ack (i.e. it is itself not ack-eliciting).  However,
our implementation stores these frames in the TX history regardless.  In and
of itself thats ok, but if a malicious client establishes a connection,
and then drives the connection such that ack-only frames are forced from
the peer (i.e. by sending numerous ping frames), and then withholding
any subseqent acks for ack-eliciting data, like legitimate data, said
malicious client can force inappropriate memory growth on the server,
leading to potential DOS attacks.

Don't store any ACK-only frames in the TX history to address this.  Record it in
our TX history so that the send window moves forward appropriately, but for
ack-only frames, immediately remove it, since we don't expect to get an ack for
them anyway.

Initially authored by Opal Wright &lt;opal.wright@trailofbits.com&gt;

The initial proposal had some shortcommings in which the highest pn
acked value was not accounted for which I have fixed with the assistance
of Claude

Assisted-by: Anthopic Sonnet 5

Fixes CVE-2026-63075

Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
Reviewed-by: Bob Beck &lt;beck@openssl.org&gt;
Merge-date: Mon Aug 24 12:13:31 2026
</content>
</entry>
<entry>
<title>test/quicapitest.c: add test for pending connections limit enforcement</title>
<updated>2026-08-12T17:28:40Z</updated>
<author>
<name>Alexandr Nedvedicky</name>
<email>sashan@openssl.org</email>
</author>
<published>2026-07-23T07:51:41Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=d446963b2622ee371df76971e5e2ddc7289839c4'/>
<id>urn:sha1:d446963b2622ee371df76971e5e2ddc7289839c4</id>
<content type='text'>
This is a regression test for CVE-2026-14456.

Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Reviewed-by: Andrew Dinh &lt;andrewd@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
MergeDate: Wed Aug 12 15:00:30 2026
(Merged from https://github.com/openssl/openssl/pull/32052)

(cherry picked from commit 0461a5636deca9af034db70ff017ad1138836c8c)
</content>
</entry>
<entry>
<title>QUIC server: limit number of pending QUIC channels/connections</title>
<updated>2026-08-12T17:14:24Z</updated>
<author>
<name>Alexandr Nedvedicky</name>
<email>sashan@openssl.org</email>
</author>
<published>2026-07-23T07:38:02Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=4084152e040329ca0194c4c1750b9b46d00a5b6b'/>
<id>urn:sha1:4084152e040329ca0194c4c1750b9b46d00a5b6b</id>
<content type='text'>
Currently, there is no limit for pending QUIC connections.  The port
default packet handler creates channel for every valid initial packet
which does belong to existing channel (a.k.a. connection).  The newly
created channel is inserted to list of pending channels where it waits
to be accepted by local application by call
to SSL_accept_connection(3ossl).

This change introduces a limit for pending connection.  The pending
queue is limited to 256 pending connections.  Applications may change
the limit by calling SSL_set_feature_request_uint(3ossl)
on SSL server listener object with configurable value
SSL_VALUE_QUIC_MAX_PENDING_CONNS.

Fixes: CVE-2026-14456

Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Reviewed-by: Andrew Dinh &lt;andrewd@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
MergeDate: Wed Aug 12 15:00:25 2026
(Merged from https://github.com/openssl/openssl/pull/32052)

(cherry picked from commit 9416706d408bb84deb7cee4647bff3045d2dc7ba)
</content>
</entry>
<entry>
<title>Add ossl_list_TYPE_join(head, tail) function</title>
<updated>2026-08-06T11:58:40Z</updated>
<author>
<name>Alexandr Nedvedicky</name>
<email>sashan@openssl.org</email>
</author>
<published>2026-07-20T07:44:53Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=fd4e510b1b2d4078759c27213901f566db59b0c5'/>
<id>urn:sha1:fd4e510b1b2d4078759c27213901f566db59b0c5</id>
<content type='text'>
The function appends list tail to list head. List tail becomes
empty after the function returns.

Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Norbert Pocs &lt;norbertp@openssl.org&gt;
MergeDate: Thu Aug  6 11:58:45 2026
(Merged from https://github.com/openssl/openssl/pull/32031)
</content>
</entry>
<entry>
<title>SSL_OP_SECOP is dead code</title>
<updated>2026-06-30T10:54:49Z</updated>
<author>
<name>Bob Beck</name>
<email>beck@openssl.org</email>
</author>
<published>2026-05-22T12:37:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=fe99c122333d8c48e843b9820bd291669a713a33'/>
<id>urn:sha1:fe99c122333d8c48e843b9820bd291669a713a33</id>
<content type='text'>
Nothing set the "vfy" parameters in any of these functions to anything but 0.

Remove the parameter and stage things related to SSL_OP_SECOP to go away in the
future.

Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Norbert Pocs &lt;norbertp@openssl.org&gt;
MergeDate: Tue Jun 30 10:54:54 2026
(Merged from https://github.com/openssl/openssl/pull/31271)
</content>
</entry>
<entry>
<title>include/internal/hashtable.h: avoid OOB read in ossl_ht_strcase()</title>
<updated>2026-06-24T13:13:13Z</updated>
<author>
<name>Eugene Syromiatnikov</name>
<email>esyr@openssl.org</email>
</author>
<published>2026-06-23T08:06:04Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=9531b6f1c338e7e4a5197a9029b357da0e4c182a'/>
<id>urn:sha1:9531b6f1c338e7e4a5197a9029b357da0e4c182a</id>
<content type='text'>
Avoid accessing src[len] by swapping the check order and bound check
the iterator variable before the access.

Found by cppcheck.

Fixes: cc4ea5e00028 "Introduce new internal hashtable implementation"
Signed-off-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;

Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
MergeDate: Wed Jun 24 13:09:25 2026
(Merged from https://github.com/openssl/openssl/pull/31663)

(cherry picked from commit 029d629db23e95c6e827d09dae89ee8b4b54f3e2)
</content>
</entry>
<entry>
<title>x509: check inner/outer signatureAlgorithm match in X509_CRL_verify</title>
<updated>2026-06-11T08:49:34Z</updated>
<author>
<name>Viktor Dukhovni</name>
<email>viktor@openssl.org</email>
</author>
<published>2026-05-18T10:41:54Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=cdcd00584965b9e042701a7b4af027b86e01c85a'/>
<id>urn:sha1:cdcd00584965b9e042701a7b4af027b86e01c85a</id>
<content type='text'>
RFC 5280 section 5.1.1.2 requires the signatureAlgorithm in the outer
CertificateList wrapper to be identical to the signature field inside
the signed TBSCertList.  def_crl_verify() did not enforce this, unlike
X509_verify() and X509_ACERT_verify() which both carry an X509_ALGOR_cmp
guard.

Add the same guard to def_crl_verify().  A mismatch raises
X509_R_CRL_SIGNATURE_ALGORITHM_MISMATCH.  No known attack results from
the missing check; this is a conformance and hardening fix only.

Add a regression test: a CRL with a valid RSA-SHA256 signature over a
TBSCertList whose inner signatureAlgorithm claims ecdsaWithSHA256 is
now rejected.

Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Norbert Pocs &lt;norbertp@openssl.org&gt;
MergeDate: Thu Jun 11 08:49:42 2026
(Merged from https://github.com/openssl/openssl/pull/31213)
</content>
</entry>
<entry>
<title>Copyright year updates</title>
<updated>2026-06-09T11:44:35Z</updated>
<author>
<name>openssl-machine</name>
<email>openssl-machine@openssl.org</email>
</author>
<published>2026-06-09T11:44:35Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=9ba2cb5f2a0eeb06d4cb88e1b7cc800181053bff'/>
<id>urn:sha1:9ba2cb5f2a0eeb06d4cb88e1b7cc800181053bff</id>
<content type='text'>
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
MergeDate: Tue Jun  9 11:44:36 2026
Release: yes
</content>
</entry>
</feed>
