2005-12-06

_ [ruby] 今日の acl

forbidden = Proc.new{raise WEBrick::HTTPStatus::Forbidden}
acl = Proc.new{|req, res|
  client_ip = IPAddr.new(req.peeraddr[3])
  allowed_ips.find(forbidden) do |ip|
    IPAddr.new(ip).include?(client_ip)
  end
}

こんな感じかなぁ。

[追記] 例外をあらゆるなきものにすると find の引数が意味をなさないので、 begin ~ rescue ~ end を消しました。まぁ、例外が出れば 500 なので、そんなもんでしょう。

_ [debian][webwml] DWN-2005-48

出さないと!
  帰ってからね、
    すいません。
[]