Allow a pool creation if we specify an auid but are allowed to create
buckets as anybody.
Signed-off-by: Sage Weil <sage@newdream.net>
_pool_op(m, -EPERM, pending_inc.epoch);
return true;
}
- if ((m->auid && !session->caps.check_privileges(PAXOS_OSDMAP, MON_CAP_W, m->auid)) ||
- (!m->auid && !session->caps.check_privileges(PAXOS_OSDMAP, MON_CAP_W))) {
+ if ((m->auid && !session->caps.check_privileges(PAXOS_OSDMAP, MON_CAP_W, m->auid)) &&
+ !session->caps.check_privileges(PAXOS_OSDMAP, MON_CAP_W)) {
if (session)
dout(5) << "attempt to create new pool without sufficient auid privileges!"
<< "message: " << *m << std::endl