diff options
author | Kim Alvefur <zash@zash.se> | 2019-03-04 13:46:09 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2019-03-04 13:46:09 +0100 |
commit | 55393a584dc5d401ca1fc82f5be5b21c7bc6ea07 (patch) | |
tree | e47cbfb67c4f98b179baec19c2f4fd66e62f7132 /util | |
parent | 37ba8188057989a530aa5a5e138b181d1ad855a1 (diff) | |
parent | 01f4b12e155b549fedc814f2c63b58d5ea72e201 (diff) | |
download | prosody-55393a584dc5d401ca1fc82f5be5b21c7bc6ea07.tar.gz prosody-55393a584dc5d401ca1fc82f5be5b21c7bc6ea07.zip |
Merge 0.11->trunk
Diffstat (limited to 'util')
-rw-r--r-- | util/pubsub.lua | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/util/pubsub.lua b/util/pubsub.lua index a53e8b95..e5e0cb7c 100644 --- a/util/pubsub.lua +++ b/util/pubsub.lua @@ -436,10 +436,19 @@ function service:create(node, actor, options) --> ok, err return false, "conflict"; end + local config = setmetatable(options or {}, {__index=self.node_defaults}); + + if self.config.check_node_config then + local ok = self.config.check_node_config(node, actor, config); + if not ok then + return false, "not-acceptable"; + end + end + self.nodes[node] = { name = node; subscribers = {}; - config = setmetatable(options or {}, {__index=self.node_defaults}); + config = config; affiliations = {}; }; |