]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
auth: make AuthSessionHandler purely abstract.
authorRadoslaw Zarzynski <rzarzyns@redhat.com>
Tue, 22 Jan 2019 19:19:25 +0000 (20:19 +0100)
committerRadoslaw Zarzynski <rzarzyns@redhat.com>
Thu, 21 Feb 2019 20:52:47 +0000 (21:52 +0100)
This is possible because the dropped state is/was required only by:
 * CephxSessionHandler,
 * methods removed by the previous commits.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
src/auth/AuthSessionHandler.cc
src/auth/AuthSessionHandler.h
src/auth/cephx/CephxSessionHandler.h
src/auth/krb/KrbSessionHandler.hpp
src/auth/none/AuthNoneSessionHandler.h
src/auth/unknown/AuthUnknownSessionHandler.h

index 54dbdb79598a612c8a83f0eced5543f59829242a..1be86fb0950ff33415b7a0096f8e5800ef1ba6f3 100644 (file)
@@ -43,12 +43,12 @@ AuthSessionHandler *get_auth_session_handler(
     }
     return new CephxSessionHandler(cct, key, connection_secret, features);
   case CEPH_AUTH_NONE:
-    return new AuthNoneSessionHandler(cct, key, connection_secret);
+    return new AuthNoneSessionHandler();
   case CEPH_AUTH_UNKNOWN:
-    return new AuthUnknownSessionHandler(cct, key, connection_secret);
+    return new AuthUnknownSessionHandler();
 #ifdef HAVE_GSSAPI
   case CEPH_AUTH_GSS: 
-    return new KrbSessionHandler(cct, key, connection_secret);
+    return new KrbSessionHandler();
 #endif
   default:
     return nullptr;
index 76e31a003a306bfbd7b45c343c3eba0c8fb99bee..341db88e72153d0f9e4324ecbf7b9f60bd3e1c9a 100644 (file)
@@ -27,24 +27,7 @@ class CephContext;
 class Message;
 
 struct AuthSessionHandler {
-protected:
-  CephContext *cct;
-  int protocol;
-  CryptoKey key;                  // per mon authentication
-  std::string connection_secret;  // per connection
-
-public:
-  explicit AuthSessionHandler(CephContext *cct_) : cct(cct_), protocol(CEPH_AUTH_UNKNOWN) {}
-
-  AuthSessionHandler(CephContext *cct_, int protocol_,
-                    const CryptoKey& key_,
-                    const std::string& cs_)
-    : cct(cct_),
-      protocol(protocol_),
-      key(key_),
-      connection_secret(cs_) {}
-  virtual ~AuthSessionHandler() { }
-
+  virtual ~AuthSessionHandler() = default;
   virtual int sign_message(Message *message) = 0;
   virtual int check_message_signature(Message *message) = 0;
   virtual int encrypt_message(Message *message) = 0;
index 0def90cbed26f58d0f8236d156b25e31c01e19fb..03a6ef50c89287506c9241ab7f6a30fbee0b17ca 100644 (file)
@@ -20,16 +20,24 @@ class CephContext;
 class Message;
 
 class CephxSessionHandler  : public AuthSessionHandler {
+  CephContext *cct;
+  int protocol;
+  CryptoKey key;                  // per mon authentication
+  std::string connection_secret;  // per connection
   uint64_t features;
 
 public:
-  CephxSessionHandler(CephContext *cct_,
+  CephxSessionHandler(CephContext *cct,
                      const CryptoKey& session_key,
                      const std::string& connection_secret,
-                     uint64_t features)
-    : AuthSessionHandler(cct_, CEPH_AUTH_CEPHX, session_key, connection_secret),
-      features(features) {}
-  ~CephxSessionHandler() override {}
+                     const uint64_t features)
+    : cct(cct),
+      protocol(CEPH_AUTH_CEPHX),
+      key(session_key),
+      connection_secret(connection_secret),
+      features(features) {
+  }
+  ~CephxSessionHandler() override = default;
 
   int _calc_signature(Message *m, uint64_t *psig);
 
index fcfe4b84522455f4f82d023cf5418819fcb41cde..9f715730a56d1abc7a3084022f89227b982dfc27 100644 (file)
  
 #define dout_subsys ceph_subsys_auth
 
-
-class CephContext;
 class Message;
 
 class KrbSessionHandler : public AuthSessionHandler {
 
   public:
-    KrbSessionHandler(CephContext* ceph_ctx,
-                     const CryptoKey& session_key,
-                     const std::string& connection_secret) :
-      AuthSessionHandler(ceph_ctx, CEPH_AUTH_GSS, session_key,
-                        connection_secret) { }
+    KrbSessionHandler() = default;
     ~KrbSessionHandler() override = default; 
 
     // No security
index 63ff7974daadf59a35fe2aa7066030f1cc3a7f6e..2c738191f5edbd804385062fb86875ae2c8e1798 100644 (file)
 #include "auth/AuthSessionHandler.h"
 #include "msg/Message.h"
 
-class CephContext;
-
-class AuthNoneSessionHandler  : public AuthSessionHandler {
+class AuthNoneSessionHandler : public AuthSessionHandler {
 public:
-  AuthNoneSessionHandler(CephContext *cct_,
-                        const CryptoKey& session_key,
-                        const std::string& connection_secret)
-    : AuthSessionHandler(cct_, CEPH_AUTH_NONE, session_key, connection_secret) {}
-  ~AuthNoneSessionHandler() override {}
+  AuthNoneSessionHandler() = default;
+  ~AuthNoneSessionHandler() override = default;
   
   // The None suite neither signs nor encrypts messages, so these functions just return success.
   // Since nothing was signed or encrypted, don't increment the stats.  PLR
index 637176ed9c1a0f034bb434b77e094aaad8d26802..9bf901004a2123e880b68f51143cf91da9139830 100644 (file)
 
 #define dout_subsys ceph_subsys_auth
 
-class CephContext;
-
-class AuthUnknownSessionHandler  : public AuthSessionHandler {
+class AuthUnknownSessionHandler : public AuthSessionHandler {
 public:
-  AuthUnknownSessionHandler(CephContext *cct_,
-                           const CryptoKey& session_key,
-                           const std::string& connection_secret)
-    : AuthSessionHandler(cct_, CEPH_AUTH_UNKNOWN,
-                        session_key, connection_secret) {}
-  ~AuthUnknownSessionHandler() override {}
+  AuthUnknownSessionHandler() = default;
+  ~AuthUnknownSessionHandler() override = default;
   
   // The Unknown suite neither signs nor encrypts messages, so these functions just return success.
   // Since nothing was signed or encrypted, don't increment the stats.  PLR