[#28677] `Socket#unpack_sockaddr_un': sockaddr_un size differs - 15 required; 110 given (TypeError) — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、Socket.unpack_sockaddr_un に
[#28681] ブロックパラメータと多値について — Takaaki Tateishi <ttate@...>
まつもと ゆきひろです
[#28689] digest.rb — Tanaka Akira <akr@...17n.org>
require 'digest/sha2' の sha2 がどうも余計に思えるので、
久しぶりに復帰。
In article <863bav6a0w.knu@iDaemons.org>,
[#28694] test/socket for Windows — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#28700] irb/init.rb code suggestion to find user's home directory in windows — keiju@... (Keiju ISHITSUKA)
けいじゅ@いしつかです.
[#28708] 1.8.5 release schedule? — URABE Shyouhei <root@...>
というわけで今日の基調講演で8月に1.8.5が出ることになったわけですが。
まつもと ゆきひろです
卜部です。
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
とみたです。
とみたです。
卜部です。
柳田です。
In article <y7vnup05.wl%yanagi@shakenbu.org>,
> いちおう問題の切り分けをするために確認したいんですが、その環
In article <veqrun77.wl%yanagi@shakenbu.org>,
mswin32 版ではどうなるのだろうと思って
Cygwin @ WindowsXP SP2 です。
In article <449D66EC.8050405@cyanet.jp>,
send の第一引数が mesg なので変わって当然でした orz
Cで書いたプログラムで127.0.0.1に向かって空データを送ったところ無事届きま
ruby が 0.0.0.0 で待ち受けて、C言語プログラムで 127.0.0.1 に空パケットを
下記の通り Winsock2 を使わずにC言語でプログラムを書いて、空パケットを投
In article <449D921F.8080109@cyanet.jp>,
永井@知能.九工大です.
永井@知能.九工大です.
まつもと ゆきひろです
こんにちは、なかむら(う)です。
まつもと ゆきひろです
卜部です。
こんにちは、なかむら(う)です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
In article <1155082949.798513.13047.nullmailer@x31.priv.netlab.jp>,
[#28715] several problems on the big commit — Tanaka Akira <akr@...17n.org>
件の大きなコミットをざっと眺めてみたのですが、
[#28718] binding の仕様変更? or バグ? — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
まつもと ゆきひろです
[#28720] IO.readとバイナリモード — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#28729] backport Process.getrlimit and Process.setrlimit to 1.8 — Tanaka Akira <akr@...17n.org>
何回か (chkbuild で CPU 時間を制限するとか、cgi で CPU 時間
まつもと ゆきひろです
大原です。
[#28741] not ok iterator 80 -- ./sample/test.rb:1104 — Tanaka Akira <akr@...17n.org>
sample/test.rb が 2つ失敗していますが、最初の失敗は次のものです。
[#28744] rational 1.08 — Tadayoshi Funaba <tadf@...>
ふなばです。
原です。
ふなばです。
まつもと ゆきひろです
まつもと ゆきひろです
原です。
[#28747] lack in pp — Tadashi Saito <shiba@...2.accsnet.ne.jp>
こんにちは。斎藤と申します。
[#28770] signal & native-thread — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
[#28778] GC problem (?) in 1.8 — URABE Shyouhei <root@...>
卜部です。
In article <449851E1.9030302@mput.dip.jp>,
[#28786] "abc"[3] returns "" — Tanaka Akira <akr@...17n.org>
test-all が
[#28805] `DRb::DRbMessage#recv_request': uninitialized constant DRb::DRbMessage::Values (NameError) — Tanaka Akira <akr@...17n.org>
[ruby-dev:28802] のパッチがあたると、次はこうです。
[#28812] test_return_trace_func(TestIterator): /tmp/19/lib/ruby/1.9/test/unit.rb:275: ArgumentError — Tanaka Akira <akr@...17n.org>
で、次は
[#28822] when *a — Minero Aoki <aamine@...>
青木です。
[#28840] SEGV by block.call — Tanaka Akira <akr@...17n.org>
どうも boron での SEGV が直らないので、
[#28875] rb_define_methods — SASADA Koichi <ko1@...>
ささだです。
卜部です。
まつもと ゆきひろです
[ruby-dev:28737] Re: Module#toplevel_eval
永井@知能.九工大です.
From: Yukihiro Matsumoto <matz@ruby-lang.org>
Subject: [ruby-dev:28736] Re: Module#toplevel_eval (Re: binding の仕様変更? or バグ?)
Date: Thu, 15 Jun 2006 16:02:58 +0900
Message-ID: <1150343532.253370.20196.nullmailer@x31.priv.netlab.jp>
> [ruby-dev:28718]についてなら、見てます。ただ、まだどこが悪さ
> しているのか分かってません。ちょっと待ってくださいね。
ありがとうございます.よろしくお願い致します.
ちなみに切羽詰まって作った Module#toplevel_eval ですが,
その割には結構使えそうで,「ちょっといいかも」と思っています.
例えばですが,セキュリティ上の理由で,読み込んだコードからの
定数 ENV へのアクセスに制限をかけたい場合があったとします.
あらゆるケースを考えているわけではないですが,次のようにすると
Module#toplevel_eval の中から制約を回避するのはかなり難しそうです.
========================================================
class Wrapped_ENV
@@allow_keys = ['USER', 'DISPLAY']
def initialize
@env = ENV
end
def inspect
"Wrapped_ENV"
end
def class
nil
end
def _check_key(key)
@@allow_keys.index(key)
end
private :_check_key
def [](key)
key = key.to_s
(_check_key(key))? @env[key]: nil
end
def []=(key,val)
key = key.to_s
val = val.to_s
@env[key] = val if _check_key(key)
end
end
module XX
ENV = Wrapped_ENV.new
ObjectSpace = nil
Wrapped_ENV = nil
def remove_const(*args)
raise SecurityError, 'deny to remove constants'
end
end
#########################
puts "*** access `ENV' in main"
p ["ENV['USER']", ENV['USER']]
p ["ENV['DISPLAY']", ENV['DISPLAY']]
p ["ENV['HOME']", ENV['HOME']]
XX.toplevel_eval{
puts "\n*** access `ENV' in toplevel_eval"
p ENV
p ["ENV['USER']", ENV['USER']]
p ["ENV['DISPLAY']", ENV['DISPLAY']]
p ["ENV['HOME']", ENV['HOME']]
}
XX.toplevel_eval{
puts "\n*** try to `remove_const :ENV'"
begin
remove_const :ENV
rescue
p $!
end
}
XX.toplevel_eval{
puts "\n*** try to override `remove_const' to call super()"
def remove_const(*args)
super(*args)
end
begin
remove_const :ENV
rescue
p $!
end
def self.remove_const(*args)
super(*args)
end
begin
self.remove_const :ENV
rescue
p $!
end
}
XX.toplevel_eval{
puts "\n*** try to `undef_method :remove_const'"
begin
undef_method :remove_const
rescue
p $!
end
begin
class << self
undef_method :remove_const
end
rescue
p $!
end
begin
remove_const :ENV
rescue
p $!
end
}
XX.toplevel_eval{
puts "\n*** try to access ObjectSpace"
p ObjectSpace
p ::ObjectSpace
puts "\n*** try to access Wrapped_ENV"
p Wrapped_ENV
p ::Wrapped_ENV
}
puts "\n"
XX.toplevel_eval{p ENV}
========================================================
実際に実行すると,こうなります.
========================================================
*** access `ENV' in main
["ENV['USER']", "nagai"]
["ENV['DISPLAY']", ":0.0"]
["ENV['HOME']", "/home/nagai"]
*** access `ENV' in toplevel_eval
Wrapped_ENV
["ENV['USER']", "nagai"]
["ENV['DISPLAY']", ":0.0"]
["ENV['HOME']", nil]
*** try to `remove_const :ENV'
#<SecurityError: deny to remove constants>
*** try to override `remove_const' to call super()
#<NoMethodError: super: no superclass method `remove_const'>
#<NoMethodError: super: no superclass method `remove_const'>
*** try to `undef_method :remove_const'
#<NameError: undefined method `remove_const' for class `Class'>
#<NoMethodError: undefined method `remove_const' for XX:Class>
*** try to access ObjectSpace
nil
nil
*** try to access Wrapped_ENV
nil
nil
Wrapped_ENV
========================================================
いかがなものでしょう?
少しはセキュリティ強化に役立たないでしょうか?(^_^;
--
永井 秀利 (九工大 知能情報)
nagai@ai.kyutech.ac.jp