Skip to content

SEGV with OpenSSL::PKey::DSA.new.to_s #845

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ksss opened this issue Jan 24, 2025 · 3 comments · Fixed by #847
Closed

SEGV with OpenSSL::PKey::DSA.new.to_s #845

ksss opened this issue Jan 24, 2025 · 3 comments · Fixed by #847

Comments

@ksss
Copy link

ksss commented Jan 24, 2025

ruby -v: ruby 3.5.0dev (2025-01-22T23:39:50Z master 9bec592cc4) +PRISM [arm64-darwin23]
openssl -v: OpenSSL 3.4.0 22 Oct 2024 (Library: OpenSSL 3.4.0 22 Oct 2024)
OpenSSL gem: 3.3.0(a1012fc)
OS: macOS

Repro

ruby -r openssl -e 'OpenSSL::PKey::DSA.new.to_s'
core dump
$ bundle exec ruby -r openssl -e 'OpenSSL::PKey::DSA.new.to_s'
Source locally installed gems is ignoring #<Bundler::StubSpecification name=zlib version=3.2.1 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=strscan version=3.1.2 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=psych version=5.2.3 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=prism version=1.3.0 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=json version=2.9.1 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=io-console version=0.8.0 platform=ruby> because it is missing extensions
Source locally installed gems is ignoring #<Bundler::StubSpecification name=date version=3.4.1 platform=ruby> because it is missing extensions
-e:1: [BUG] Segmentation fault at 0x0000000000000010
ruby 3.5.0dev (2025-01-22T23:39:50Z master 9bec592cc4) +PRISM [arm64-darwin23]

-- Crash Report log information --------------------------------------------
   See Crash Report log file in one of the following locations:
     * ~/Library/Logs/DiagnosticReports
     * /Library/Logs/DiagnosticReports
   for more details.
Don't forget to include the above Crash Report log file in bug reports.

-- Control frame information -----------------------------------------------
c:0003 p:---- s:0010 e:000009 CFUNC  :export
c:0002 p:0006 s:0006 e:000005 EVAL   -e:1 [FINISH]
c:0001 p:0000 s:0003 E:0020b0 DUMMY  [FINISH]

-- Ruby level backtrace information ----------------------------------------
-e:1:in '<main>'
-e:1:in 'export'

-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 1

-- Machine register context ------------------------------------------------
  x0: 0x0000000000000000  x1: 0x0000000000000000  x2: 0x0000000000000000
  x3: 0x00006000037f9dd8  x4: 0x0000000000000008  x5: 0x0000000000001dc0
  x6: 0x00006000037f9dc0  x7: 0x0000000000000000 x18: 0x0000000000000000
 x19: 0x00006000037f9dc0 x20: 0x0000000000000000 x21: 0x000000000008000d
 x22: 0x0000000000000000 x23: 0x0000000000000000 x24: 0x0000000000000000
 x25: 0x0000600000655040 x26: 0x0000000000000000 x27: 0x0000000000000000
 x28: 0x0000000000000000  lr: 0x000000011c8e61dc  fp: 0x000000016f3fdae0
  sp: 0x000000016f3fdab0

-- C level backtrace information -------------------------------------------
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(rb_vm_bugreport+0xb6c) [0x101778308]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(rb_bug_for_fatal_signal+0x100) [0x1015af34c]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(sigsegv+0x84) [0x1016d8668]
/usr/lib/system/libsystem_platform.dylib(_sigtramp+0x38) [0x188f5a584]
/opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib(bn_to_asn1_string+0x4c) [0x11c8e61dc]
/opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib(dsa_pub_encode) [0x11c950f24]
/opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib(i2d_PUBKEY) [0x11ca990ec]
/opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib(PEM_ASN1_write_bio) [0x11ca23194]
/opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib(PEM_write_bio_PUBKEY) [0x11ca21e6c]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle(ossl_pkey_export_spki+0x68) [0x1012d5318] ossl_pkey.c:932
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle(ossl_pkey_export_spki) (null):0
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle(ossl_dsa_export+0x94) [0x1012d8b1c] ossl_pkey_dsa.c:276
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(vm_call_cfunc_with_frame_+0xf0) [0x101769eb4]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(vm_exec_core+0x242c) [0x10174ddd8]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(rb_vm_exec+0x1ec) [0x10174a490]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(rb_ec_exec_node+0x98) [0x1015ba418]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib(ruby_run_node+0x44) [0x1015ba338]
/Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby(main+0x68) [0x100a03f1c]

