From fc90a084c4eccad2dc677caf7b9fe4ca1a1de305 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 16 Jan 2019 15:00:59 -0600 Subject: [PATCH] auth/AuthClientHandler: pass in session_key, connection_secret pointers No functional change. Signed-off-by: Sage Weil --- src/auth/AuthClientHandler.h | 4 +++- src/auth/cephx/CephxClientHandler.cc | 6 +++++- src/auth/cephx/CephxClientHandler.h | 4 +++- src/auth/krb/KrbClientHandler.cpp | 7 +++++-- src/auth/krb/KrbClientHandler.hpp | 4 +++- src/auth/none/AuthNoneClientHandler.h | 4 +++- src/auth/unknown/AuthUnknownClientHandler.h | 4 +++- src/mon/MonClient.cc | 2 +- 8 files changed, 26 insertions(+), 9 deletions(-) diff --git a/src/auth/AuthClientHandler.h b/src/auth/AuthClientHandler.h index 7e9d0cc910da5..5b24a1ff856d4 100644 --- a/src/auth/AuthClientHandler.h +++ b/src/auth/AuthClientHandler.h @@ -49,7 +49,9 @@ public: virtual void reset() = 0; virtual void prepare_build_request() = 0; virtual int build_request(bufferlist& bl) const = 0; - virtual int handle_response(int ret, bufferlist::const_iterator& iter) = 0; + virtual int handle_response(int ret, bufferlist::const_iterator& iter, + CryptoKey *session_key, + CryptoKey *connection_secret) = 0; virtual bool build_rotating_request(bufferlist& bl) const = 0; virtual AuthAuthorizer *build_authorizer(uint32_t service_id) const = 0; diff --git a/src/auth/cephx/CephxClientHandler.cc b/src/auth/cephx/CephxClientHandler.cc index b4bbdc6cc03b0..64924777e5b8e 100644 --- a/src/auth/cephx/CephxClientHandler.cc +++ b/src/auth/cephx/CephxClientHandler.cc @@ -105,7 +105,11 @@ bool CephxClientHandler::_need_tickets() const return need && need != CEPH_ENTITY_TYPE_MGR; } -int CephxClientHandler::handle_response(int ret, bufferlist::const_iterator& indata) +int CephxClientHandler::handle_response( + int ret, + bufferlist::const_iterator& indata, + CryptoKey *session_key, + CryptoKey *connection_secret) { ldout(cct, 10) << "handle_response ret = " << ret << dendl; diff --git a/src/auth/cephx/CephxClientHandler.h b/src/auth/cephx/CephxClientHandler.h index 9d821281588d4..63a4c7a513b32 100644 --- a/src/auth/cephx/CephxClientHandler.h +++ b/src/auth/cephx/CephxClientHandler.h @@ -54,7 +54,9 @@ public: } void prepare_build_request() override; int build_request(bufferlist& bl) const override; - int handle_response(int ret, bufferlist::const_iterator& iter) override; + int handle_response(int ret, bufferlist::const_iterator& iter, + CryptoKey *session_key, + CryptoKey *connection_secret) override; bool build_rotating_request(bufferlist& bl) const override; int get_protocol() const override { return CEPH_AUTH_CEPHX; } diff --git a/src/auth/krb/KrbClientHandler.cpp b/src/auth/krb/KrbClientHandler.cpp index 5e299824b7acb..b82c8a6518877 100644 --- a/src/auth/krb/KrbClientHandler.cpp +++ b/src/auth/krb/KrbClientHandler.cpp @@ -89,8 +89,11 @@ int KrbClientHandler::build_request(bufferlist& buff_list) const } -int KrbClientHandler::handle_response(int ret, - bufferlist::const_iterator& buff_list) +int KrbClientHandler::handle_response( + int ret, + bufferlist::const_iterator& buff_list, + CryptoKey *session_key, + CryptoKey *connection_secret) { auto result(ret); gss_buffer_desc gss_buffer_in = {0, nullptr}; diff --git a/src/auth/krb/KrbClientHandler.hpp b/src/auth/krb/KrbClientHandler.hpp index 66f03d069051e..3418f0d6d7d78 100644 --- a/src/auth/krb/KrbClientHandler.hpp +++ b/src/auth/krb/KrbClientHandler.hpp @@ -52,7 +52,9 @@ class KrbClientHandler : public AuthClientHandler { void prepare_build_request() override { }; int build_request(bufferlist& buff_list) const override; int handle_response(int ret, - bufferlist::const_iterator& buff_list) override; + bufferlist::const_iterator& buff_list, + CryptoKey *session_key, + CryptoKey *connection_secret) override; bool build_rotating_request(bufferlist& buff_list) const override { return false; diff --git a/src/auth/none/AuthNoneClientHandler.h b/src/auth/none/AuthNoneClientHandler.h index c74acb6ec3856..6578e2eb67e8d 100644 --- a/src/auth/none/AuthNoneClientHandler.h +++ b/src/auth/none/AuthNoneClientHandler.h @@ -30,7 +30,9 @@ public: void prepare_build_request() override {} int build_request(bufferlist& bl) const override { return 0; } - int handle_response(int ret, bufferlist::const_iterator& iter) override { return 0; } + int handle_response(int ret, bufferlist::const_iterator& iter, + CryptoKey *session_key, + CryptoKey *connection_secret) override { return 0; } bool build_rotating_request(bufferlist& bl) const override { return false; } int get_protocol() const override { return CEPH_AUTH_NONE; } diff --git a/src/auth/unknown/AuthUnknownClientHandler.h b/src/auth/unknown/AuthUnknownClientHandler.h index b8158f326e282..0ffa3e50c0e52 100644 --- a/src/auth/unknown/AuthUnknownClientHandler.h +++ b/src/auth/unknown/AuthUnknownClientHandler.h @@ -29,7 +29,9 @@ public: void prepare_build_request() {} int build_request(bufferlist& bl) const { return 0; } - int handle_response(int ret, bufferlist::iterator& iter) { return 0; } + int handle_response(int ret, bufferlist::iterator& iter, + CryptoKey *session_key, + CryptoKey *connection_secret) { return 0; } bool build_rotating_request(bufferlist& bl) const { return false; } int get_protocol() const { return CEPH_AUTH_UNKNOWN; } diff --git a/src/mon/MonClient.cc b/src/mon/MonClient.cc index b69ebddb2c4fa..6f0dc40f27859 100644 --- a/src/mon/MonClient.cc +++ b/src/mon/MonClient.cc @@ -1349,7 +1349,7 @@ int MonConnection::authenticate(MAuthReply *m) ldout(cct, 10) << "my global_id is " << m->global_id << dendl; } auto p = m->result_bl.cbegin(); - int ret = auth->handle_response(m->result, p); + int ret = auth->handle_response(m->result, p, nullptr, nullptr); if (ret == -EAGAIN) { auto ma = new MAuth; ma->protocol = auth->get_protocol(); -- 2.39.5