[#44469] [Ruby 1.9 - Bug #5279][Open] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — Shota Fukumori <sorah@...>

21 messages 2011/09/06
[#44471] [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — Shota Fukumori <sorah@...> 2011/09/06

[#44472] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — "NARUSE, Yui" <naruse@...> 2011/09/06

2011年9月6日11:02 Shota Fukumori <sorah@tubusu.net>:

[#44473] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — "Shota Fukumori (sora_h)" <sorah@...> 2011/09/06

じゃぁ,大丈夫かな.

[#44474] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — Kazuhiko <kazuhiko@...> 2011/09/06

On 06/09/2011 06:10, Shota Fukumori (sora_h) wrote:

[#44541] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — Kazuhiko <kazuhiko@...> 2011/09/24

かずひこです。

[#44549] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある — KOSAKI Motohiro <kosaki.motohiro@...> 2011/09/26

> かずひこです。

[#44491] [Ruby 1.9 - Feature #5314][Open] パッケージマネージャをコアリリースに含めて欲しい — Taro MURAOKA <koron.kaoriya@...>

13 messages 2011/09/13

[#44506] [Ruby 1.9 - Feature #5317][Open] rubyのヘッダファイルを使った拡張を行う際にuid_tの宣言回避をする事が出来ない。 — Yasuhiro Matsumoto <mattn.jp@...>

9 messages 2011/09/13

[#44520] [Ruby 1.9 - Bug #5350][Open] WeakRef で謎の NoMethodError — Makoto Kishimoto <redmine@...>

20 messages 2011/09/21

[#44542] [Ruby 1.9 - Bug #5363][Open] OpenSSL::ASN1.decode_all の引数に PEM 形式の証明書を指定すると Segmentation fault が発生する — Hiroshi Yoshida <hexa.diary@...>

8 messages 2011/09/25

[#44546] [Ruby 1.9 - Bug #5368][Open] ensure節でsleepするようなThreadがあるとインタプリタが終了しない — Masaki Matsushita <glass.saga@...>

22 messages 2011/09/26

[ruby-dev:44560] Re: [Ruby 1.9 - Bug #5279] $SAFEが3以上の時にString#encodeがSecurityErrorを発生させるケースがある

From: Kazuhiko <kazuhiko@...>
Date: 2011-09-28 12:15:58 UTC
List: ruby-dev #44560
かずひこです。

On 26/09/2011 19:19, Shugo Maeda wrote:
>>> Yuguiさんが1.9.3ブランチにバックポートしてくださって、先ほどめでたく
>>> 1.9.3RC1が出た今ころになって気づいて、ものすごく申し訳ないのです
>>> が、$SAFE=3の時は動くけれど、$SAFE=4だと相変わらず失敗するようです。
> (snip)
>> r33328 で直ったようですが、1.9.3に入れますか?みなさんの意見が聞きたいです。
>> 正直ぼくのなかでは重要度は微妙なんですけど、このままだた1.9.[234] でそれぞれ
>> 仕様が違うという事態になるので、それもいかがなものかと思い悩んでいます。
> 
> アプリケーション側のworkaroundとしては、$SAFE >= 4のサンドボックス内で
> 使用を許可したい変換表を$SAFE == 0のときにあらかじめロードしておくとい
> う手があるので、tDiaryのケースでそれが現実的な解となるかどうかが、一つの
> 判断材料ですね。

Yuguiさんの言うように、重要度は微妙というのには同意します。すくなくとも
tDiary的には、上記のワークアラウンドですでに回避できているので、まあ困ら
ないといえば困りません。

> $SAFEが4以上の時はグローバルな状態の変更が禁止されるという原則があった
> と思うんですが、このケースはそれに抵触しないのかなというのがちょっと気に
> なります。影響は限定的なので実害はない気がするのですが。

この修正の結果「グローバルな状態が変更される」のは、あくまでも(現状の)
実装の都合による副作用であって、それが理由でこの修正をrevertすることは無
いんじゃないかなと思います。
それはそれとして、1.9.3に対しては、タイミングが遅すぎたと思うので、「も
はや仕様は完全に凍結するという原則論を優先します」というYuguiさんの判断
に異論はありません。

> 1.9.[234]で仕様が違うという点については、どうせ$SAFEは2.0で削除すべきだ
> と思うので、あんまり気にしなくてもいいんじゃないでしょうか。

レンタルtDiaryの運営者としては、このissueそのものよりも↑こっちの方が気に
なります。:)

かずひこ

In This Thread