From 9406c1ced62ffa6c65d0d25b8ee8d5dea59f12bb Mon Sep 17 00:00:00 2001 From: Yingxin Cheng Date: Thu, 13 Oct 2022 17:51:52 +0800 Subject: [PATCH] crimson/net: hide peer_global_id from Connection class Signed-off-by: Yingxin Cheng --- src/crimson/auth/AuthServer.h | 1 + src/crimson/auth/DummyAuth.h | 1 + src/crimson/mon/MonClient.cc | 3 ++- src/crimson/mon/MonClient.h | 1 + src/crimson/net/Connection.h | 3 --- src/crimson/net/ProtocolV2.cc | 1 + src/crimson/net/SocketConnection.h | 2 ++ 7 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/crimson/auth/AuthServer.h b/src/crimson/auth/AuthServer.h index 800e2cd6ceb7..a808410d2d5b 100644 --- a/src/crimson/auth/AuthServer.h +++ b/src/crimson/auth/AuthServer.h @@ -35,6 +35,7 @@ public: bool more, //< true if this is not the first part of the handshake uint32_t auth_method, const bufferlist& bl, + uint64_t *p_peer_global_id, bufferlist *reply) = 0; }; diff --git a/src/crimson/auth/DummyAuth.h b/src/crimson/auth/DummyAuth.h index 89bb6734f61e..7a3dd7ec4d6a 100644 --- a/src/crimson/auth/DummyAuth.h +++ b/src/crimson/auth/DummyAuth.h @@ -70,6 +70,7 @@ public: bool more, uint32_t auth_method, const bufferlist& bl, + uint64_t *p_peer_global_id, bufferlist *reply) override { return 1; } diff --git a/src/crimson/mon/MonClient.cc b/src/crimson/mon/MonClient.cc index d89c0aded96d..24a9e2fc5329 100644 --- a/src/crimson/mon/MonClient.cc +++ b/src/crimson/mon/MonClient.cc @@ -589,6 +589,7 @@ int Client::handle_auth_request(crimson::net::Connection &conn, bool more, uint32_t auth_method, const ceph::bufferlist& payload, + uint64_t *p_peer_global_id, ceph::bufferlist *reply) { if (payload.length() == 0) { @@ -626,7 +627,7 @@ int Client::handle_auth_request(crimson::net::Connection &conn, auth_meta.get_connection_secret_length(), reply, &name, - &conn.peer_global_id, + p_peer_global_id, &caps_info, &auth_meta.session_key, &auth_meta.connection_secret, diff --git a/src/crimson/mon/MonClient.h b/src/crimson/mon/MonClient.h index c27291355a38..4e6d1e2dc392 100644 --- a/src/crimson/mon/MonClient.h +++ b/src/crimson/mon/MonClient.h @@ -131,6 +131,7 @@ private: bool more, uint32_t auth_method, const ceph::bufferlist& payload, + uint64_t *p_peer_global_id, ceph::bufferlist *reply) final; crimson::common::CephContext cct; // for auth_registry diff --git a/src/crimson/net/Connection.h b/src/crimson/net/Connection.h index 0f6bbb7ae8fb..084d0a70645b 100644 --- a/src/crimson/net/Connection.h +++ b/src/crimson/net/Connection.h @@ -79,9 +79,6 @@ class Connection : public seastar::enable_shared_from_this { set_peer_id(name.num()); } - public: - uint64_t peer_global_id = 0; - protected: uint64_t features = 0; diff --git a/src/crimson/net/ProtocolV2.cc b/src/crimson/net/ProtocolV2.cc index 1f5f13cd1d9e..9605eaadabed 100644 --- a/src/crimson/net/ProtocolV2.cc +++ b/src/crimson/net/ProtocolV2.cc @@ -966,6 +966,7 @@ seastar::future<> ProtocolV2::_handle_auth_request(bufferlist& auth_payload, boo more, auth_meta->auth_method, auth_payload, + &conn.peer_global_id, &reply); switch (r) { // successful diff --git a/src/crimson/net/SocketConnection.h b/src/crimson/net/SocketConnection.h index 814e75d935d6..a33c525ed5f1 100644 --- a/src/crimson/net/SocketConnection.h +++ b/src/crimson/net/SocketConnection.h @@ -49,6 +49,8 @@ class SocketConnection : public Connection { // messages sent, but not yet acked by peer std::deque sent; + uint64_t peer_global_id = 0; + seastar::shard_id shard_id() const; public: -- 2.47.3