Skip to content

Releases: erlang/otp

OTP

11 Nov 18:36
Compare
Choose a tag to compare
Patch Package:           OTP 24.1.5
Git Tag:                 OTP-24.1.5
Date:                    2021-11-11
Trouble Report Id:       OTP-17734, OTP-17735, OTP-17736, OTP-17737
Seq num:                 GH-4989, GH-5279, GH-5327, GH-5339, GH-5346
System:                  OTP
Release:                 24
Application:             erts-12.1.5, kernel-8.1.3
Predecessor:             OTP 24.1.4

 Check out the git tag OTP-24.1.5, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- POTENTIAL INCOMPATIBILITIES -------------------------------------
 ---------------------------------------------------------------------

  OTP-17734    Application(s): kernel
               Related Id(s): GH-5327, OTP-17659

               The internal, undocumented, but used, module inet_dns
               has been fixed to handle mDNS high bit usage of the
               Class field.

               Code that uses the previously obsolete, undocumented
               and unused record field #dns_rr.func will need to be
               updated since that field is now used as a boolean flag
               for the mDNS high Class bit. Code that uses the also
               undocumented record #dns_query will need to be
               recompiled since a boolean field
               #dns_query.unicast_response has been added for the mDNS
               high Class bit.


 ---------------------------------------------------------------------
 --- erts-12.1.5 -----------------------------------------------------
 ---------------------------------------------------------------------

 The erts-12.1.5 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17735    Application(s): erts
               Related Id(s): GH-5339

               The runtime system could call select() with a too large
               timeout value when executing on MacOS. This could in
               turn cause the runtime system to crash.


  OTP-17736    Application(s): erts, kernel
               Related Id(s): GH-5279, OTP-17559, PR-5120

               The fix for Linux's behaviour when reconnecting an UDP
               socket in PR-5120 released in OTP-24.1.2 has been
               refined to only dissolve the socket's connection before
               a connect if the socket is already connected, that is:
               only for a reconnect.

               This allows code to open a socket with an ephemeral
               port, get the port number and connect; without the port
               number changing (on Linux). This turned out to have at
               least one valid use case (besides test cases).

               Should one reconnect the socket then the port number
               may change, on Linux; it is a known quirk, which can be
               worked around by binding to a specific port number when
               opening the socket. If you can do without an ephemeral
               port, that is...


  OTP-17737    Application(s): erts
               Related Id(s): GH-4989, GH-5346

               Certain distributed signals that for various reasons
               must to be forced into the distribution buffer even
               when it is full would instead be lost if the
               distribution buffer was full when sent. The effected
               signals:

               -- EXIT signals with exit reasons of one word size.

               -- DOWN signals with exit reasons of one word size.

               -- demonitor signals from a terminating process.

               -- unlink_ack signals on OTP 23 and 24.

               -- spawn_reply signals on OTP 23 and 24.


 Full runtime dependencies of erts-12.1.5: kernel-8.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 --- kernel-8.1.3 ----------------------------------------------------
 ---------------------------------------------------------------------

 The kernel-8.1.3 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17734    Application(s): kernel
               Related Id(s): GH-5327, OTP-17659

               *** POTENTIAL INCOMPATIBILITY ***

               The internal, undocumented, but used, module inet_dns
               has been fixed to handle mDNS high bit usage of the
               Class field.

               Code that uses the previously obsolete, undocumented
               and unused record field #dns_rr.func will need to be
               updated since that field is now used as a boolean flag
               for the mDNS high Class bit. Code that uses the also
               undocumented record #dns_query will need to be
               recompiled since a boolean field
               #dns_query.unicast_response has been added for the mDNS
               high Class bit.


  OTP-17736    Application(s): erts, kernel
               Related Id(s): GH-5279, OTP-17559, PR-5120

               The fix for Linux's behaviour when reconnecting an UDP
               socket in PR-5120 released in OTP-24.1.2 has been
               refined to only dissolve the socket's connection before
               a connect if the socket is already connected, that is:
               only for a reconnect.

               This allows code to open a socket with an ephemeral
               port, get the port number and connect; without the port
               number changing (on Linux). This turned out to have at
               least one valid use case (besides test cases).

               Should one reconnect the socket then the port number
               may change, on Linux; it is a known quirk, which can be
               worked around by binding to a specific port number when
               opening the socket. If you can do without an ephemeral
               port, that is...


 Full runtime dependencies of kernel-8.1.3: crypto-5.0, erts-12.0,
 sasl-3.0, stdlib-3.13


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 23.3.4.9

