Last active
August 29, 2015 14:08
-
-
Save fw42/93727d046b827fab4751 to your computer and use it in GitHub Desktop.
Module#prepend with C extensions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env ruby | |
require 'socket' | |
require 'openssl' | |
module Foo | |
end | |
OpenSSL::SSL::SSLSocket.prepend(Foo) | |
# This line crashes with the prepend() but works without it | |
# `initialize': wrong number of arguments (0 for 1..2) (ArgumentError) | |
OpenSSL::SSL::SSLSocket.new(TCPSocket.new('google.com', 443), OpenSSL::SSL::SSLContext.new) |
Also segfaults on 2.0.0 (p247)
Did we filed a bug report? is this fixed on 2.1.5 ?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I added to the
Foo
module:And this segfaults MRI: