diff options
-rw-r--r-- | compiler-rt/test/sanitizer_common/TestCases/Posix/getfsent.cc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/compiler-rt/test/sanitizer_common/TestCases/Posix/getfsent.cc b/compiler-rt/test/sanitizer_common/TestCases/Posix/getfsent.cc new file mode 100644 index 00000000000..687a7a7d487 --- /dev/null +++ b/compiler-rt/test/sanitizer_common/TestCases/Posix/getfsent.cc @@ -0,0 +1,36 @@ +// RUN: %clangxx -O0 -g %s -o %t && %run %t 2>&1 | FileCheck %s +// +// UNSUPPORTED: linux, darwin, solaris + +#include <assert.h> +#include <errno.h> +#include <stdio.h> +#include <string.h> +#include <fstab.h> + +int main(void) { + printf("getfsent\n"); + + setfsent(); + struct fstab *fentry = getfsent(); + + assert(fentry); + + setfsent(); + struct fstab *pentry = getfsspec(fentry->fs_spec); + assert(pentry); + setfsent(); + struct fstab *wentry = getfsfile(fentry->fs_file); + assert(wentry); + assert(!memcmp(fentry, wentry, sizeof(*wentry))); + assert(!memcmp(pentry, wentry, sizeof(*pentry))); + + printf("First entry: device block '%s', mounted with '%s'\n", + fentry->fs_spec, fentry->fs_mntops); + + endfsent(); + + return 0; + // CHECK: getfsent + // CHECK: First entry: device block '{{.*}}', mounted with '{{.*}}' +} |