]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/mon/ConfigKeyService.h
update sources to v12.1.0
[ceph.git] / ceph / src / mon / ConfigKeyService.h
index 34c70342a981cd25617dbeb90bfd03b209d34ccf..9977968736593e8c57760b0cd336e44edba64a7e 100644 (file)
@@ -15,6 +15,7 @@
 #define CEPH_MON_CONFIG_KEY_SERVICE_H
 
 #include "mon/QuorumService.h"
+#include "mon/MonitorDBStore.h"
 
 class Paxos;
 class Monitor;
@@ -28,10 +29,15 @@ class ConfigKeyService : public QuorumService
 
   int store_get(const string &key, bufferlist &bl);
   void store_put(const string &key, bufferlist &bl, Context *cb = NULL);
+  void store_delete(MonitorDBStore::TransactionRef t, const string &key);
   void store_delete(const string &key, Context *cb = NULL);
+  void store_delete_prefix(
+      MonitorDBStore::TransactionRef t,
+      const string &prefix);
   void store_list(stringstream &ss);
   void store_dump(stringstream &ss);
   bool store_exists(const string &key);
+  bool store_has_prefix(const string &prefix);
 
   static const string STORE_PREFIX;
 
@@ -61,6 +67,14 @@ public:
   void cleanup() override { }
   void service_tick() override { }
 
+  int validate_osd_destroy(const int32_t id, const uuid_d& uuid);
+  void do_osd_destroy(int32_t id, uuid_d& uuid);
+  int validate_osd_new(
+      const uuid_d& uuid,
+      const string& dmcrypt_key,
+      stringstream& ss);
+  void do_osd_new(const uuid_d& uuid, const string& dmcrypt_key);
+
   int get_type() override {
     return QuorumService::SERVICE_CONFIG_KEY;
   }