-- Other runtime information -----------------------------------------------

* Loaded script: -e

* Loaded features:

    0 enumerator.so
    1 thread.rb
    2 fiber.so
    3 rational.so
    4 complex.so
    5 ruby2_keywords.rb
    6 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
    7 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
    8 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/rbconfig.rb
    9 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/compatibility.rb
   10 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/defaults.rb
   11 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/deprecate.rb
   12 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/errors.rb
   13 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/target_rbconfig.rb
   14 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/unknown_command_spell_checker.rb
   15 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/exceptions.rb
   16 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/basic_specification.rb
   17 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/stub_specification.rb
   18 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/platform.rb
   19 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/specification_record.rb
   20 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/util/list.rb
   21 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/version.rb
   22 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/requirement.rb
   23 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/specification.rb
   24 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/util.rb
   25 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/dependency.rb
   26 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/core_ext/kernel_gem.rb
   27 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
   28 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/monitor.rb
   29 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/version.rb
   30 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/rubygems_integration.rb
   31 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/current_ruby.rb
   32 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/shared_helpers.rb
   33 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/fileutils/lib/fileutils.rb
   34 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendored_fileutils.rb
   35 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/path_support.rb
   36 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
   37 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/pathname.rb
   38 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/errors.rb
   39 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/environment_preserver.rb
   40 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/plugin/api.rb
   41 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/plugin.rb
   42 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/text.rb
   43 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/git.rb
   44 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/installed.rb
   45 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/specific_file.rb
   46 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/local.rb
   47 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/lock.rb
   48 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source/vendor.rb
   49 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/source.rb
   50 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/match_metadata.rb
   51 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/gem_helpers.rb
   52 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/match_platform.rb
   53 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/force_platform.rb
   54 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/name_tuple.rb
   55 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/uri.rb
   56 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/rubygems_ext.rb
   57 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/build_metadata.rb
   58 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler.rb
   59 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/self_manager.rb
   60 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/settings.rb
   61 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/yaml_serializer.rb
   62 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/ui.rb
   63 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/command.rb
   64 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb
   65 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/error.rb
   66 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/invocation.rb
   67 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/nested_context.rb
   68 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/parser/argument.rb
   69 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/parser/arguments.rb
   70 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/parser/option.rb
   71 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/parser/options.rb
   72 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/parser.rb
   73 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell.rb
   74 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/line_editor/basic.rb
   75 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/line_editor/readline.rb
   76 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/line_editor.rb
   77 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/util.rb
   78 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/base.rb
   79 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor.rb
   80 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendored_thor.rb
   81 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/ui/shell.rb
   82 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/terminal.rb
   83 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/column_printer.rb
   84 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/table_printer.rb
   85 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb
   86 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/basic.rb
   87 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/thor/lib/thor/shell/color.rb
   88 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/user_interaction.rb
   89 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/ui/rg_proxy.rb
   90 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/feature_flag.rb
   91 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source.rb
   92 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source/path.rb
   93 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source/git.rb
   94 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source/rubygems.rb
   95 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/lockfile_parser.rb
   96 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/definition.rb
   97 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/dependency.rb
   98 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/ruby_dsl.rb
   99 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/dsl.rb
  100 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source_list.rb
  101 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/source/metadata.rb
  102 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/checksum.rb
  103 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/uri_normalizer.rb
  104 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/version.rb
  105 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/rfc2396_parser.rb
  106 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/rfc3986_parser.rb
  107 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/common.rb
  108 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/generic.rb
  109 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/file.rb
  110 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/ftp.rb
  111 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/http.rb
  112 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/https.rb
  113 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/ldap.rb
  114 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/ldaps.rb
  115 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/mailto.rb
  116 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/ws.rb
  117 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri/wss.rb
  118 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems/vendor/uri/lib/uri.rb
  119 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendored_uri.rb
  120 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/lazy_specification.rb
  121 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendor/tsort/lib/tsort.rb
  122 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/vendored_tsort.rb
  123 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/spec_set.rb
  124 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/runtime.rb
  125 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/materialization.rb
  126 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/index.rb
  127 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/match_remote_metadata.rb
  128 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/remote_specification.rb
  129 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/stub_specification.rb
  130 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/ruby_version.rb
  131 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/endpoint_specification.rb
  132 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundled_gems.rb
  133 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/bundler/setup.rb
  134 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/rubygems.rb
  135 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/error_highlight/version.rb
  136 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/error_highlight/base.rb
  137 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/error_highlight/formatter.rb
  138 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/error_highlight/core_ext.rb
  139 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/error_highlight.rb
  140 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/version.rb
  141 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/core_ext/name_error.rb
  142 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/levenshtein.rb
  143 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/jaro_winkler.rb
  144 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checker.rb
  145 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
  146 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
  147 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/name_error_checkers.rb
  148 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/method_name_checker.rb
  149 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/key_error_checker.rb
  150 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/null_checker.rb
  151 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/tree_spell_checker.rb
  152 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/require_path_checker.rb
  153 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/spell_checkers/pattern_key_name_checker.rb
  154 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean/formatter.rb
  155 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/did_you_mean.rb
  156 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/syntax_suggest/core_ext.rb
  157 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/digest/version.rb
  158 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
  159 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/digest/loader.rb
  160 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/digest.rb
  161 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
  162 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/bn.rb
  163 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/asn1.rb
  164 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/marshal.rb
  165 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/pkey.rb
  166 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/cipher.rb
  167 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/digest.rb
  168 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/hmac.rb
  169 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/x509.rb
  170 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/buffering.rb
  171 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
  172 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/socket.bundle
  173 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/socket.rb
  174 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/ipaddr.rb
  175 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/ssl.rb
  176 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/pkcs5.rb
  177 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl/version.rb
  178 /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/openssl.rb

