aboutsummaryrefslogtreecommitdiff
path: root/testcases/kernel/syscalls/dup/dup05.c
diff options
context:
space:
mode:
Diffstat (limited to 'testcases/kernel/syscalls/dup/dup05.c')
-rw-r--r--testcases/kernel/syscalls/dup/dup05.c46
1 files changed, 17 insertions, 29 deletions
diff --git a/testcases/kernel/syscalls/dup/dup05.c b/testcases/kernel/syscalls/dup/dup05.c
index 362f3e170..619b4861e 100644
--- a/testcases/kernel/syscalls/dup/dup05.c
+++ b/testcases/kernel/syscalls/dup/dup05.c
@@ -1,55 +1,43 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2000 Silicon Graphics, Inc. All Rights Reserved.
- *
* 06/1994 AUTHOR: Richard Logan CO-PILOT: William Roske
+ * Copyright (c) 2012-2023 SUSE LLC
*/
/*\
- * [DESCRIPTION]
+ * [Description]
*
- * Basic test for dup(2) of a named pipe descriptor
+ * Basic test for dup(2) of a named pipe descriptor.
*/
-#include <stdio.h>
+
#include "tst_test.h"
-char Fname[255];
-int fd;
+#define FNAME "dupfile"
+
+static int fd = -1;
static void run(void)
{
- TEST(dup(fd));
-
- if (TST_RET == -1) {
- tst_res(TFAIL | TTERRNO, "dup failed");
- } else {
- tst_res(TPASS, "dup returned %ld",
- TST_RET);
-
- SAFE_CLOSE(TST_RET);
- }
+ TST_EXP_FD(dup(fd), "dup(%d)", fd);
+ SAFE_CLOSE(TST_RET);
}
-void setup(void)
+static void setup(void)
{
- fd = -1;
-
- sprintf(Fname, "dupfile");
- SAFE_MKFIFO(Fname, 0777);
- if ((fd = open(Fname, O_RDWR, 0700)) == -1)
- tst_brk(TBROK, "open failed");
+ SAFE_MKFIFO(FNAME, 0777);
+ fd = SAFE_OPEN(FNAME, O_RDWR, 0700);
}
-void cleanup(void)
+static void cleanup(void)
{
if (fd != -1)
- if (close(fd) == -1)
- tst_res(TWARN | TERRNO, "close failed");
+ SAFE_CLOSE(fd);
}
static struct tst_test test = {
- .test_all = run,
- .setup = setup,
- .cleanup = cleanup,
+ .test_all = run,
+ .setup = setup,
+ .cleanup = cleanup,
.needs_tmpdir = 1,
};