Which can fail due to missing keyring.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
monc->set_want_keys(CEPH_ENTITY_TYPE_MON|CEPH_ENTITY_TYPE_OSD
|CEPH_ENTITY_TYPE_MDS|CEPH_ENTITY_TYPE_MGR);
monc->set_messenger(client_messenger);
- monc->init();
- int r = monc->authenticate();
+ int r = monc->init();
+ if (r < 0) {
+ monc->shutdown();
+ client_messenger->shutdown();
+ client_messenger->wait();
+ return r;
+ }
+ r = monc->authenticate();
if (r < 0) {
derr << "Authentication failed, did you specify a mgr ID with a valid keyring?" << dendl;
monc->shutdown();