* Process memory map:

100a00000-100a04000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a04000-100a08000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a08000-100a0c000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a0c000-100a10000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a10000-100a20000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a20000-100a2c000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/bin/ruby
100a30000-100a40000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
100a40000-100a44000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
100a44000-100a48000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
100a48000-100a4c000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
100a4c000-100a50000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/encdb.bundle
100a50000-100a60000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
100a60000-100a64000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
100a64000-100a68000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
100a68000-100a6c000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
100a6c000-100a70000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/enc/trans/transdb.bundle
100a70000-100a80000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
100a80000-100a84000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
100a84000-100a88000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
100a88000-100a8c000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
100a8c000-100a90000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/monitor.bundle
100a90000-100aa0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
100aa0000-100aa4000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
100aa4000-100aa8000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
100aa8000-100aac000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
100aac000-100ab0000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/digest.bundle
100ab0000-100ac0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
100ac0000-100ac4000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
100ac4000-100ac8000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
100ac8000-100acc000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
100acc000-100ad0000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/io/nonblock.bundle
100ad0000-100ae0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100af0000-100b00000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100b10000-100b20000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100b30000-100b40000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100b50000-100b60000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100b70000-100b80000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100b90000-100ba0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100bb0000-100bc0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100bd0000-100be0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100bf0000-100c00000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100c10000-100c20000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100c30000-100c40000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100c50000-100c60000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100c70000-100c80000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100c80000-100c90000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100ca0000-100cb0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100cc0000-100cd0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100ce0000-100cf0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100d00000-100d10000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100d20000-100d30000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100d40000-100d50000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100d60000-100d70000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100d80000-100d90000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100da4000-100dac000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100dac000-100db0000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100db0000-100db4000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100db4000-100db8000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/pathname.bundle
100dc0000-100dd0000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100de0000-100df0000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e00000-100e10000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e10000-100e50000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e50000-100e54000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e54000-100e5c000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e5c000-100e60000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e60000-100e64000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e64000-100e68000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e68000-100e6c000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e6c000-100e78000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e78000-100e7c000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e7c000-100e80000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e80000-100e8c000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e8c000-100e90000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e90000-100e94000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100e94000-100ea0000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100ea0000-100ea4000 --- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100ea4000-100ea8000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100ea8000-100eac000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100eac000-100eb0000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100ec4000-100f1c000 r-x /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100f1c000-100f20000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100f20000-100f24000 rw- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100f24000-100f34000 r-- /opt/homebrew/Cellar/gmp/6.3.0/lib/libgmp.10.dylib
100f40000-100f50000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
100f60000-100f70000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
100f80000-100f90000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
100fa0000-100fb0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
100fc0000-100fd0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
100fe0000-100ff0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101000000-101010000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101020000-101030000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101040000-101050000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101060000-101070000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101080000-101090000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1010a0000-1010b0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1010c0000-1010d0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1010e0000-1010f0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101100000-101110000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101120000-101130000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101140000-101150000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101160000-101170000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101180000-101190000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1011a0000-1011b0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1011c0000-1011d0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1011e0000-1011f0000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101200000-101210000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101220000-101230000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101240000-101250000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101260000-101270000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1012c0000-1012fc000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
1012fc000-101300000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101300000-101304000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101304000-101330000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle
101330000-101354000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/socket.bundle
101354000-101358000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/socket.bundle
101358000-10135c000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/socket.bundle
10135c000-10136c000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/socket.bundle
10136c000-1013d8000 r-- /usr/lib/system/libsystem_platform.dylib
101404000-101490000 r-x /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libssl.3.dylib
101490000-10149c000 r-- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libssl.3.dylib
10149c000-1014a0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libssl.3.dylib
1014a0000-1014d8000 r-- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libssl.3.dylib
1014fc000-1019f8000 r-x /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
1019f8000-101a14000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
101a14000-101a18000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
101a18000-101a2c000 rw- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
101a2c000-101bb8000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
101bb8000-102fb8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
102fb8000-10afb8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
10afb8000-112fb8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
112fb8000-11afb8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11afb8000-11afbc000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11afbc000-11b060000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b060000-11b064000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b064000-11b108000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b108000-11b10c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b10c000-11b1b0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b1b0000-11b1b4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b1b4000-11b258000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b258000-11b25c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b25c000-11b300000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b300000-11b304000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b304000-11b3a8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b3a8000-11b3ac000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b3ac000-11b450000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b450000-11b454000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b454000-11b4f8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b4f8000-11b4fc000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b4fc000-11b5a0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b5a0000-11b5a4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b5a4000-11b648000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b648000-11b64c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b64c000-11b6f0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b6f0000-11b6f4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b6f4000-11b798000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b798000-11b79c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b79c000-11b840000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b840000-11b844000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b844000-11b8e8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b8e8000-11b8ec000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b8ec000-11b990000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b990000-11b994000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11b994000-11ba38000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11ba38000-11ba3c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11ba3c000-11bae0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bae0000-11bae4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bae4000-11bb88000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bb88000-11bb8c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bb8c000-11bc30000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bc30000-11bc34000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bc34000-11bcd8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bcd8000-11bcdc000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bcdc000-11bd80000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bd80000-11bd84000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bd84000-11be28000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11be28000-11be2c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11be2c000-11bed0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bed0000-11bed4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bed4000-11bf78000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bf78000-11bf7c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11bf7c000-11c020000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c020000-11c024000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c024000-11c0c8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c0c8000-11c0cc000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c0cc000-11c170000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c170000-11c174000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c174000-11c218000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c218000-11c21c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c21c000-11c2c0000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c2c0000-11c2c4000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c2c4000-11c368000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c368000-11c36c000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c36c000-11c410000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c410000-11c414000 --- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c414000-11c4b8000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c4b8000-11c8d8000 r-- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11c8d8000-11cbcc000 r-x /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11cbcc000-11cc2c000 r-- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11cc2c000-11cc30000 rw- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11cc30000-11ccf8000 r-- /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.3.dylib
11ccf8000-11d3a0000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/libruby.3.5.dylib
11d3a0000-11d4b0000 r-- /Users/yuki.kurihara/.rbenv/versions/ruby-dev/lib/ruby/3.5.0+0/arm64-darwin23/openssl.bundle.dSYM/Contents/Resources/DWARF/openssl.bundle
147600000-147700000 rw-
147700000-147800000 rw-
147800000-148000000 rw-
148000000-150000000 rw-
150000000-150100000 rw-
150100000-150200000 rw-
157600000-157700000 rw-
157700000-157800000 rw-
157800000-158000000 rw-
158000000-160000000 rw-
160000000-160800000 rw-
16b400000-16ec04000 ---
16ec04000-16f400000 rw-
16f400000-16f404000 ---
16f404000-16f48c000 rw-
180000000-1ee000000 r--
1ee000000-1efa9c000 r--
1efa9c000-1efac0000 rw-
1efac0000-1f0000000 rw-
1f0000000-1f0b58000 r--
1f0b58000-1f5c98000 rw-
1f5c98000-1fb4e0000 r--
1fb4e0000-1fc000000 r--
1fc000000-260000000 r--
260000000-260e60000 rw-
260e60000-264c20000 rw-
264c20000-266dbc000 r--
266dbc000-268000000 r--
268000000-300000000 r--
fc0000000-1000000000 ---
1000000000-7000000000 ---
600000000000-600020000000 rw-
[IMPORTANT]
Don't forget to include the Crash Report log file under
DiagnosticReports directory in bug reports.

