Erlang/OTP 23.3.4.8

This release of Erlang/OTP can be built from source or installed using pre-built packages for your OS or third-party tools (such as kerl or asdf).

docker run -it erlang:23.3.4.8
Patch Package OTP 23.3.4.8
Git Tag OTP-23.3.4.8
Date 2021-10-19
Issue Id
ERIERL-706
System OTP
Release 23
Application

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.

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.

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.

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