diff options
Diffstat (limited to 'testsuite/systemtap.syscall/link.c')
-rw-r--r-- | testsuite/systemtap.syscall/link.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/testsuite/systemtap.syscall/link.c b/testsuite/systemtap.syscall/link.c new file mode 100644 index 00000000..072c2440 --- /dev/null +++ b/testsuite/systemtap.syscall/link.c @@ -0,0 +1,31 @@ +/* COVERAGE: link symlink readlink */ +#include <unistd.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> + +int main() +{ + int fd; + char buf[128]; + + fd = open("foobar",O_WRONLY|O_CREAT, S_IRWXU); + close(fd); + + link("foobar", "foobar2"); + // link ("foobar", "foobar2") = 0 + + link("foobar", "foobar"); + // link ("foobar", "foobar") = -NNNN (EEXIST) + + link("nonexist", "foo"); + // link ("nonexist", "foo") = -NNNN (ENOENT) + + symlink("foobar", "Sfoobar"); + // symlink ("foobar", "Sfoobar") = 0 + + readlink("Sfoobar", buf, sizeof(buf)); + // readlink ("Sfoobar", XXXX, 128) = 6 + + return 0; +} |