Ruby講習会の資料を作っているうちに 汚染状態の伝搬ルールを知りたくなったので, まつもとさんに聞いてみた.
汚染されている文字列との結合は汚染される.
("abc".taint + "def").tainted? #=> true
"#{'abc'.taint}".tainted? #=> true汚染されている文字列を指しているオブジェクトは汚染されない.
["abc".taint].tainted? #=> false
{"abc".taint => 1}.tainted? #=> false汚染されている文字列や 汚染されている文字列を指しているオブジェクトから to_sとかinspectとかで生成される文字列は汚染される.
["abc".taint].to_s.tainted? #=> true
本当ならruby-listとかで聞かないといけないような気がする...
Debian | LOOX T70HN | Linux | Rails | Rast | Ruby | TYPE T VGN-TZ90HS | boat | hardware | music | p | snowboard | software | surfing | tDiary | その他 | ボウリング | 映画 | 家族 | 会社 | 管理 | 丸藤 | 高専 | 散歩 | 仕事 | 自分 | 鼕
"Yuya.Nishida." / 西田 雄也 <yuya at j96 dot org>