Repository navigation #
[openssl-machine](https://github.com/openssl-machine)released this
[438 commits](https://github.com/openssl/openssl/compare/openssl-4.1.0...master)to master since this release
OpenSSL 4.1.0 is a feature release adding significant new functionality
to OpenSSL.
This release incorporates the following potentially significant or incompatible
changes:
Added VC-WIN32-MSVC2013 andVC-WIN64A-MSVC2013 build targets to provide
internal functions for bridging the gaps in C99 standard support
that are present in MSVC 2013. #
Added optimized ML-DSA and ML-KEM NTT operations on ppc64le ;
optimized ML-DSA operations onx86_64 ;
AVX-512-optimized SHAKE x4 operations for ML-DSA onx86_64 ;
AVX-512 and VAES optimizations for AES-CBC decryption onx86_64 . #
Changed `tsget` utility to use`Net::Curl::Easy` (from the`Net-Curl` CPAN
distribution) instead of the abandoned`WWW::Curl::Easy` . Users who rely
on`tsget` should install`Net::Curl::Easy` before upgrading.
Dropped Windows-on-Itanium ( `VC-WIN64I` ) and Windows CE (`VC-CE` ) targets
from Configurations.
Dropped no-ecdsa andno-ecdh options fromConfigure , as these options
did not really disable the implementations. Useno-ec to disable
the elliptic curve support.
This release adds the following new features:
Support for DTLS 1.3 ( [RFC 9147](https://datatracker.ietf.org/doc/html/rfc9147) ).
Refer to the`ossl-guide-dtlsv13(7)` manual page for details.
Support for RFC 8701 GREASE (Generate Random Extensions And Sustain Extensibility). #
DTLS support in the SSL listener API. #
Support for IKEV2 KDF. #
Initial support for the Elbrus2000 ( e2k ) architecture.
Known issues in 4.1.0:
#32878 When a DTLS 1.3 KeyUpdate is received, all other outstanding post-handshake records are dropped from the retransmission buffer. This means post-handshake records still awaiting an ACK (such as a NewSessionTicket) will no longer be retransmitted if the original transmission is lost. A fix is in progress and planned for a future release. #
#33277
A permanent receive failure on a DTLS listener can be reported as
SSL_ERROR_WANT_READ on an accepted connection. Polling and subsequent
accept calls may also fail to report the error, causing applications
to continue waiting after a permanent failure. #
#33278
A retryable write failure on a nonblocking connection accepted from a
DTLS listener can be reported asSSL_ERROR_SYSCALL instead of
SSL_ERROR_WANT_WRITE . Applications treating this result as fatal may
close a connection that is still usable. #
#33242
DTLS 1.3 servers may abort handshakes with anunexpected_message alert
when a client acknowledges part or all of the server's first flight
before sending its response. This can occur after packet loss or while
the client is preparing its authentication response.