11 Nov 18:36
Compare
Choose a tag to compare
Patch Package:           OTP 23.3.4.9
Git Tag:                 OTP-23.3.4.9
Date:                    2021-11-11
Trouble Report Id:       OTP-17735, OTP-17737
Seq num:                 GH-4989, GH-5339, GH-5346
System:                  OTP
Release:                 23
Application:             erts-11.2.2.8
Predecessor:             OTP 23.3.4.8

 Check out the git tag OTP-23.3.4.9, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-11.2.2.8 ---------------------------------------------------
 ---------------------------------------------------------------------

 The erts-11.2.2.8 application can be applied independently of other
 applications on a full OTP 23 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17735    Application(s): erts
               Related Id(s): GH-5339

               The runtime system could call select() with a too large
               timeout value when executing on MacOS. This could in
               turn cause the runtime system to crash.


  OTP-17737    Application(s): erts
               Related Id(s): GH-4989, GH-5346

               Certain distributed signals that for various reasons
               must to be forced into the distribution buffer even
               when it is full would instead be lost if the
               distribution buffer was full when sent. The effected
               signals:

               -- EXIT signals with exit reasons of one word size.

               -- DOWN signals with exit reasons of one word size.

               -- demonitor signals from a terminating process.

               -- unlink_ack signals on OTP 23 and 24.

               -- spawn_reply signals on OTP 23 and 24.


 Full runtime dependencies of erts-11.2.2.8: kernel-7.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 22.3.4.23

11 Nov 19:14
Compare
Choose a tag to compare
Patch Package:           OTP 22.3.4.23
Git Tag:                 OTP-22.3.4.23
Date:                    2021-11-11
Trouble Report Id:       OTP-17735, OTP-17737
Seq num:                 GH-4989, GH-5339, GH-5346
System:                  OTP
Release:                 22
Application:             erts-10.7.2.15
Predecessor:             OTP 22.3.4.22

 Check out the git tag OTP-22.3.4.23, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-10.7.2.15 --------------------------------------------------
 ---------------------------------------------------------------------

 Note! The erts-10.7.2.15 application *cannot* be applied
       independently of other applications on an arbitrary OTP 22
       installation.

       On a full OTP 22 installation, also the following runtime
       dependency has to be satisfied:
       -- kernel-6.5.1 (first satisfied in OTP 22.2)


 --- Fixed Bugs and Malfunctions ---

  OTP-17735    Application(s): erts
               Related Id(s): GH-5339

               The runtime system could call select() with a too large
               timeout value when executing on MacOS. This could in
               turn cause the runtime system to crash.


  OTP-17737    Application(s): erts
               Related Id(s): GH-4989, GH-5346

               Certain distributed signals that for various reasons
               must to be forced into the distribution buffer even
               when it is full would instead be lost if the
               distribution buffer was full when sent. The effected
               signals:

               -- EXIT signals with exit reasons of one word size.

               -- DOWN signals with exit reasons of one word size.

               -- demonitor signals from a terminating process.

               -- unlink_ack signals on OTP 23 and 24.

               -- spawn_reply signals on OTP 23 and 24.


 Full runtime dependencies of erts-10.7.2.15: kernel-6.5.1, sasl-3.3,
 stdlib-3.5


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 24.1.4