[1]    74567 segmentation fault  bundle exec ruby -r openssl -e 'OpenSSL::PKey::DSA.new.to_s'
@rhenium
Copy link
Member

rhenium commented Jan 25, 2025

This is similar to #168.

Calling #public_to_der defined on the superclass OpenSSL::PKey::PKey also causes a segfault: ruby -ropenssl -e'OpenSSL::PKey::DSA.new.public_to_der'

When it's compiled with OpenSSL 3.0 or later, OpenSSL::PKey::DSA.new without arguments is not useful at all because pkeys are immutable and you can't set components afterwards. I think that overload should also be removed.

rhenium added a commit to rhenium/ruby-openssl that referenced this issue Jan 29, 2025
Call ossl_pkey_check_public_key() to ensure that
EVP_PKEY_missing_parameters() passes. This check should be cheap.

DSA#{to_der,to_pem,export,to_s} and PKey#{public_to_der,public_to_pem}
cause a segfault if the receiver is an empty DSA instance with no
parameters set.

Fixes <ruby#845>.
rhenium added a commit to rhenium/ruby-openssl that referenced this issue Jan 29, 2025
Call ossl_pkey_check_public_key() to ensure that
EVP_PKEY_missing_parameters() passes. This check should be cheap.

DSA#{to_der,to_pem,export,to_s} and PKey#{public_to_der,public_to_pem}
cause a segfault if the receiver is an empty DSA instance with no
parameters set.

