#include <seastar/core/future-util.hh>
#include <seastar/core/lowres_clock.hh>
+#include <seastar/core/shared_future.hh>
#include <seastar/util/log.hh>
#include "auth/AuthClientHandler.h"
private:
bool closed = false;
// v1
- seastar::promise<Ref<MAuthReply>> reply;
+ seastar::shared_promise<Ref<MAuthReply>> reply;
// v2
using clock_t = seastar::lowres_system_clock;
clock_t::time_point auth_start;
logger().info("sending {}", *m);
return conn->send(m).then([this] {
logger().info("waiting");
- return reply.get_future();
+ return reply.get_shared_future();
}).then([this] (Ref<MAuthReply> m) {
if (!m) {
ceph_assert(closed);
return conn->keepalive().then([epoch, name, this] {
return setup_session(epoch, name);
}).then([this] {
- return reply.get_future();
+ return reply.get_shared_future();
}).then([name, want_keys, this](Ref<MAuthReply> m) {
if (!m) {
logger().error("authenticate_v1 canceled on {}", name);