From 9b6c5f2fdf5cac77fda7fb506fe09d22cd18b8ab Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 23 Nov 2010 13:07:15 -0800 Subject: fix readonly interface use 403 to reject PUT/DELETE requests --- lib/metropolis/common.rb | 4 ++-- lib/metropolis/tc/hdb.rb | 4 ++-- lib/metropolis/tc/hdb/ro.rb | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) (limited to 'lib') diff --git a/lib/metropolis/common.rb b/lib/metropolis/common.rb index 3bfbf77..cdae590 100644 --- a/lib/metropolis/common.rb +++ b/lib/metropolis/common.rb @@ -22,10 +22,10 @@ module Metropolis::Common when "PUT" put(key, env) else - [ 405, {}, [] ] + r(405) end else # OPTIONS - [ 405, {}, [] ] + r(405) end end end diff --git a/lib/metropolis/tc/hdb.rb b/lib/metropolis/tc/hdb.rb index eed46ef..871876d 100644 --- a/lib/metropolis/tc/hdb.rb +++ b/lib/metropolis/tc/hdb.rb @@ -41,7 +41,7 @@ module Metropolis::TC::HDB @dbv = (0...@nr_slots).to_a.map do |slot| path = sprintf(path_pattern, slot) hdb = TCHDB.new - unless opts[:read_only] + unless opts[:readonly] hdb.open(path, TCHDB::OWRITER | TCHDB::OCREAT) or ex!(:open, hdb) if @optimize hdb.optimize(*@optimize) or ex!(:optimize, hdb) @@ -52,7 +52,7 @@ module Metropolis::TC::HDB end @rd_flags = TCHDB::OREADER @wr_flags = TCHDB::OWRITER - if opts[:read_only] + if opts[:readonly] extend(RO) end end diff --git a/lib/metropolis/tc/hdb/ro.rb b/lib/metropolis/tc/hdb/ro.rb index f348ee4..4114606 100644 --- a/lib/metropolis/tc/hdb/ro.rb +++ b/lib/metropolis/tc/hdb/ro.rb @@ -6,7 +6,7 @@ module Metropolis::TC::HDB::RO @wr_flags = nil @rd_flags |= TokyoCabinet::HDB::ONOLCK @dbv.each { |(hdb, path)| - hdb.open(path, @rd_flags) or ex!(:open, path) + hdb.open(path, @rd_flags) or ex!(:open, hdb) } @ro_dbv = @dbv.map { |(hdb,_)| hdb } end @@ -21,10 +21,10 @@ module Metropolis::TC::HDB::RO when "HEAD" head(key) else - [ 405, {}, [] ] + r(403) end else # OPTIONS - [ 405, {}, [] ] + r(405) end end -- cgit v1.2.3-24-ge0c7