From: John Jetmore Date: Sat, 17 Jul 2010 02:53:24 +0000 (-0400) Subject: The test architecture can't support having the testsuite user and the Exim user the... X-Git-Tag: exim-4_73_RC0~24 X-Git-Url: https://git.exim.org/users/heiko/exim.git/commitdiff_plain/a56f166d182394d5e339bb50bc1725a3f98c768a The test architecture can't support having the testsuite user and the Exim user the same. restrict it in runtest and add a note about it in the README --- diff --git a/test/README b/test/README index c1398329d..e9cc10dfb 100644 --- a/test/README +++ b/test/README @@ -65,8 +65,9 @@ In order to run this test suite, the following requirements must be met: Defaults timestamp_timeout=480 in /etc/sudoers, a password lasts for 8 hours (a working day). It is - probably not a good idea to run the tests as the Exim user, as this is - recognized as special by Exim. + not permitted to run the tests as the Exim user because the test suite + tracks the two users independently. Using the same user would result + in false positives on some tests. (3) The login under which you run the tests must be in the exim group so that it has access to logs, spool files, etc. The login should not be one of the diff --git a/test/runtest b/test/runtest index 43b35904e..d65d0b530 100755 --- a/test/runtest +++ b/test/runtest @@ -2621,6 +2621,12 @@ if (system("cp $parm_exim_dir/eximstats eximdir") != 0) print "Exim user is $parm_eximuser ($parm_exim_uid)\n"; print "Exim group is $parm_eximgroup ($parm_exim_gid)\n"; + +if ($parm_caller_uid eq $parm_exim_uid) { + tests_exit(-1, "Exim user ($parm_eximuser,$parm_exim_uid) cannot be " + ."the same as caller ($parm_caller,$parm_caller_uid)"); +} + print "The Exim user needs access to the test suite directory. Checking ..."; if (($rc = system("sudo bin/checkaccess $parm_cwd/eximdir/exim $parm_eximuser $parm_eximgroup")) != 0)