Issue #5036 has been reported by Kazuki Tsujimoto.
Bug #5036: time_modify/struct_modifyの例外メッセージがサブクラスの情報を反映しない
Author: Kazuki Tsujimoto
Status: Open
Priority: Normal
Assignee:
Category: lib
Target version:
ruby -v: ruby 1.9.4dev (2011-07-16 trunk 32562) [x86_64-linux]
=begin
辻本です。
time_modify/struct_modifyにて生成される例外のメッセージに
クラス名がハードコーディングされているため、
これらがサブクラスのオブジェクトから呼ばれた場合でも
そのことが例外メッセージから読み取れません。
Timeの例:
class Time2 < Time
end
t = Time2.now
$SAFE=4
t.gmtime # => Insecure: can’t modify Time (SecurityError)
Structの例:
class Struct2 < Struct
end
s = Struct2.new(“S”, :m).new
$SAFE=4
s.m=1 # => Insecure: can’t modify Struct (SecurityError)
パッチを添付します。
=end
Issue #5036 has been updated by Nobuyoshi N…
Status changed from Open to Assigned
Assignee set to Kazuki Tsujimoto
入れちゃっていいんじゃないでしょうか。
あとはrb_check_frozen()のようにinsecureチェック用の関数を作るとか。
Bug #5036: time_modify/struct_modifyの例外メッセージがサブクラスの情報を反映しない
Author: Kazuki Tsujimoto
Status: Assigned
Priority: Normal
Assignee: Kazuki Tsujimoto
Category: lib
Target version:
ruby -v: ruby 1.9.4dev (2011-07-16 trunk 32562) [x86_64-linux]
=begin
辻本です。
time_modify/struct_modifyにて生成される例外のメッセージに
クラス名がハードコーディングされているため、
これらがサブクラスのオブジェクトから呼ばれた場合でも
そのことが例外メッセージから読み取れません。
Timeの例:
class Time2 < Time
end
t = Time2.now
$SAFE=4
t.gmtime # => Insecure: can’t modify Time (SecurityError)
Structの例:
class Struct2 < Struct
end
s = Struct2.new(“S”, :m).new
$SAFE=4
s.m=1 # => Insecure: can’t modify Struct (SecurityError)
パッチを添付します。
=end
Issue #5036 has been updated by Kazuki Tsujimoto.
コミット権を持っていないので、お手数ですがコミッタの方取り込みをお願いします。
Bug #5036: time_modify/struct_modifyの例外メッセージがサブクラスの情報を反映しない
Author: Kazuki Tsujimoto
Status: Assigned
Priority: Normal
Assignee: Kazuki Tsujimoto
Category: lib
Target version:
ruby -v: ruby 1.9.4dev (2011-07-16 trunk 32562) [x86_64-linux]
=begin
辻本です。
time_modify/struct_modifyにて生成される例外のメッセージに
クラス名がハードコーディングされているため、
これらがサブクラスのオブジェクトから呼ばれた場合でも
そのことが例外メッセージから読み取れません。
Timeの例:
class Time2 < Time
end
t = Time2.now
$SAFE=4
t.gmtime # => Insecure: can’t modify Time (SecurityError)
Structの例:
class Struct2 < Struct
end
s = Struct2.new(“S”, :m).new
$SAFE=4
s.m=1 # => Insecure: can’t modify Struct (SecurityError)
パッチを添付します。
=end
Issue #5036 has been updated by Kazuki Tsujimoto.
対応ありがとうございました。
なお、このコミット(r32569)でt.rbが混入してしまっています。
Bug #5036: time_modify/struct_modifyの例外メッセージがサブクラスの情報を反映しない
Author: Kazuki Tsujimoto
Status: Closed
Priority: Normal
Assignee: Kazuki Tsujimoto
Category: lib
Target version:
ruby -v: ruby 1.9.4dev (2011-07-16 trunk 32562) [x86_64-linux]
=begin
辻本です。
time_modify/struct_modifyにて生成される例外のメッセージに
クラス名がハードコーディングされているため、
これらがサブクラスのオブジェクトから呼ばれた場合でも
そのことが例外メッセージから読み取れません。
Timeの例:
class Time2 < Time
end
t = Time2.now
$SAFE=4
t.gmtime # => Insecure: can’t modify Time (SecurityError)
Structの例:
class Struct2 < Struct
end
s = Struct2.new(“S”, :m).new
$SAFE=4
s.m=1 # => Insecure: can’t modify Struct (SecurityError)
パッチを添付します。
=end
$B%3%%C%H8"$r;}$C$F$$$J$$$N$G!"$*<j?t$G$9$,%3%%C%?$NJ}<h$j9~$_$r$*4j$$$7$^$9!#(B
$B<h$C$F$/$@$5$$!#(B
$B$I$&$;%3!<%I$,$"$C$F$k$@$m$J!<$C$F>l9g$OBeM}%3%_%C%H$9$k$NLLE]$/$5$$$G$9(B
(11/07/17 21:47), KOSAKI Motohiro wrote:
$B%3%%C%H8"$r;}$C$F$$$J$$$N$G!"$*<j?t$G$9$,%3%%C%?$NJ}<h$j9~$_$r$*4j$$$7$^$9!#(B
$B<h$C$F$/$@$5$$!#(B
$B$I$&$;%3!<%I$,$"$C$F$k$@$m$J!<$C$F>l9g$OBeM}%3%_%C%H$9$k$NLLE]$/$5$$$G$9(B
$BA0ED$5$s$K8x3+80$rAw$C$F$/$@$5$$!#(B
Issue #5036 has been updated by Kazuki Tsujimoto.
ありがとうございます。
では、CommitterHowtoのお作法に則って送らせてもらいます。
Bug #5036: time_modify/struct_modifyの例外メッセージがサブクラスの情報を反映しない
Author: Kazuki Tsujimoto
Status: Closed
Priority: Normal
Assignee: Kazuki Tsujimoto
Category: lib
Target version:
ruby -v: -
=begin
辻本です。
time_modify/struct_modifyにて生成される例外のメッセージに
クラス名がハードコーディングされているため、
これらがサブクラスのオブジェクトから呼ばれた場合でも
そのことが例外メッセージから読み取れません。
Timeの例:
class Time2 < Time
end
t = Time2.now
$SAFE=4
t.gmtime # => Insecure: can’t modify Time (SecurityError)
Structの例:
class Struct2 < Struct
end
s = Struct2.new(“S”, :m).new
$SAFE=4
s.m=1 # => Insecure: can’t modify Struct (SecurityError)
パッチを添付します。
=end