# Erlang/OTP OTP-29.0.4 — OTP 29.0.4 - Product: Erlang/OTP (https://whatsnew.fyi/product/erlang-otp) - Vendor: Ericsson - Date: 2026-07-27 - Version: OTP-29.0.4 - Original notes: https://github.com/erlang/otp/releases/tag/OTP-29.0.4 - Permalink: https://whatsnew.fyi/product/erlang-otp/releases/otp-29.0.4 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **security** — Mitigated a denial of service attack in epmd - **fixed** — Fix an internal consistency check failure in compiler with setelement - **fixed** — Fixed crash in crypto:macN/5 when supplied MacLength was greater than length of what the underlying hash returned - **fixed** — Fixed segfault in crypto:aead_cipher_init_nif when argument validation fails - **fixed** — Fix cipher key buffer overread for chacha20_poly1305 - **fixed** — Fix infinite loop in diameter_dist:route_session/2 when avp other than Session-Id has zero length - **fixed** — Fix crash in diameter_dist:route_session/2 when Session-Id avp has zero length - **security** — Fixed heap corruption when an invalidly encoded tuple with an arity of 2^31 or larger is decoded from Erlang's External Term Format - **fixed** — When send_timeout is set and send_timeout_close is set to true, a tcp_closed message is now delivered when the timeout occurs - **security** — Fixed a crafted External Term Format payload that could crash the runtime system - **fixed** — Fixed a rounding error in 16-bit float conversion - **security** — Fixed a buffer overflow in the megaco flex scanner C driver where a property parm name exceeding 452 bytes could crash the VM - **security** — A certificate chain with crafted policyMappings extensions that could cause exponential memory consumption during path validation is now rejected with bad_cert policy_tree_exceeded ``` Patch Package: OTP 29.0.4 Git Tag: OTP-29.0.4 Date: 2026-07-27 Trouble Report Id: OTP-20136, OTP-20143, OTP-20214, OTP-20229, OTP-20237, OTP-20239, OTP-20240, OTP-20241, OTP-20242, OTP-20243, OTP-20244, OTP-20245, OTP-20248, OTP-20250, OTP-20251, OTP-20257, OTP-20258, OTP-20259, OTP-20260, OTP-20261 Seq num: CVE-2026-42792, CVE-2026-47078, CVE-2026-54890, CVE-2026-55737, CVE-2026-55953, CVE-2026-58227, ERIERL-1341, GH-11319, GH-11332, GH-11368, GH-SA-622p-qfh6-c352, GH-SA-7xgh-gmgf-q2g7, PR-11239, PR-11297, PR-11303, PR-11323, PR-11330, PR-11331, PR-11333, PR-11334, PR-11336, PR-11337, PR-11341, PR-11343, PR-11369, PR-11372, PR-11374, PR-11386, PR-27944 System: OTP Release: 29 Application: compiler-10.0.3, crypto-5.9.2, diameter-2.7.2, erts-17.0.4, megaco-4.9.1, public_key-1.21.4, ssh-6.0.3, ssl-11.7.4, stdlib-8.0.3 Predecessor: OTP 29.0.3 ``` Check out the git tag OTP-29.0.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. #### POTENTIAL INCOMPATIBILITIES - Mitigated a denial of service attack in epmd. Thanks to Ryan Moore for finding and responsibly disclosing this vulnerability to the Erlang/OTP project. Own Id: OTP-20136\ Application(s): erts\ Related Id(s): [PR-11386], [CVE-2026-42792] #### compiler-10.0.3 The compiler-10.0.3 application can be applied independently of other applications on a full OTP 29 installation. ##### Fixed Bugs and Malfunctions - compiler: Fix an internal consistency check failure with `setelement` Own Id: OTP-20261\ Related Id(s): [GH-11368], [PR-11374] > #### Full runtime dependencies of compiler-10.0.3 > > crypto-5.1, erts-13.0, kernel-8.4, stdlib-8.0 #### crypto-5.9.2 The crypto-5.9.2 application can be applied independently of other applications on a full OTP 29 installation. ##### Fixed Bugs and Malfunctions - Fixed crash in `crypto:macN/5` when supplied `MacLength` was greater than length of what the underlying hash returned. Own Id: OTP-20239\ Related Id(s): [PR-11239] - Fixed segfault in `crypto:aead_cipher_init_nif` when argument validation fails. Own Id: OTP-20241\ Related Id(s): [PR-11330] - Fix cipher key buffer overread for `chacha20_poly1305`. Own Id: OTP-20244\ Related Id(s): [PR-11337] > #### Full runtime dependencies of crypto-5.9.2 > > erts-9.0, kernel-6.0, stdlib-3.9 #### diameter-2.7.2 The diameter-2.7.2 application can be applied independently of other applications on a full OTP 29 installation. ##### Fixed Bugs and Malfunctions - Fix infinite loop in `diameter_dist:route_session/2` when avp other than `Session-Id` has zero length. Own Id: OTP-20242\ Related Id(s): [PR-11331] - Fix crash in `diameter_dist:route_session/2` when `Session-Id` (code: 263) avp has zero length. Own Id: OTP-20243\ Related Id(s): [PR-11333] > #### Full runtime dependencies of diameter-2.7.2 > > erts-10.0, kernel-3.2, ssl-9.0, stdlib-5.0 #### erts-17.0.4 The erts-17.0.4 application can be applied independently of other applications on a full OTP 29 installation. ##### Fixed Bugs and Malfunctions - Mitigated a denial of service attack in epmd. Thanks to Ryan Moore for finding and responsibly disclosing this vulnerability to the Erlang/OTP project. Own Id: OTP-20136\ Related Id(s): [PR-11386], [CVE-2026-427 _[Truncated at 4000 characters — full notes: https://github.com/erlang/otp/releases/tag/OTP-29.0.4]_