[openssh-commits] [openssh] 01/01: Always clean up before and after utimensat test.

git+noreply at mindrot.org git+noreply at mindrot.org
Sat Jun 8 00:03:51 AEST 2019


This is an automated email from the git hooks/post-receive script.

dtucker pushed a commit to branch master
in repository openssh.

commit 2b3402dc9f1d9b0df70291b424f36e436cdfa7e0
Author: Darren Tucker <dtucker at dtucker.net>
Date:   Sat Jun 8 00:03:07 2019 +1000

    Always clean up before and after utimensat test.
---
 openbsd-compat/regress/utimensattest.c | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/openbsd-compat/regress/utimensattest.c b/openbsd-compat/regress/utimensattest.c
index b29cef2f..24312e5d 100644
--- a/openbsd-compat/regress/utimensattest.c
+++ b/openbsd-compat/regress/utimensattest.c
@@ -33,7 +33,14 @@
 
 int utimensat(int, const char *, const struct timespec[2], int);
 
-void
+static void
+cleanup(void)
+{
+	(void)unlink(TMPFILE);
+	(void)unlink(TMPFILE2);
+}
+
+static void
 fail(char *msg, long expect, long got)
 {
 	int saved_errno = errno;
@@ -44,6 +51,7 @@ fail(char *msg, long expect, long got)
 	else
 		fprintf(stderr, "utimensat: %s: expected %ld got %ld\n",
 		     msg, expect, got);
+	cleanup();
 	exit(1);
 }
 
@@ -54,6 +62,7 @@ main(void)
 	struct stat sb;
 	struct timespec ts[2];
 
+	cleanup();
 	if ((fd = open(TMPFILE, O_CREAT, 0600)) == -1)
 		fail("open", 0, 0);
 	close(fd);
@@ -87,8 +96,8 @@ main(void)
 	 * POSIX specifies that when given a symlink, AT_SYMLINK_NOFOLLOW
 	 * should update the symlink and not the destination.  The compat
 	 * code doesn't have a way to do this, so where possible it fails
-	 * with ENOSYS instead of following a symlink when explicitly asked
-	 * not to.  Here we just test that it does not update the destination.
+	 * with instead of following a symlink when explicitly asked not to.
+	 * Here we just test that it does not update the destination.
 	 */
 	if (rename(TMPFILE, TMPFILE2) == -1)
 		fail("rename", 0, 0);
@@ -104,8 +113,6 @@ main(void)
 	if (sb.st_mtime == 55667788)
 		fail("utimensat symlink st_mtime", 0, 0 );
 
-	/* Clean up */
-	if (!(unlink(TMPFILE) == 0 && unlink(TMPFILE2) == 0))
-		fail("unlink", 0, 0);
+	cleanup();
 	exit(0);
 }

-- 
To stop receiving notification emails like this one, please contact
djm at mindrot.org.


More information about the openssh-commits mailing list