diff options
author | Kim Alvefur <zash@zash.se> | 2014-06-20 16:22:23 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2014-06-20 16:22:23 +0200 |
commit | 13f1842f157c7c15e227db8888e927f524764450 (patch) | |
tree | 61b0ccea75b170a82d371e633a05259ef3e94b46 | |
parent | b7126c5d70d8b8c7facb974d86453ba395ebccee (diff) | |
download | prosody-13f1842f157c7c15e227db8888e927f524764450.tar.gz prosody-13f1842f157c7c15e227db8888e927f524764450.zip |
mod_storage_{none,internal,sql}: Return error for unsupported (everything but keyval) store types
-rw-r--r-- | plugins/mod_storage_internal.lua | 3 | ||||
-rw-r--r-- | plugins/mod_storage_none.lua | 7 | ||||
-rw-r--r-- | plugins/mod_storage_sql.lua | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/plugins/mod_storage_internal.lua b/plugins/mod_storage_internal.lua index 972ecbee..ade4f0a6 100644 --- a/plugins/mod_storage_internal.lua +++ b/plugins/mod_storage_internal.lua @@ -6,6 +6,9 @@ local driver = {}; local driver_mt = { __index = driver }; function driver:open(store, typ) + if typ and typ ~= "keyval" then + return nil, "unsupported-store"; + end return setmetatable({ store = store, type = typ }, driver_mt); end function driver:get(user) diff --git a/plugins/mod_storage_none.lua b/plugins/mod_storage_none.lua index 8f2d2f56..fa925b76 100644 --- a/plugins/mod_storage_none.lua +++ b/plugins/mod_storage_none.lua @@ -1,8 +1,11 @@ local driver = {}; local driver_mt = { __index = driver }; -function driver:open(store) - return setmetatable({ store = store }, driver_mt); +function driver:open(store, typ) + if typ and typ ~= "keyval" then + return nil, "unsupported-store"; + end + return setmetatable({ store = store, type = typ }, driver_mt); end function driver:get(user) return {}; diff --git a/plugins/mod_storage_sql.lua b/plugins/mod_storage_sql.lua index 7b810ab8..a5bb5bfa 100644 --- a/plugins/mod_storage_sql.lua +++ b/plugins/mod_storage_sql.lua @@ -380,10 +380,10 @@ end local driver = {}; function driver:open(store, typ) - if not typ then -- default key-value store - return setmetatable({ store = store }, keyval_store); + if typ and typ ~= "keyval" then + return nil, "unsupported-store"; end - return nil, "unsupported-store"; + return setmetatable({ store = store }, keyval_store); end function driver:stores(username) |