summaryrefslogtreecommitdiff
path: root/ltp_framework/lib/tst_cwd_has_free.c
diff options
context:
space:
mode:
Diffstat (limited to 'ltp_framework/lib/tst_cwd_has_free.c')
-rw-r--r--ltp_framework/lib/tst_cwd_has_free.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/ltp_framework/lib/tst_cwd_has_free.c b/ltp_framework/lib/tst_cwd_has_free.c
new file mode 100644
index 0000000..791df09
--- /dev/null
+++ b/ltp_framework/lib/tst_cwd_has_free.c
@@ -0,0 +1,22 @@
+/*
+ * AUTHOR
+ * Ricky Ng-Adam <rngadam@yahoo.com>, 2005-01-01
+ *
+ * DESCRIPTION
+ * Check if there is enough blocks to fill number of KiB specified
+ * If current directory has enough blocks, return 1
+ * If current directory has NOT enough blocks, return 0
+ *
+ *
+ */
+#include <sys/vfs.h>
+
+int
+tst_cwd_has_free(int required_kib)
+{
+ struct statfs sf;
+ statfs(".", &sf);
+
+ /* check that we have enough blocks to create swap file */
+ return ((float)sf.f_bfree)/(1024/sf.f_bsize) >= required_kib?1:0;
+} \ No newline at end of file