[#19958] shim/ruby16/tests — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
6 messages
2003/04/04
[#19960] Re: shim/ruby16/tests
— matz@... (Yukihiro Matsumoto)
2003/04/04
まつもと ゆきひろです
[#19965] unpack_sockaddr_in: sockaddr_in size differs — GOTOU Yuuzou <gotoyuzo@...>
Socket::unpack_sockaddr_in が struct sockaddr_in6 の場合にエラー
4 messages
2003/04/07
[#19980] ""*n — Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
rb_str_times ですけど、こうしても構わないですか?
7 messages
2003/04/09
[#19987] Re: I quote: "Maybe IRB bug!!" — keiju@... (Keiju ISHITSUKA)
けいじゅ@ラショナルソフトウェアです.
9 messages
2003/04/09
[#19988] Re: I quote: "Maybe IRB bug!!"
— matz@... (Yukihiro Matsumoto)
2003/04/10
まつもと ゆきひろです
[#19990] Re: I quote: "Maybe IRB bug!!"
— keiju@... (石塚圭樹)
2003/04/10
けいじゅ@ラショナルソフトウェアです.
[#19992] lib/date — Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
ふなばです。
8 messages
2003/04/10
[#20007] SEGV on File.stat(String.allocate) — nobu.nakada@...
なかだです。
5 messages
2003/04/11
[#20012] radix from 2 through 36 — nobu.nakada@...
なかだです。
10 messages
2003/04/11
[#20019] Re: radix from 2 through 36
— matz@... (Yukihiro Matsumoto)
2003/04/13
まつもと ゆきひろです
[#20020] Re: radix from 2 through 36
— nobu.nakada@...
2003/04/13
なかだです。
[#20024] pai.rb — Tanaka Akira <akr@...17n.org>
ふと思ったんですが、pai.rb の pai というのはπなんでしょうか?
5 messages
2003/04/14
[#20033] Exception#initialize — nobu.nakada@...
なかだです。
9 messages
2003/04/18
[#20237] Re: Exception#initialize
— matz@... (Yukihiro Matsumoto)
2003/05/20
まつもと ゆきひろです
[#20241] Re: Exception#initialize
— nobu.nakada@...
2003/05/20
なかだです。
[#20036] Re: Roundoff problem with Float and Marshal — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
16 messages
2003/04/18
[#20045] Re: Roundoff problem with Float and Marshal
— nobu.nakada@...
2003/04/20
なかだです。
[#20063] Re: Roundoff problem with Float and Marshal
— matz@... (Yukihiro Matsumoto)
2003/04/22
まつもと ゆきひろです
[#20064] Re: Roundoff problem with Float and Marshal
— matz@... (Yukihiro Matsumoto)
2003/04/23
まつもと ゆきひろです
[#20065] Re: Roundoff problem with Float and Marshal
— nobu.nakada@...
2003/04/23
なかだです。
[#20066] Re: Roundoff problem with Float and Marshal
— matz@... (Yukihiro Matsumoto)
2003/04/23
まつもと ゆきひろです
[#20038] bigdecimal/lib — Minero Aoki <aamine@...>
あおきです。
6 messages
2003/04/20
[#20047] Array#indexes and Array#select — WATANABE Hirofumi <eban@...>
わたなべです。
5 messages
2003/04/20
[#20067] failed to build ruby on HURD — akira yamada / やまだあきら <akira@...>
8 messages
2003/04/23
[#20097] jcode.rb — akira yamada / やまだあきら <akira@...>
25 messages
2003/04/26
[#20098] Re: jcode.rb
— matz@... (Yukihiro Matsumoto)
2003/04/27
まつもと ゆきひろです
[#20105] Re: jcode.rb
— WATANABE Hirofumi <eban@...>
2003/04/28
わたなべです。
[#20108] Re: jcode.rb
— matz@... (Yukihiro Matsumoto)
2003/04/28
まつもと ゆきひろです
[#20110] Re: jcode.rb
— Hiroyuki Komatsu <komatsu@...>
2003/04/28
小松です.
[#20118] Re: jcode.rb
— Shin-ichiro HARA <sinara@...>
2003/04/30
原です。
[#20132] Re: jcode.rb
— keiju@... (石塚圭樹)
2003/05/01
けいじゅ@ラショナルソフトウェアです.
[#20140] scope-in-state and import-module
— Shin-ichiro HARA <sinara@...>
2003/05/02
原です。
[#20116] Array#map — Shin-ichiro HARA <sinara@...>
原です。
12 messages
2003/04/30
[#20123] Re: Array#map
— matz@... (Yukihiro Matsumoto)
2003/04/30
まつもと ゆきひろです
[#20128] Re: Array#map
— Shin-ichiro HARA <sinara@...>
2003/05/01
原です。
[ruby-dev:20120] Re: I quote: "Maybe IRB bug!!"
From:
keiju@... (石塚圭樹)
Date:
2003-04-30 11:10:52 UTC
List:
ruby-dev #20120
けいじゅ@ラショナルソフトウェアです.
何か久しぶりです.
In [ruby-dev:20005] the message: "[ruby-dev:20005] Re: I quote: "Maybe
IRB bug!!"", on Apr/11 01:56(JST) Yukihiro Matsumoto writes:
>まつもと ゆきひろです
>いろいろできたのは1.6のirbでした。1.8のだとなにをやっても例
>外になりますね。
です.
>|>|b = proc{bind}
>|>|eval "$SAFE = 1", b
>|>|p $SAFE
>|>|#=> 1
>|>意図通りです。これは「Procの中」ではありませんから。一方、
>|静的に中ってこと?
>
>「静的に中」ってのがよくわかんないんですが、Proc実行中に
>$SAFEをいじっても外側の$SAFEに影響を及ぼさないが、コンテキス
>トとしてProcを渡しても$SAFEを保護できないって動作をしますね。
ですね. まあ, こういうもんだと理解すればそれでいいのですが.
>| proc{$SAFE=1; eval "puts $SAFE"}.call
>|とか
>| proc{$SAFE=1; eval "gets"}.call
>|がエラーにならないのは正常の動作?
>
>$SAFE=1だとこれらは禁止の対象じゃないですよ。文字列汚染され
>てないし。
私の勘違いでした.
proc{$SAFE=1; eval gets}.call
をしたかったのでした. ちゃんと, エラーになりますね.
>|irbは一行一行evalしたいわけですよね. evalはThread内で実行しなくてはな
>|らないので, そうすると$SAFE>1でエラーになってしまう...
>
>evalがエラーになるのは汚染されている場合だけです。
言いたいことが伝わりませんでしたね.
irb本体の内部処理部分と, eval以降の部分に分けます. irbを使っている人の
意図としては, eval以降の部分の実行に対して$SAFEを設定したいんだと思い
ますが, $SAFEを設定されると内部処理部分まで影響が及ぶなーと言いたかっ
たのでした.
>|でも, $SAFE>1でirbを実行したいってニーズはあんまりないと思いますので,
>|無理して実行できるように対応する気はあまりないですが.
>
>Maybe IRB bug!! ってメッセージはまずいかも。って、もしかして
>最初から石塚さんそういってたっけ。
そうです. 最低でもそのぐらいはやらんとと思いました.
In [ruby-dev:20006] the message: "[ruby-dev:20006] Re: I quote: "Maybe
IRB bug!!"", on Apr/11 02:20(JST) Yukihiro Matsumoto writes:
>まつもと ゆきひろです
>今考えたら、irbの使い方から考えて入力されたプログラムは信頼
>せざるをえないんだから、
irb上での自分の入力は信用できると言うのは問題なさそうですね.
>inputされた文字列を無条件にuntaintすればそれで良いのでは? $SAFE>2 ま
>ではそれだけでなんとかなりそう。$SAFEが3以上だとuntaintが使えないんで
>駄目だけど。
レベル2まではそれでも良さそうですね. レベル3/4は...
レベル 3 - 生成される全てのオブジェクトが汚染されます.レベル4でプログ
ラムを実行す る環境を作り上げるのに適しています。
生成されるすべてのオブジェクトの意味がわからないんだけど,
Fixnum/true/false/nil以外全部って事?
まあ, それはよいとして, evalをprocでくくってそこだけで$SAFEを設定する
ようにしないとならないですね.
レベル 4 - 信用することのできないプログラムを実行するためのレベルです.
この場合も, irb本体は信用できるとして, load/requireしたものが信頼でき
ないって解釈すればよいんでしょうね.
結論としては, $SAFEが設定されたらエラーとし, 別にirb独自のSAFE変数を定
義して, eval実行時だけ$SAFEを設定するようにする感じかなあ... 通常の,
eval input文字列, context
の代わりに
proc{|safe| $SAFE=safe; eval input文字列, context}.call irb_safe
見たいな感じ...
今は時間がないので, あとで試してみます.
__
..................................石塚 圭樹@ラショナルソフトウェア...
----------------------------------->> e-mail: keiju@rational.com <<---