diff options
author | Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi> | 2014-06-25 23:32:21 +0300 |
---|---|---|
committer | Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi> | 2014-06-25 23:35:46 +0300 |
commit | a0e697b34e270e97ea35aa567ba1c58ecbd63f1c (patch) | |
tree | 88d67b86324b4c478888c4bbafacd217926f1cc4 /aconf/model/node.lua | |
parent | c8e7ab367c5967641b07adf59328759311902bf6 (diff) | |
download | aconf-a0e697b34e270e97ea35aa567ba1c58ecbd63f1c.tar.bz2 aconf-a0e697b34e270e97ea35aa567ba1c58ecbd63f1c.tar.xz |
model: propagate escalated privileges to parent instance
Diffstat (limited to 'aconf/model/node.lua')
-rw-r--r-- | aconf/model/node.lua | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/aconf/model/node.lua b/aconf/model/node.lua index b4fd685..80f1de0 100644 --- a/aconf/model/node.lua +++ b/aconf/model/node.lua @@ -70,7 +70,14 @@ function M.TreeNode:init(context, params) if not (mt.txn and mt.txn.user) then mt.privileged = true end mt.escalate = mt.privileged and self or mt.class( - setdefaults({privileged=true}, context), params + setdefaults( + { + parent=mt.parent and getmetatable(mt.parent).escalate, + privileged=true + }, + context + ), + params ) function mt.get(k, options) return mt.load(k, options) end |