Fixes <ruby#845>.
rhenium added a commit to rhenium/ruby-openssl that referenced this issue Jan 29, 2025
Call ossl_pkey_check_public_key() to ensure that
EVP_PKEY_missing_parameters() passes. This check should be cheap.

DSA#{to_der,to_pem,export,to_s} and PKey#{public_to_der,public_to_pem}
cause a segfault if the receiver is an empty DSA instance with no
parameters set.

Fixes <ruby#845>.
@rhenium rhenium linked a pull request Jan 29, 2025 that will close this issue
matzbot pushed a commit to ruby/ruby that referenced this issue Jan 29, 2025
… key

Call ossl_pkey_check_public_key() to ensure that
EVP_PKEY_missing_parameters() passes. This check should be cheap.

DSA#{to_der,to_pem,export,to_s} and PKey#{public_to_der,public_to_pem}
cause a segfault if the receiver is an empty DSA instance with no
parameters set.

Fixes <ruby/openssl#845>.

ruby/openssl@5aeed935e5
@rhenium
Copy link
Member

rhenium commented Jan 29, 2025

#847 will fix the segfault.

#848 is to prevent an empty DSA to be created when it's linked with OpenSSL 3.0 or later, since it's not useful.

@rhenium rhenium closed this as completed Jan 29, 2025
@ksss
Copy link
Author

ksss commented Jan 30, 2025

@rhenium
Thank you for your response.

I noticed this issue while exploring the RBS of OpenSSL and testing its API.
If there are any APIs that you wouldn't recommend using, I can modify the RBS accordingly. Let me know if you have any.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants