From: Jeremy Evans Subject: Update: Ruby 3.2.9 To: OpenBSD ports Date: Thu, 24 Jul 2025 18:45:22 -0700 Simple update to the latest release of Ruby 3.2. Release announcement at: https://www.ruby-lang.org/en/news/2025/07/24/ruby-3-2-9-released/ Fixes: * CVE-2025-24294: Possible Denial of Service in resolv gem * CVE-2025-43857: DoS vulnerability in net-imap The post-extract addition is to fix a build issue related to net-imap. I'm guessing we'll be able to remove it in the next release. Tested on amd64. Will be committing in a couple days unless I hear objections. Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/lang/ruby/3.2/Makefile,v diff -u -p -u -p -r1.17 Makefile --- Makefile 22 Jun 2025 19:30:02 -0000 1.17 +++ Makefile 25 Jul 2025 01:25:27 -0000 @@ -1,9 +1,8 @@ -VERSION = 3.2.8 +VERSION = 3.2.9 DISTNAME = ruby-${VERSION} SHARED_LIBS = ruby32 0.0 NEXTVER = 3.3 PKGSPEC-main ?= ruby->=3.2.0,<${NEXTVER} -REVISION-main = 1 PSEUDO_FLAVORS= no_ri_docs bootstrap # Do not build the RI docs on slow arches @@ -43,6 +42,7 @@ TEST_TARGET = check TESTOPTS="-v -q" post-extract: ${POST_EXTRACT} + rm ${WRKSRC}/.bundle/gems/net-imap-0.3.9/net-imap.gemspec pre-configure: ${FIX_RIPPER} Index: distinfo =================================================================== RCS file: /cvs/ports/lang/ruby/3.2/distinfo,v diff -u -p -u -p -r1.9 distinfo --- distinfo 27 Mar 2025 15:57:35 -0000 1.9 +++ distinfo 24 Jul 2025 14:24:33 -0000 @@ -1,2 +1,2 @@ -SHA256 (ruby-3.2.8.tar.gz) = d6zdjPu+H45XO15lNuA8UQPfmJ3AX6aMcPARgzw1YHU= -SIZE (ruby-3.2.8.tar.gz) = 20549999 +SHA256 (ruby-3.2.9.tar.gz) = q7rZjbmusVJ3Ow01ho5QADuMRn89BhUld8Tf7Z2I7So= +SIZE (ruby-3.2.9.tar.gz) = 20560944 Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/lang/ruby/3.2/pkg/PLIST-main,v diff -u -p -u -p -r1.9 PLIST-main --- pkg/PLIST-main 27 Mar 2025 15:57:35 -0000 1.9 +++ pkg/PLIST-main 25 Jul 2025 01:38:55 -0000 @@ -82,6 +82,7 @@ include/ruby-${REV}/ruby/internal/attr/n include/ruby-${REV}/ruby/internal/attr/noexcept.h include/ruby-${REV}/ruby/internal/attr/noinline.h include/ruby-${REV}/ruby/internal/attr/nonnull.h +include/ruby-${REV}/ruby/internal/attr/nonstring.h include/ruby-${REV}/ruby/internal/attr/noreturn.h include/ruby-${REV}/ruby/internal/attr/pure.h include/ruby-${REV}/ruby/internal/attr/restrict.h @@ -222,7 +223,7 @@ include/ruby-${REV}/ruby/util.h include/ruby-${REV}/ruby/version.h include/ruby-${REV}/ruby/vm.h include/ruby-${REV}/${SUB}/ -include/ruby-${REV}/${SUB}/rb_mjit_min_header-3.2.8.h +include/ruby-${REV}/${SUB}/rb_mjit_min_header-3.2.9.h include/ruby-${REV}/${SUB}/ruby/ include/ruby-${REV}/${SUB}/ruby/config.h @so lib/libruby32.so @@ -1575,7 +1576,7 @@ lib/ruby/gems/${REV}/cache/debug-1.7.1.g lib/ruby/gems/${REV}/cache/matrix-0.4.2.gem lib/ruby/gems/${REV}/cache/minitest-5.25.1.gem lib/ruby/gems/${REV}/cache/net-ftp-0.2.1.gem -lib/ruby/gems/${REV}/cache/net-imap-0.3.8.gem +lib/ruby/gems/${REV}/cache/net-imap-0.3.9.gem lib/ruby/gems/${REV}/cache/net-pop-0.1.2.gem lib/ruby/gems/${REV}/cache/net-smtp-0.3.4.gem lib/ruby/gems/${REV}/cache/power_assert-2.0.3.gem @@ -1724,44 +1725,45 @@ lib/ruby/gems/${REV}/gems/net-ftp-0.2.1/ lib/ruby/gems/${REV}/gems/net-ftp-0.2.1/lib/net/ lib/ruby/gems/${REV}/gems/net-ftp-0.2.1/lib/net/ftp.rb lib/ruby/gems/${REV}/gems/net-http-0.4.1/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/Gemfile -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/LICENSE.txt -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/README.md -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/Rakefile -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/benchmarks/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/benchmarks/stringprep.yml -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/benchmarks/table-regexps.yml -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/docs/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/docs/styles.css -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/cram_md5.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/digest_md5.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/login.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/plain.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/authenticators/xoauth2.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/command_data.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/data_encoding.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/errors.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/flags.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/response_data.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/response_parser.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl/saslprep.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl/saslprep_tables.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl/stringprep.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/lib/net/imap/sasl/stringprep_tables.rb -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/rakelib/ -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/rakelib/rdoc.rake -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/rakelib/rfcs.rake -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/rakelib/saslprep.rake -lib/ruby/gems/${REV}/gems/net-imap-0.3.8/rakelib/string_prep_tables_generator.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/Gemfile +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/LICENSE.txt +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/README.md +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/Rakefile +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/benchmarks/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/benchmarks/stringprep.yml +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/benchmarks/table-regexps.yml +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/docs/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/docs/styles.css +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/cram_md5.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/digest_md5.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/login.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/plain.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/authenticators/xoauth2.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/command_data.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/data_encoding.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/errors.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/flags.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/response_data.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/response_parser.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/response_reader.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl/saslprep.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl/saslprep_tables.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl/stringprep.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/lib/net/imap/sasl/stringprep_tables.rb +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/rakelib/ +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/rakelib/rdoc.rake +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/rakelib/rfcs.rake +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/rakelib/saslprep.rake +lib/ruby/gems/${REV}/gems/net-imap-0.3.9/rakelib/string_prep_tables_generator.rb lib/ruby/gems/${REV}/gems/net-pop-0.1.2/ lib/ruby/gems/${REV}/gems/net-pop-0.1.2/Gemfile lib/ruby/gems/${REV}/gems/net-pop-0.1.2/LICENSE.txt @@ -2406,7 +2408,7 @@ lib/ruby/gems/${REV}/gems/rdoc-6.5.1.1/e lib/ruby/gems/${REV}/gems/readline-0.0.3/ lib/ruby/gems/${REV}/gems/readline-ext-0.1.5/ lib/ruby/gems/${REV}/gems/reline-0.3.2/ -lib/ruby/gems/${REV}/gems/resolv-0.2.2/ +lib/ruby/gems/${REV}/gems/resolv-0.2.3/ lib/ruby/gems/${REV}/gems/resolv-replace-0.1.1/ lib/ruby/gems/${REV}/gems/rexml-3.3.9/ lib/ruby/gems/${REV}/gems/rexml-3.3.9/LICENSE.txt @@ -2725,7 +2727,7 @@ lib/ruby/gems/${REV}/specifications/defa lib/ruby/gems/${REV}/specifications/default/readline-0.0.3.gemspec lib/ruby/gems/${REV}/specifications/default/readline-ext-0.1.5.gemspec lib/ruby/gems/${REV}/specifications/default/reline-0.3.2.gemspec -lib/ruby/gems/${REV}/specifications/default/resolv-0.2.2.gemspec +lib/ruby/gems/${REV}/specifications/default/resolv-0.2.3.gemspec lib/ruby/gems/${REV}/specifications/default/resolv-replace-0.1.1.gemspec lib/ruby/gems/${REV}/specifications/default/rinda-0.1.1.gemspec lib/ruby/gems/${REV}/specifications/default/ruby2_keywords-0.0.5.gemspec @@ -2750,7 +2752,7 @@ lib/ruby/gems/${REV}/specifications/defa lib/ruby/gems/${REV}/specifications/matrix-0.4.2.gemspec lib/ruby/gems/${REV}/specifications/minitest-5.25.1.gemspec lib/ruby/gems/${REV}/specifications/net-ftp-0.2.1.gemspec -lib/ruby/gems/${REV}/specifications/net-imap-0.3.8.gemspec +lib/ruby/gems/${REV}/specifications/net-imap-0.3.9.gemspec lib/ruby/gems/${REV}/specifications/net-pop-0.1.2.gemspec lib/ruby/gems/${REV}/specifications/net-smtp-0.3.4.gemspec lib/ruby/gems/${REV}/specifications/power_assert-2.0.3.gemspec