Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Jul 2020 17:16:57 +0000 (UTC)
From:      Enji Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r363132 - head/tests/sys/audit
Message-ID:  <202007121716.06CHGvgM099026@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Sun Jul 12 17:16:57 2020
New Revision: 363132
URL: https://svnweb.freebsd.org/changeset/base/363132

Log:
  Don't leave `path` behind when executing `:chflags_success`
  
  Prior to this change a `SF_IMMUTABLE` chflagsat(2)'ed file (`path`) was left
  behind, which sabotaged kyua(1) from being able to clean up the work directory,
  This resulted in unnecessary work for folks having to clean up the work
  directory on non-disposable systems, which defaults to `/tmp`. Use `UF_OFFLINE`
  instead of `SF_IMMUTABLE`, in part because setting `SF_IMMUTABLE` isn't relevant
  to the test and `SF_IMMUTABLE` cannot be cleared at all securelevels, as pointed
  out by @asomers.
  
  Additional work is required to catch cases like this upfront in the future to
  avoid tester headache. See PR # 247765 for more details/followup.
  
  Suggested by:	asomers
  Reviewed By:	asomers, #tests
  MFC after:	1 week
  PR:		247761
  Sponsored by:	DellEMC
  Differential Revision: https://reviews.freebsd.org/D25561

Modified:
  head/tests/sys/audit/file-attribute-modify.c

Modified: head/tests/sys/audit/file-attribute-modify.c
==============================================================================
--- head/tests/sys/audit/file-attribute-modify.c	Sun Jul 12 15:57:29 2020	(r363131)
+++ head/tests/sys/audit/file-attribute-modify.c	Sun Jul 12 17:16:57 2020	(r363132)
@@ -704,7 +704,7 @@ ATF_TC_BODY(chflagsat_success, tc)
 	/* File needs to exist to call chflagsat(2) */
 	ATF_REQUIRE((filedesc = open(path, O_CREAT, mode)) != -1);
 	FILE *pipefd = setup(fds, auclass);
-	ATF_REQUIRE_EQ(0, chflagsat(AT_FDCWD, path, SF_IMMUTABLE, 0));
+	ATF_REQUIRE_EQ(0, chflagsat(AT_FDCWD, path, UF_OFFLINE, 0));
 	check_audit(fds, successreg, pipefd);
 	close(filedesc);
 }
@@ -726,7 +726,7 @@ ATF_TC_BODY(chflagsat_failure, tc)
 {
 	FILE *pipefd = setup(fds, auclass);
 	/* Failure reason: file does not exist */
-	ATF_REQUIRE_EQ(-1, chflagsat(AT_FDCWD, errpath, SF_IMMUTABLE, 0));
+	ATF_REQUIRE_EQ(-1, chflagsat(AT_FDCWD, errpath, UF_OFFLINE, 0));
 	check_audit(fds, failurereg, pipefd);
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202007121716.06CHGvgM099026>