02 Nov 08:52
Compare
Choose a tag to compare
Patch Package:           OTP 24.1.4
Git Tag:                 OTP-24.1.4
Date:                    2021-11-02
Trouble Report Id:       OTP-17731, OTP-17732
Seq num:                 ERIERL-664
System:                  OTP
Release:                 24
Application:             erts-12.1.4
Predecessor:             OTP 24.1.3

 Check out the git tag OTP-24.1.4, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-12.1.4 -----------------------------------------------------
 ---------------------------------------------------------------------

 The erts-12.1.4 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17731    Application(s): erts
               Related Id(s): PR-5285

               Fix bug where a gen_tcp write error that happened
               during a delayed_send would cause a use after free
               segfault.


  OTP-17732    Application(s): erts
               Related Id(s): ERIERL-664, PR-5331

               Fix x86 JIT bug where a rem instruction could cause a
               segfault if given values that would cause an badarith
               exception.


 Full runtime dependencies of erts-12.1.4: kernel-8.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP

27 Oct 07:12
Compare
Choose a tag to compare
Patch Package:           OTP 24.1.3
Git Tag:                 OTP-24.1.3
Date:                    2021-10-27
Trouble Report Id:       OTP-17675, OTP-17677, OTP-17679, OTP-17686,
                         OTP-17688, OTP-17700, OTP-17712, OTP-17722,
                         OTP-17723
Seq num:                 GH-5255, GH-5271, GH-5300, GH-5310
System:                  OTP
Release:                 24
Application:             erts-12.1.3, ssl-10.5.2
Predecessor:             OTP 24.1.2

 Check out the git tag OTP-24.1.3, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- OTP-24.1.3 ------------------------------------------------------
 ---------------------------------------------------------------------

 --- Fixed Bugs and Malfunctions ---

  OTP-17679    Application(s): otp
               Related Id(s): PR-5251

               Fix handling of the top configure command line
               arguments --srcdir=<DIR>, --cache-file=<FILE>,
               --without-<APP>, CFLAGS=<FLAGS>, and LDFLAGS=<FLAGS>
               which failed on some platforms.


 ---------------------------------------------------------------------
 --- erts-12.1.3 -----------------------------------------------------
 ---------------------------------------------------------------------

 The erts-12.1.3 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17675    Application(s): erts

               Reduction counter was not updated before and after
               doing apply operations on the runtime system with the
               jit enabled. This caused reduction counting to get out
               of sync if a garbage collection was made as part of the
               apply operation.


  OTP-17677    Application(s): erts

               This fixes a bug in erts_factory_undo that caused the
               heap to not be reset correctly. The erts_factory_undo
               function is, for example, called when a
               binary_to_term/1 call fails to reset the heap to its
               state before the binary_to_term/1 call. This can cause
               the heap to contain invalid terms which potentially can
               cause issues (e.g., crashes) when the whole heap is
               scanned.


  OTP-17686    Application(s): erts

               When attempting to construct a binary with an segment
               having an illegal type for the size (e.g. an atom),
               there could be an unnecessary memory allocation (and
               subsequent deallocation) before the operation failed.
               Amended to fail before allocating any memory for the
               binary.


  OTP-17700    Application(s): erts
               Related Id(s): GH-5271, PR-5273

               Fix bug in persistent_term when a key-value pair
               contains a magic reference that is referred more than
               once. Magic references are NIF resources or returned
               from BIFs like ets:new, atomics:new. The bug could
               cause the memory of the referred resource to be
               prematurely deallocated.

               The bug also apply to magic references in message
               passing on a runtime built with configure option
               --enable-sharing-preserving.

               Bug exist for 64-bit since OTP-24.0 and for 32-bit
               since OTP-20.0.


  OTP-17712    Application(s): erts

               Fixed a crash when inspecting the stack trace of an
               exception raised at a very high line number.

               This bug was introduced in OTP 24.


  OTP-17722    Application(s): erts
               Related Id(s): GH-5310, PR-5313

               The following two bugs that caused erlang:demonitor()
               to behave erroneously have been fixed. The bugs were
               only triggered if the monitor that was removed by
               demonitor() had previously been created simultaneously
               as a monitor and as an alias.

               -- A demonitor operation on a monitor created using the
               {alias, reply_demonitor} option erroneously behaved as
               if the {alias, explicit_unalias} option had been used.

               -- A demonitor operation did not prevent a
               corresponding 'DOWN' message from being delivered if
               the monitor reference was kept as an active alias after
               the operation. This could only occur if the monitored
               process simultaneously terminated before the demonitor
               signal reached it, and the exit reason was not an
               immediate term. That is, a term larger than one machine
               word.


 Full runtime dependencies of erts-12.1.3: kernel-8.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 --- ssl-10.5.2 ------------------------------------------------------
 ---------------------------------------------------------------------

 Note! The ssl-10.5.2 application *cannot* be applied independently of
       other applications on an arbitrary OTP 24 installation.

       On a full OTP 24 installation, also the following runtime
       dependency has to be satisfied:
       -- public_key-1.11.3 (first satisfied in OTP 24.1.2)


 --- Fixed Bugs and Malfunctions ---

  OTP-17688    Application(s): ssl
               Related Id(s): GH-5255

               Fix TLS-1.2 RSA-PSS negotiation and also fix broken
               certificate request message for pre-TLS-1.3 servers.


  OTP-17723    Application(s): ssl
               Related Id(s): GH-5300

               Fix CRL issuer verification that under some
               circumstances could fail with a function_clause error.


 Full runtime dependencies of ssl-10.5.2: crypto-5.0, erts-10.0,
 inets-5.10.7, kernel-8.0, public_key-1.11.3, runtime_tools-1.15.1,
 stdlib-3.12


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 23.3.4.8

