diff options
author | Pino Toscano <toscano.pino@tiscali.it> | 2012-09-28 21:33:52 +0200 |
---|---|---|
committer | Pino Toscano <toscano.pino@tiscali.it> | 2012-09-28 21:33:52 +0200 |
commit | 72581615f54e7c22aef7c81ee0e85ae34ecca82d (patch) | |
tree | b4d335ccc9389e137127140c664a4a8310d30f62 | |
parent | 715a900c9085907fa749589bf738b192b1a2bda5 (diff) | |
download | glibc-72581615f54e7c22aef7c81ee0e85ae34ecca82d.tar glibc-72581615f54e7c22aef7c81ee0e85ae34ecca82d.tar.gz glibc-72581615f54e7c22aef7c81ee0e85ae34ecca82d.tar.bz2 glibc-72581615f54e7c22aef7c81ee0e85ae34ecca82d.zip |
tst-mknodat: create a FIFO instead of a socket
A FIFO is the only special file which is guaranteed to be created with mknod/mknodat.
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | io/tst-mknodat.c | 28 |
2 files changed, 18 insertions, 14 deletions
@@ -1,3 +1,7 @@ +2012-09-28 Pino Toscano <toscano.pino@tiscali.it> + + * io/tst-mknodat.c: Create a FIFO instead of a socket. + 2012-09-28 Andreas Schwab <schwab@linux-m68k.org> [BZ #6530] diff --git a/io/tst-mknodat.c b/io/tst-mknodat.c index 9158c0dfd4..cba4dffadf 100644 --- a/io/tst-mknodat.c +++ b/io/tst-mknodat.c @@ -80,8 +80,8 @@ do_test (void) } closedir (dir); - /* Create a new directory. */ - int e = mknodat (dir_fd, "some-sock", 0777 | S_IFSOCK, 0); + /* Create a new fifo. */ + int e = mknodat (dir_fd, "some-fifo", 0777 | S_IFIFO, 0); if (e == -1) { if (errno == ENOSYS) @@ -90,19 +90,19 @@ do_test (void) return 0; } - puts ("socket creation failed"); + puts ("fifo creation failed"); return 1; } struct stat64 st1; - if (fstatat64 (dir_fd, "some-sock", &st1, 0) != 0) + if (fstatat64 (dir_fd, "some-fifo", &st1, 0) != 0) { puts ("fstat64 failed"); return 1; } - if (!S_ISSOCK (st1.st_mode)) + if (!S_ISFIFO (st1.st_mode)) { - puts ("mknodat did not create a Unix domain socket"); + puts ("mknodat did not create a fifo"); return 1; } @@ -124,15 +124,15 @@ do_test (void) puts ("2nd fdopendir failed"); return 1; } - bool has_some_sock = false; + bool has_some_fifo = false; while ((d = readdir64 (dir)) != NULL) - if (strcmp (d->d_name, "some-sock") == 0) + if (strcmp (d->d_name, "some-fifo") == 0) { - has_some_sock = true; + has_some_fifo = true; #ifdef _DIRENT_HAVE_D_TYPE - if (d->d_type != DT_UNKNOWN && d->d_type != DT_SOCK) + if (d->d_type != DT_UNKNOWN && d->d_type != DT_FIFO) { - puts ("d_type for some-sock wrong"); + puts ("d_type for some-fifo wrong"); return 1; } #endif @@ -144,13 +144,13 @@ do_test (void) } closedir (dir); - if (!has_some_sock) + if (!has_some_fifo) { - puts ("some-sock not in directory list"); + puts ("some-fifo not in directory list"); return 1; } - if (unlinkat (dir_fd, "some-sock", 0) != 0) + if (unlinkat (dir_fd, "some-fifo", 0) != 0) { puts ("unlinkat failed"); return 1; |