This synchronous check has always been kludgey; remove it and just fault
instead, just like we did with
794a8f9cf51cf176636d114ccfbbf68fbc304083
in AsyncMessenger.
Signed-off-by: Sage Weil <sage@redhat.com>
int Pipe::connect()
{
- bool got_bad_auth = false;
-
ldout(msgr->cct,10) << "connect " << connect_seq << dendl;
ceph_assert(pipe_lock.is_locked());
if (reply.tag == CEPH_MSGR_TAG_BADAUTHORIZER) {
ldout(msgr->cct,0) << "connect got BADAUTHORIZER" << dendl;
- if (got_bad_auth)
- goto stop_locked;
- got_bad_auth = true;
- pipe_lock.Unlock();
- delete authorizer;
- authorizer = msgr->ms_deliver_get_authorizer(peer_type, true);
- continue;
+ goto fail_locked;
}
if (reply.tag == CEPH_MSGR_TAG_RESETSESSION) {
ldout(msgr->cct,0) << "connect got RESETSESSION" << dendl;