19 Oct 07:46
Compare
Choose a tag to compare
Patch Package:           OTP 23.3.4.8
Git Tag:                 OTP-23.3.4.8
Date:                    2021-10-19
Trouble Report Id:       OTP-17628, OTP-17642, OTP-17651, OTP-17658,
                         OTP-17665, OTP-17677, OTP-17700, OTP-17707
Seq num:                 ERIERL-706, GH-5235, GH-5271
System:                  OTP
Release:                 23
Application:             erts-11.2.2.7, ssh-4.11.1.4
Predecessor:             OTP 23.3.4.7

 Check out the git tag OTP-23.3.4.8, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-11.2.2.7 ---------------------------------------------------
 ---------------------------------------------------------------------

 The erts-11.2.2.7 application can be applied independently of other
 applications on a full OTP 23 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17628    Application(s): erts

               A call to process_info(Pid, status) could erroneously
               report the status running when it should have reported
               waiting. This occurred when the calling process was
               executing on a higher priority than the process being
               inspected. This bug has been present since OTP 21.0
               (erts version 10.0).


  OTP-17642    Application(s): erts
               Related Id(s): PR-5248

               A race between an exiting port and handling of
               simultaneously received signals to that port could
               cause a runtime system crash. The effected signals are
               link, monitor and demonitor. On OTP 22 a similiar race
               could also cause a memory leak when receiving an unlink
               signal.


  OTP-17651    Application(s): erts
               Related Id(s): GH-5235, PR-5244

               The message queue of a process entered an inconsistent
               state after a receive expression with an invalid
               timeout value was executed. If the exception raised due
               to the invalid timeout value was caught, the following
               receive expression executed by the process could fail
               to match messages already present in the message queue.

               On OTP 24 this could also cause the whole runtime
               system to crash.


  OTP-17665    Application(s): erts
               Related Id(s): PR-5248

               Sending a Port ! {PortOwner, close} signal from a
               process other than the port owner could erroneously
               trigger a badsig exit signal being sent to the port
               owner process even though the correct PortOwner had
               been passed in the signal.


  OTP-17677    Application(s): erts

               This fixes a bug in erts_factory_undo that caused the
               heap to not be reset correctly. The erts_factory_undo
               function is, for example, called when a
               binary_to_term/1 call fails to reset the heap to its
               state before the binary_to_term/1 call. This can cause
               the heap to contain invalid terms which potentially can
               cause issues (e.g., crashes) when the whole heap is
               scanned.


  OTP-17700    Application(s): erts
               Related Id(s): GH-5271, PR-5273

               Fix bug in persistent_term when a key-value pair
               contains a magic reference that is referred more than
               once. Magic references are NIF resources or returned
               from BIFs like ets:new, atomics:new. The bug could
               cause the memory of the referred resource to be
               prematurely deallocated.

               The bug also apply to magic references in message
               passing on a runtime built with configure option
               --enable-sharing-preserving.

               Bug exist for 64-bit since OTP-24.0 and for 32-bit
               since OTP-20.0.


 --- Improvements and New Features ---

  OTP-17658    Application(s): erts

               The python scripts that existed in
               erts/lib_src/yielding_c_fun/lib/tiny_regex_c/scripts
               had a license that was incompatible with Erlang/OTP's
               license. This ticket removes these scripts that were
               not used by us.


 Full runtime dependencies of erts-11.2.2.7: kernel-7.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 --- ssh-4.11.1.4 ----------------------------------------------------
 ---------------------------------------------------------------------

 The ssh-4.11.1.4 application can be applied independently of other
 applications on a full OTP 23 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17707    Application(s): ssh
               Related Id(s): ERIERL-706

               The value of the connect_timeout option is now used as
               default value for the negotiation timeout.


 Full runtime dependencies of ssh-4.11.1.4: crypto-4.6.4, erts-9.0,
 kernel-5.3, public_key-1.6.1, stdlib-3.4.1


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 22.3.4.22

