summaryrefslogtreecommitdiffstats
path: root/src/auth
diff options
context:
space:
mode:
authorSage Weil <sage@redhat.com>2019-01-30 19:29:06 +0100
committerSage Weil <sage@redhat.com>2019-02-07 19:10:34 +0100
commit396e10fe793bdee692718d22882d39fd596b5bbd (patch)
tree04e52a8c610eebcbfa4d420fa4582b65d4e377c4 /src/auth
parentmon/Monitor: fix leak of auth_handler if we error out (diff)
downloadceph-396e10fe793bdee692718d22882d39fd596b5bbd.tar.xz
ceph-396e10fe793bdee692718d22882d39fd596b5bbd.zip
auth/DummyAuth: dummy auth server and client for test code
Signed-off-by: Sage Weil <sage@redhat.com>
Diffstat (limited to 'src/auth')
-rw-r--r--src/auth/AuthRegistry.cc6
-rw-r--r--src/auth/DummyAuth.h63
2 files changed, 69 insertions, 0 deletions
diff --git a/src/auth/AuthRegistry.cc b/src/auth/AuthRegistry.cc
index a6be5e7b411..58807b62152 100644
--- a/src/auth/AuthRegistry.cc
+++ b/src/auth/AuthRegistry.cc
@@ -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
index 00000000000..237518d414c
--- /dev/null
+++ b/src/auth/DummyAuth.h
@@ -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;
+ }
+};