dentry.hpp 538 B

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include <string>
  3. #include <bits/alltypes.h>
  4. #include <types/path.hpp>
  5. #include <kernel/async/lock.hpp>
  6. struct dentry;
  7. namespace fs {
  8. struct rust_vfs_handle {
  9. void* data[2];
  10. };
  11. struct dentry_deleter {
  12. void operator()(struct dentry* dentry) const;
  13. };
  14. using dentry_pointer = std::unique_ptr<struct dentry, dentry_deleter>;
  15. extern "C" int d_path(struct dentry* dentry, struct dentry* root,
  16. char* out_path, size_t buflen);
  17. dentry_pointer d_get(const dentry_pointer& dp);
  18. } // namespace fs