Bug #3384
closedext/openssl: avoid to use cast
Description
=begin
ext/opensslで、この部分だけ旧来のcastを使用しているのは何か理由があるのでしょうか?
--- ext/openssl/ossl_ssl.c.orig 2010-05-23 12:18:51.000000000 +0000
+++ ext/openssl/ossl_ssl.c
@@ -700,10 +700,10 @@ ossl_sslctx_get_ciphers(VALUE self)
if (!ciphers)
return rb_ary_new();
- num = sk_num((STACK*)ciphers);
- num = sk_SSL_CIPHER_num(ciphers);
ary = rb_ary_new2(num);
for(i = 0; i < num; i++){
-
cipher = (SSL_CIPHER*)sk_value((STACK*)ciphers, i);
-
}cipher = sk_SSL_CIPHER_value(ciphers, i); rb_ary_push(ary, ossl_ssl_cipher_to_ary(cipher));
return ary;
=end
Files
Updated by mame (Yusuke Endoh) over 15 years ago
=begin
遠藤です。
ext/opensslで、この部分だけ旧来のcastを使用しているのは何か理由があるのでしょうか?
cast を使用していると問題があるでしょうか。
コンパイラが警告を出す程度の軽微な問題だとしたら、今は下手にいじりたく
ないなと思います。
--
Yusuke Endoh [email protected]
=end
Updated by naruse (Yui NARUSE) over 15 years ago
=begin
他の部分は変えないとコンパイルが通らなかったのに対し、ここは変えなくても通ったからじゃないかなぁと思います。
=end
Updated by taca (Takahiro Kambe) over 15 years ago
=begin
cast を使用していると問題があるでしょうか。
そう言われてしまうと身も蓋もありません。本来のOpenSSLが提供しているAPIを避けて、キャストを使い続けるのはどうなんだろうと思った次第です。将来のOpenSSLのリリースに向けた移植性という面では確実に不利ではないでしょうか?
今は下手にいじりたくないなと思います。
1.9.2のリリースまでに修正して欲しいとも思ってはいません。
=end
Updated by naruse (Yui NARUSE) over 15 years ago
=begin
http://cvs.openssl.org/fileview?f=openssl/crypto/stack/safestack.h&v=1.14
で入ったAPIのようなので、単に古いまま残っているだけのようですね。
なのでtrunkには取込みます。
=end
Updated by naruse (Yui NARUSE) over 15 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
=begin
This issue was solved with changeset r28282.
Takahiro, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
=end