initial code repo
[stor4nfv.git] / src / ceph / src / cls / cephfs / cls_cephfs_client.h
diff --git a/src/ceph/src/cls/cephfs/cls_cephfs_client.h b/src/ceph/src/cls/cephfs/cls_cephfs_client.h
new file mode 100644 (file)
index 0000000..b028917
--- /dev/null
@@ -0,0 +1,35 @@
+
+#include "mds/mdstypes.h"
+#include "cls_cephfs.h"
+
+class AccumulateArgs;
+namespace librados {
+  class IoCtx;
+}
+
+class ClsCephFSClient
+{
+  public:
+  static int accumulate_inode_metadata(
+      librados::IoCtx &ctx,
+      inodeno_t inode_no,
+      const uint64_t obj_index,
+      const uint64_t obj_size,
+      const time_t mtime);
+
+  static int fetch_inode_accumulate_result(
+      librados::IoCtx &ctx,
+      const std::string &oid,
+      inode_backtrace_t *backtrace,
+      file_layout_t *layout,
+      AccumulateResult *result);
+
+  static int delete_inode_accumulate_result(
+      librados::IoCtx &ctx,
+      const std::string &oid);
+
+  static void build_tag_filter(
+      const std::string &scrub_tag,
+      bufferlist *out_bl);
+};
+