19 Oct 08:32
Compare
Choose a tag to compare
Patch Package:           OTP 22.3.4.22
Git Tag:                 OTP-22.3.4.22
Date:                    2021-10-19
Trouble Report Id:       OTP-17604, OTP-17628, OTP-17642, OTP-17651,
                         OTP-17665, OTP-17677, OTP-17700, OTP-17707
Seq num:                 ERIERL-706, GH-5235, GH-5271
System:                  OTP
Release:                 22
Application:             erts-10.7.2.14, ssh-4.9.1.4
Predecessor:             OTP 22.3.4.21

 Check out the git tag OTP-22.3.4.22, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-10.7.2.14 --------------------------------------------------
 ---------------------------------------------------------------------

 Note! The erts-10.7.2.14 application *cannot* be applied
       independently of other applications on an arbitrary OTP 22
       installation.

       On a full OTP 22 installation, also the following runtime
       dependency has to be satisfied:
       -- kernel-6.5.1 (first satisfied in OTP 22.2)


 --- Fixed Bugs and Malfunctions ---

  OTP-17604    Application(s): erts

               On 32-bit computers, binary_to_term/1,2 is now more
               resilient against corrupted binaries containing maps in
               the external format.


  OTP-17628    Application(s): erts

               A call to process_info(Pid, status) could erroneously
               report the status running when it should have reported
               waiting. This occurred when the calling process was
               executing on a higher priority than the process being
               inspected. This bug has been present since OTP 21.0
               (erts version 10.0).


  OTP-17642    Application(s): erts
               Related Id(s): PR-5248

               A race between an exiting port and handling of
               simultaneously received signals to that port could
               cause a runtime system crash. The effected signals are
               link, monitor and demonitor. On OTP 22 a similiar race
               could also cause a memory leak when receiving an unlink
               signal.


  OTP-17651    Application(s): erts
               Related Id(s): GH-5235, PR-5244

               The message queue of a process entered an inconsistent
               state after a receive expression with an invalid
               timeout value was executed. If the exception raised due
               to the invalid timeout value was caught, the following
               receive expression executed by the process could fail
               to match messages already present in the message queue.

               On OTP 24 this could also cause the whole runtime
               system to crash.


  OTP-17665    Application(s): erts
               Related Id(s): PR-5248

               Sending a Port ! {PortOwner, close} signal from a
               process other than the port owner could erroneously
               trigger a badsig exit signal being sent to the port
               owner process even though the correct PortOwner had
               been passed in the signal.


  OTP-17677    Application(s): erts

               This fixes a bug in erts_factory_undo that caused the
               heap to not be reset correctly. The erts_factory_undo
               function is, for example, called when a
               binary_to_term/1 call fails to reset the heap to its
               state before the binary_to_term/1 call. This can cause
               the heap to contain invalid terms which potentially can
               cause issues (e.g., crashes) when the whole heap is
               scanned.


  OTP-17700    Application(s): erts
               Related Id(s): GH-5271, PR-5273

               Fix bug in persistent_term when a key-value pair
               contains a magic reference that is referred more than
               once. Magic references are NIF resources or returned
               from BIFs like ets:new, atomics:new. The bug could
               cause the memory of the referred resource to be
               prematurely deallocated.

               The bug also apply to magic references in message
               passing on a runtime built with configure option
               --enable-sharing-preserving.

               Bug exist for 64-bit since OTP-24.0 and for 32-bit
               since OTP-20.0.


 Full runtime dependencies of erts-10.7.2.14: kernel-6.5.1, sasl-3.3,
 stdlib-3.5


 ---------------------------------------------------------------------
 --- ssh-4.9.1.4 -----------------------------------------------------
 ---------------------------------------------------------------------

 Note! The ssh-4.9.1.4 application *cannot* be applied independently
       of other applications on an arbitrary OTP 22 installation.

       On a full OTP 22 installation, also the following runtime
       dependency has to be satisfied:
       -- crypto-4.6.4 (first satisfied in OTP 22.2.2)


 --- Fixed Bugs and Malfunctions ---

  OTP-17707    Application(s): ssh
               Related Id(s): ERIERL-706

               The value of the connect_timeout option is now used as
               default value for the negotiation timeout.


 Full runtime dependencies of ssh-4.9.1.4: crypto-4.6.4, erts-9.0,
 kernel-5.3, public_key-1.6.1, stdlib-3.4.1


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 24.1.2

