diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2013-01-17 22:44:00 +0100 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2013-01-17 22:44:00 +0100 |
commit | bcf1bfabdef4481d4748e6c4a82b579af628fd75 (patch) | |
tree | 8da8ac1bd99cc996fb3ab725405a7bb06bdca776 /test/misc/tst-statfs.c | |
parent | 1e2e4ac6193ffe0900bd392fa3c596883771eb34 (diff) |
statfs: support f_frsize
closes bugzilla #5834
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Diffstat (limited to 'test/misc/tst-statfs.c')
-rw-r--r-- | test/misc/tst-statfs.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/misc/tst-statfs.c b/test/misc/tst-statfs.c new file mode 100644 index 000000000..44ab3aa77 --- /dev/null +++ b/test/misc/tst-statfs.c @@ -0,0 +1,33 @@ +#define _FILE_OFFSET_BITS 64 + +#include <sys/vfs.h> +#include <errno.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +int +main(int argc, char* argv[]) +{ + struct statfs s; + int ret = 0, i; + + for (i = 1; i < argc; i++) { + if (statfs(argv[i], &s) != 0) { + fprintf(stderr, "%s: %s: statfs failed. %s\n", + *argv, argv[i], strerror(errno)); + exit(EXIT_FAILURE); + } + ++ret; + printf("statfs %s:\n\tblocks=%lld\n\tblkfree=%lld\n\tbsize=%d\n", + argv[i], s.f_blocks, s.f_bfree, s.f_bsize); +#ifdef _STATFS_F_FRSIZE + printf("\tfrsize=%lld\n", s.f_frsize); +#elif defined __mips__ + printf("\tfrsize=mips, unsupported?\n"); +#else +# error no _STATFS_F_FRSIZE +#endif + } + exit(ret ? EXIT_SUCCESS : EXIT_FAILURE); +} |