statvfs.h 656 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright (c) 2021, Justin Mietzner <sw1tchbl4d3@sw1tchbl4d3.com>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <sys/cdefs.h>
  8. #include <sys/types.h>
  9. __BEGIN_DECLS
  10. #define ST_RDONLY 0x1
  11. #define ST_NOSUID 0x2
  12. struct statvfs {
  13. unsigned long f_bsize;
  14. unsigned long f_frsize;
  15. fsblkcnt_t f_blocks;
  16. fsblkcnt_t f_bfree;
  17. fsblkcnt_t f_bavail;
  18. fsfilcnt_t f_files;
  19. fsfilcnt_t f_ffree;
  20. fsfilcnt_t f_favail;
  21. unsigned long f_fsid;
  22. unsigned long f_flag;
  23. unsigned long f_namemax;
  24. };
  25. int statvfs(const char* path, struct statvfs* buf);
  26. int fstatvfs(int fd, struct statvfs* buf);
  27. __END_DECLS