X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ceph%2Fsrc%2Fmon%2FAuthMonitor.cc;h=1f13145a6d929678b9f7d44cae453586f9a8d8d7;hb=3efd99882e8c73385040d3f5c48fd014e4247be7;hp=c9c836dc5151d99bedb09bcd156ce822575c6665;hpb=1a629971a9bcaaae99e5539a3a43f800a297f267;p=ceph.git diff --git a/ceph/src/mon/AuthMonitor.cc b/ceph/src/mon/AuthMonitor.cc index c9c836dc5..1f13145a6 100644 --- a/ceph/src/mon/AuthMonitor.cc +++ b/ceph/src/mon/AuthMonitor.cc @@ -1551,11 +1551,15 @@ void AuthMonitor::upgrade_format() } } - // add bootstrap key - { + // add bootstrap key if it does not already exist + // (might have already been get-or-create'd by + // ceph-create-keys) + EntityName bootstrap_mgr_name; + int r = bootstrap_mgr_name.from_str("client.bootstrap-mgr"); + assert(r); + if (!mon->key_server.contains(bootstrap_mgr_name)) { KeyServerData::Incremental auth_inc; - bool r = auth_inc.name.from_str("client.bootstrap-mgr"); - assert(r); + auth_inc.name = bootstrap_mgr_name; ::encode("allow profile bootstrap-mgr", auth_inc.auth.caps["mon"]); auth_inc.op = KeyServerData::AUTH_INC_ADD; // generate key