]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/net/Connection: add priv member for osd to use
authorSamuel Just <sjust@redhat.com>
Tue, 11 Jun 2019 00:25:45 +0000 (17:25 -0700)
committerSamuel Just <sjust@redhat.com>
Thu, 20 Jun 2019 19:14:01 +0000 (12:14 -0700)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/net/Connection.h

index 986ba437548fac5ec864cea4b4a65e5a56bab535..a8a7f43a1951f287d6bfd15e5b8c9979e3311b27 100644 (file)
@@ -78,6 +78,27 @@ class Connection : public seastar::enable_shared_from_this<Connection> {
   }
   auto get_last_keepalive() const { return last_keepalive; }
   auto get_last_keepalive_ack() const { return last_keepalive_ack; }
+
+  seastar::shared_ptr<Connection> get_shared() {
+    return shared_from_this();
+  }
+
+  struct user_private_t {
+    virtual ~user_private_t() = default;
+  };
+private:
+  unique_ptr<user_private_t> user_private;
+public:
+  bool has_user_private() const {
+    return user_private != nullptr;
+  }
+  void set_user_private(unique_ptr<user_private_t> new_user_private) {
+    user_private = std::move(new_user_private);
+  }
+  user_private_t &get_user_private() {
+    ceph_assert(user_private);
+    return *user_private;
+  }
 };
 
 inline ostream& operator<<(ostream& out, const Connection& conn) {