libceph: add update_authorizer auth method
[firefly-linux-kernel-4.4.55.git] / net / ceph / osd_client.c
index cb14db8496bd31908d1e1ab7be3d7319df0a4478..5ef24e3e16273dec61d96d70c2e4bf014e80e605 100644 (file)
@@ -2220,6 +2220,11 @@ static struct ceph_auth_handshake *get_authorizer(struct ceph_connection *con,
                                                        auth);
                if (ret)
                        return ERR_PTR(ret);
+       } else if (ac->ops && ac->ops->update_authorizer) {
+               int ret = ac->ops->update_authorizer(ac, CEPH_ENTITY_TYPE_OSD,
+                                                    auth);
+               if (ret)
+                       return ERR_PTR(ret);
        }
        *proto = ac->protocol;