OpenSSL::SSL::SSLContext#set_params

e$B@>;3OB9-$G$9!#e(B

lib/net/smtp.rbe$B$NJ}$Oe(Btrunke$B$N$b$N$r$=$N$^$^%3%T!<$7$Fe(Bruby_1_8e$B$Ge(B
SMTP over SSLe$B$be(BSTARTTLSe$B$b;H$($k$3$H$,3NG’$G$-$?$N$G$9$,!"e(B
lib/net/pop.rbe$B$NJ}$Oe(BOpenSSL::SSL::SSLContext#set_paramse$B$Ne(B
NoMethodErrore$B$G$=$N$^$^$@$HF0$-$^$;$s$G$7$?!#e(B

net/pop.rb:538:in do_start': undefined methodset_params’ for
#OpenSSL::SSL::SSLContext:0xb7b34bf8 (NoMethodError)

r14479e$B$NJQ99$GF~$C$F$$$?$h$&$@$C$?$N$G!"La$7$F$_$k$He(B
OpenSSL::SSLContext.builde$B$,e(BNoMethodErrore$B$K$J$j$^$7$?!#e(B

e$B%;%-%e%j%F%#$K4XO"$9$k=$@5$N$h$&$K8+$($k$N$G!"$3$l0J>ee(B
e$BC1=c$KLa$9$N$O$h$/$J$5$=$&$H;W$C$F;_$a$F$7$^$C$?$N$G$9$,!"e(B
e$B$I$&$9$l$P$$$$$N$G$7$g$&$+e(B?

At Tue, 15 Apr 2008 18:03:30 +0900,
Kazuhiro NISHIYAMA wrote:

セキュリティに関連する修正のように見えるので、これ以上
単純に戻すのはよくなさそうと思って止めてしまったのですが、
どうすればいいのでしょうか?

 tracker にファイルしておきました。

http://rubyforge.org/tracker/index.php?func=detail&aid=19552&group_id=426&atid=22040

e$B@>;3OB9-$G$9!#e(B

At Tue, 15 Apr 2008 18:03:30 +0900,
Kazuhiro NISHIYAMA wrote:

lib/net/smtp.rbe$B$NJ}$Oe(Btrunke$B$N$b$N$r$=$N$^$^%3%T!<$7$Fe(Bruby_1_8e$B$Ge(B
SMTP over SSLe$B$be(BSTARTTLSe$B$b;H$($k$3$H$,3NG’$G$-$?$N$G$9$,!"e(B
lib/net/pop.rbe$B$NJ}$Oe(BOpenSSL::SSL::SSLContext#set_paramse$B$Ne(B
NoMethodErrore$B$G$=$N$^$^$@$HF0$-$^$;$s$G$7$?!#e(B

net/pop.rb:538:in do_start': undefined method set_params’ for #OpenSSL::SSL::SSLContext:0xb7b34bf8 (NoMethodError)

r14479e$B$NJQ99$GF~$C$F$$$?$h$&$@$C$?$N$G!"La$7$F$_$k$He(B
OpenSSL::SSLContext.builde$B$,e(BNoMethodErrore$B$K$J$j$^$7$?!#e(B

IRCe$B$GJ9$$$?e(B
svn diff -r 14269:14479 ext/openssl/lib/openssl/ssl.rb
e$B$G;n$7$F$_$^$7$?$,!"Nc30$,JQ$o$C$?$@$1$GF0$-$^$;$s$G$7$?!#e(B

…/lib/ruby/1.8/openssl/ssl.rb:39:in __send__': undefined method ssl_version=’ for #OpenSSL::SSL::SSLContext:0xb7b3f6fc
(NoMethodError)
from …/lib/ruby/1.8/openssl/ssl.rb:39:in set_params' from .../lib/ruby/1.8/openssl/ssl.rb:39:in each’
from …/lib/ruby/1.8/openssl/ssl.rb:39:in set_params' from .../lib/ruby/1.8/net/pop.rb:538:in do_start’
from …/lib/ruby/1.8/net/pop.rb:522:in `start’

e$B;n$7$F$$$k%9%/%j%W%H$O0J2<$N$h$&$JFbMF$G$9!#e(B

require “net/pop”
pop = Net::POP.new(“pop.gmail.com”, “995”)
pop.set_debug_output $stderr
pop.enable_ssl
pop.start(‘YourAccount’, ‘YourPassword’) do |pop|
end

e$B@>;3OB9-$G$9!#e(B

At Wed, 23 Apr 2008 15:40:29 +0900,
Kazuhiro NISHIYAMA wrote:

IRCe$B$GJ9$$$?e(B
svn diff -r 14269:14479 ext/openssl/lib/openssl/ssl.rb
e$B$G;n$7$F$_$^$7$?$,!"Nc30$,JQ$o$C$?$@$1$GF0$-$^$;$s$G$7$?!#e(B

e$B$5$i$Ke(Bext/openssl/ossl_ssl.ce$B$r%3%T!<$9$k$He(Bpop3se$BBP1~$OF0$/$h$&$Ke(B
e$B$J$C$?$N$G$9$,!"%F%9%H$be(Bbackporte$B$7$h$&$H$7$Fe(Btest/openssl/test_ssl.rbe$B$re(B
e$B;n$9$He(B1F1Ee$B$K$J$j$^$7$?!#e(B

  1. Error:
    test_read_and_write(OpenSSL::TestSSL):
    ArgumentError: wrong number of arguments (2 for 1)
    test/openssl/test_ssl.rb:204:in gets' test/openssl/test_ssl.rb:204:intest_read_and_write’
    test/openssl/test_ssl.rb:197:in times' test/openssl/test_ssl.rb:197:intest_read_and_write’
    test/openssl/test_ssl.rb:129:in call' test/openssl/test_ssl.rb:129:instart_server’
    test/openssl/test_ssl.rb:177:in `test_read_and_write’

  2. Failure:
    test_sslctx_set_params(OpenSSL::TestSSL)
    [test/openssl/test_ssl.rb:353:in test_sslctx_set_params' test/openssl/test_ssl.rb:129:incall’
    test/openssl/test_ssl.rb:129:in start_server' test/openssl/test_ssl.rb:343:intest_sslctx_set_params’]:
    is not true.

1Ee$B$Oe(Blimite$BIU$-$Ne(Bgetse$B$,e(B1.9
featurese$B$J$N$G!"%F%9%H$r:o$l$P$$$$$H$7$F!“e(B
test_sslctx_set_paramse$B$NJ}$Oe(Bset_paramse$B$N<BAu$,e(BHashe$B$N%-!<$N=gHV$Ke(B
e$B0MB8$7$F$$$ke(B(ssl_versione$B$,e(Bcipherse$B$NA0$K$”$k$3$H$r4|BT$7$F$$$ke(B)e$B$N$Ke(B
params.each{|name, value| self.send("#{name}=", value) }
e$B$Ge(Bcipherse$B$N8e$Ke(Bssl_versione$B$,Mh$F$7$^$C$Fe(BFailuree$B$K$J$C$F$$$k$h$&$G$9!#e(B

e$B=gHV$K0MB8$9$k$b$N$,e(Bssl_versione$B$@$1$J$ie(B
self.ssl_version = params.delete(:ssl_version)
e$B$rDI2C$9$l$PNI$$$+$H;W$C$?$N$G$9$,!"$I$&$G$7$g$&$+e(B?

At Wed, 16 Apr 2008 04:51:54 +0900,
I wrote:

OpenSSL::SSLContext.buildがNoMethodErrorになりました。

セキュリティに関連する修正のように見えるので、これ以上
単純に戻すのはよくなさそうと思って止めてしまったのですが、
どうすればいいのでしょうか?

 tracker にファイルしておきました。

http://rubyforge.org/tracker/index.php?func=detail&aid=19552&group_id=426&atid=22040

 バックポートしたようですが、問題は解消されたでしょうか。

 解消できたら上記をcloseしてください。