05 Oct 07:04
Compare
Choose a tag to compare
Patch Package:           OTP 24.1.2
Git Tag:                 OTP-24.1.2
Date:                    2021-10-05
Trouble Report Id:       OTP-17393, OTP-17657, OTP-17658, OTP-17659,
                         OTP-17666, OTP-17668, OTP-17670, OTP-17672
Seq num:                 ERIERL-702, GH-5224, GH-5239
System:                  OTP
Release:                 24
Application:             crypto-5.0.4, erts-12.1.2, kernel-8.1.2,
                         public_key-1.11.3, ssl-10.5.1
Predecessor:             OTP 24.1.1

 Check out the git tag OTP-24.1.2, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- crypto-5.0.4 ----------------------------------------------------
 ---------------------------------------------------------------------

 The crypto-5.0.4 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17668    Application(s): crypto
               Related Id(s): PR-5245

               Fixed minor memory leak at crypto module purge.


  OTP-17672    Application(s): crypto

               Fix possible inconsistency in fips mode when linking
               with some cryptolibs.


 Full runtime dependencies of crypto-5.0.4: erts-9.0, kernel-5.3,
 stdlib-3.4


 ---------------------------------------------------------------------
 --- erts-12.1.2 -----------------------------------------------------
 ---------------------------------------------------------------------

 The erts-12.1.2 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Improvements and New Features ---

  OTP-17658    Application(s): erts

               The python scripts that existed in
               erts/lib_src/yielding_c_fun/lib/tiny_regex_c/scripts
               had a license that was incompatible with Erlang/OTP's
               license. This ticket removes these scripts that were
               not used by us.


 Full runtime dependencies of erts-12.1.2: kernel-8.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 --- kernel-8.1.2 ----------------------------------------------------
 ---------------------------------------------------------------------

 The kernel-8.1.2 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17659    Application(s): kernel
               Related Id(s): ERIERL-702

               The undocumented DNS encode/decode module inet_dns has
               been cleaned up to handle the difference between
               "symbolic" and "raw" records in a more consistent
               manner.

               PR-5145/OTP-17584 introduced a change that contributed
               to an already existing confusion, which this correction
               should remedy.


 Full runtime dependencies of kernel-8.1.2: crypto-5.0, erts-12.0,
 sasl-3.0, stdlib-3.13


 ---------------------------------------------------------------------
 --- public_key-1.11.3 -----------------------------------------------
 ---------------------------------------------------------------------

 The public_key-1.11.3 application can be applied independently of
 other applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17657    Application(s): public_key, ssl

               Avoid re-encoding of decoded certificates. This could
               cause unexpected failures as some subtle encoding
               errors can be tolerated when decoding but hence
               creating another sequence of bytes if the decoded value
               is re-encoded.


 Full runtime dependencies of public_key-1.11.3: asn1-3.0, crypto-3.8,
 erts-6.0, kernel-3.0, stdlib-3.5


 ---------------------------------------------------------------------
 --- ssl-10.5.1 ------------------------------------------------------
 ---------------------------------------------------------------------

 Note! The ssl-10.5.1 application *cannot* be applied independently of
       other applications on an arbitrary OTP 24 installation.

       On a full OTP 24 installation, also the following runtime
       dependency has to be satisfied:
       -- public_key-1.11.3 (first satisfied in OTP 24.1.2)


 --- Fixed Bugs and Malfunctions ---

  OTP-17393    Application(s): ssl

               Before that change, TLS downgrade could occasionally
               fail when data intended for downgraded socket were
               delivered together with CLOSE_NOTIFY alert to ssl app.


  OTP-17657    Application(s): public_key, ssl

               Avoid re-encoding of decoded certificates. This could
               cause unexpected failures as some subtle encoding
               errors can be tolerated when decoding but hence
               creating another sequence of bytes if the decoded value
               is re-encoded.


  OTP-17666    Application(s): ssl
               Related Id(s): GH-5239

               Fix possible process leak when the process doing
               ssl:transport_accept dies before initiating the TLS
               handshake.


  OTP-17670    Application(s): ssl
               Related Id(s): GH-5224

               Fix dtls memory leak, the replay window code was
               broken.


 Full runtime dependencies of ssl-10.5.1: crypto-5.0, erts-10.0,
 inets-5.10.7, kernel-8.0, public_key-1.11.3, runtime_tools-1.15.1,
 stdlib-3.12


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 24.1.1

30 Sep 11:45
Compare
Choose a tag to compare
Patch Package:           OTP 24.1.1
Git Tag:                 OTP-24.1.1
Date:                    2021-09-30
Trouble Report Id:       OTP-17640, OTP-17641, OTP-17642, OTP-17646,
                         OTP-17647, OTP-17649, OTP-17651, OTP-17665
Seq num:                 GH-5193, GH-5221, GH-5225, GH-5235
System:                  OTP
Release:                 24
Application:             erts-12.1.1, kernel-8.1.1, snmp-5.10.1,
                         stdlib-3.16.1
Predecessor:             OTP 24.1

 Check out the git tag OTP-24.1.1, and build a full OTP system
 including documentation. Apply one or more applications from this
 build as patches to your installation using the 'otp_patch_apply'
 tool. For information on install requirements, see descriptions for
 each application version below.

 ---------------------------------------------------------------------
 --- erts-12.1.1 -----------------------------------------------------
 ---------------------------------------------------------------------

 The erts-12.1.1 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17642    Application(s): erts
               Related Id(s): PR-5248

               A race between an exiting port and handling of
               simultaneously received signals to that port could
               cause a runtime system crash. The effected signals are
               link, monitor and demonitor. On OTP 22 a similiar race
               could also cause a memory leak when receiving an unlink
               signal.


  OTP-17646    Application(s): erts
               Related Id(s): GH-5221, PR-5232

               A user defined tag on a monitor message could cause the
               runtime system to crash when the monitor message had
               been received.


  OTP-17647    Application(s): erts
               Related Id(s): GH-5225, PR-5230

               A call to erlang:demonitor(Ref) where the reference Ref
               referred to an active alias, but not an active monitor,
               caused the runtime system to crash.


  OTP-17651    Application(s): erts
               Related Id(s): GH-5235, PR-5244

               The message queue of a process entered an inconsistent
               state after a receive expression with an invalid
               timeout value was executed. If the exception raised due
               to the invalid timeout value was caught, the following
               receive expression executed by the process could fail
               to match messages already present in the message queue.

               On OTP 24 this could also cause the whole runtime
               system to crash.


  OTP-17665    Application(s): erts
               Related Id(s): PR-5248

               Sending a Port ! {PortOwner, close} signal from a
               process other than the port owner could erroneously
               trigger a badsig exit signal being sent to the port
               owner process even though the correct PortOwner had
               been passed in the signal.


 Full runtime dependencies of erts-12.1.1: kernel-8.0, sasl-3.3,
 stdlib-3.13


 ---------------------------------------------------------------------
 --- kernel-8.1.1 ----------------------------------------------------
 ---------------------------------------------------------------------

 The kernel-8.1.1 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17640    Application(s): kernel

               Add more info about the socket 'type' ('socket' or
               'port') for the DOWN message when monitoring sockets.


 Full runtime dependencies of kernel-8.1.1: crypto-5.0, erts-12.0,
 sasl-3.0, stdlib-3.13


 ---------------------------------------------------------------------
 --- snmp-5.10.1 -----------------------------------------------------
 ---------------------------------------------------------------------

 The snmp-5.10.1 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17641    Application(s): snmp
               Related Id(s): OTP-17640

               Sockets are monitored, but the handling of the 'DOWN'
               message expected a new style socket ('socket'), old
               style (port) was not handled.


 Full runtime dependencies of snmp-5.10.1: crypto-3.3, erts-12.0,
 kernel-8.0, mnesia-4.12, runtime_tools-1.8.14, stdlib-2.5


 ---------------------------------------------------------------------
 --- stdlib-3.16.1 ---------------------------------------------------
 ---------------------------------------------------------------------

 The stdlib-3.16.1 application can be applied independently of other
 applications on a full OTP 24 installation.

 --- Fixed Bugs and Malfunctions ---

  OTP-17649    Application(s): stdlib
               Related Id(s): GH-5193, PR-5201

               Fixed a bug that could cause a child to become orphaned
               when a supervisor died between unlinking and sending
               the shutdown signal to this child.

               There was also a possibility for erratic supervisor
               reports caused by a race between a supervisor shutting
               down a child and that child exiting by itself at the
               same time.


 Full runtime dependencies of stdlib-3.16.1: compiler-5.0, crypto-3.3,
 erts-12.0, kernel-7.0, sasl-3.0


 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------

OTP 24.1

22 Sep 06:09
Compare
Choose a tag to compare

OTP 24.1

Erlang/OTP 24.1 is the first maintenance patch release for OTP 24, with mostly
bug fixes as well as a few improvements.

Below are some highlights of the release:

Highlights

  • OTP: The Efficiency Guide has been extended with a chapter about maps.

  • Stdlib: Most output functions in the io module now print extra
    error information when provided with invalid arguments.
    The functions are: io:format, io:fwrite, io:put_chars,
    io:nl and io:write.

  • Erts: init:stop() no longer unloads loaded code before
    terminating the runtime system. On systems with slow
    CPUs (such as Raspberry PI Zero), that can
    significantly speed up termination of the runtime system.

For more details about new features and potential incompatibilities see
https://erlang.org/download/OTP-24.1.README

Online documentation can be browsed here:
http://erlang.org/documentation/doc-12.1/doc

The Erlang/OTP source can also be found at GitHub on the official Erlang repository,
https://github.com/erlang/otp