]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
auth/DummyAuth: dummy auth server and client for test code
authorSage Weil <sage@redhat.com>
Wed, 30 Jan 2019 18:29:06 +0000 (12:29 -0600)
committerSage Weil <sage@redhat.com>
Thu, 7 Feb 2019 18:10:34 +0000 (12:10 -0600)
Signed-off-by: Sage Weil <sage@redhat.com>
src/auth/AuthRegistry.cc
src/auth/DummyAuth.h [new file with mode: 0644]

index a6be5e7b41130fd569f635cf11a4a93608d2b751..58807b62152154c18da9fbb792a8797180fa6b81 100644 (file)
@@ -120,6 +120,12 @@ void AuthRegistry::_refresh_config()
                << " service_methods " << service_methods
                << " client_methods " << client_methods
                << dendl;
+  ldout(cct,10) << __func__ << " mon_cluster_modes " << mon_cluster_modes
+               << " mon_service_mdoes " << mon_service_modes
+               << " cluster_modes " << cluster_modes
+               << " service_modes " << service_modes
+               << " client_modes " << client_modes
+               << dendl;
 
   // if we have no keyring, filter out cephx
   _no_keyring_disabled_cephx = false;
diff --git a/src/auth/DummyAuth.h b/src/auth/DummyAuth.h
new file mode 100644 (file)
index 0000000..237518d
--- /dev/null
@@ -0,0 +1,63 @@
+// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
+// vim: ts=8 sw=2 smarttab
+
+#include "AuthClient.h"
+#include "AuthServer.h"
+
+class DummyAuthClientServer : public AuthClient,
+                             public AuthServer {
+public:
+  DummyAuthClientServer(CephContext *cct) : AuthServer(cct) {}
+
+  // client
+  int get_auth_request(
+    Connection *con,
+    AuthConnectionMeta *auth_meta,
+    uint32_t *method,
+    std::vector<uint32_t> *preferred_modes,
+    bufferlist *out) override {
+    *method = CEPH_AUTH_NONE;
+    *preferred_modes = { CEPH_CON_MODE_CRC };
+    return 0;
+  }
+
+  int handle_auth_reply_more(
+    Connection *con,
+    AuthConnectionMeta *auth_meta,
+    const bufferlist& bl,
+    bufferlist *reply) override {
+    ceph_abort();
+  }
+
+  int handle_auth_done(
+    Connection *con,
+    AuthConnectionMeta *auth_meta,
+    uint64_t global_id,
+    uint32_t con_mode,
+    const bufferlist& bl,
+    CryptoKey *session_key,
+    std::string *connection_secret) {
+    return 0;
+  }
+
+  int handle_auth_bad_method(
+    Connection *con,
+    AuthConnectionMeta *auth_meta,
+    uint32_t old_auth_method,
+    int result,
+    const std::vector<uint32_t>& allowed_methods,
+    const std::vector<uint32_t>& allowed_modes) override {
+    ceph_abort();
+  }
+
+  // server
+  int handle_auth_request(
+    Connection *con,
+    AuthConnectionMeta *auth_meta,
+    bool more,
+    uint32_t auth_method,
+    const bufferlist& bl,
+    bufferlist *reply) override {
+    return 1;
+  }
+};