From fc00c656c96528112d05cf0edf8631bd5eaea446 Mon Sep 17 00:00:00 2001 From: Kacper Date: Sun, 7 Dec 2025 20:10:31 +0100 Subject: Add build system scaffolding and libc headers --- lib/libc/statvfs/statvfs.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 lib/libc/statvfs/statvfs.c (limited to 'lib/libc/statvfs/statvfs.c') diff --git a/lib/libc/statvfs/statvfs.c b/lib/libc/statvfs/statvfs.c new file mode 100644 index 00000000..df8c9544 --- /dev/null +++ b/lib/libc/statvfs/statvfs.c @@ -0,0 +1,25 @@ +#include <__statvfs.h> +#include +#include + +int statvfs(const char *restrict path, struct __statvfs *restrict buf) +{ + struct statfs statfs; + + if (syscall(statfs, path, &statfs) < 0) + return -1; + + buf->f_bsize = statfs.f_bsize; + buf->f_frsize = statfs.f_frsize ? statfs.f_frsize : statfs.f_bsize; + buf->f_blocks = statfs.f_blocks; + buf->f_bfree = statfs.f_bfree; + buf->f_bavail = statfs.f_bavail; + buf->f_files = statfs.f_files; + buf->f_ffree = statfs.f_ffree; + buf->f_favail = statfs.f_ffree; + buf->f_fsid = statfs.f_fsid.val[0]; + buf->f_flag = statfs.f_flags; + buf->f_namemax = statfs.f_namelen; + + return 0; +} -- cgit v1.2.3