#! /usr/bin/perl -w
-# $Cambridge: exim/test/runtest,v 1.28 2007/07/04 10:37:04 ph10 Exp $
+# $Cambridge: exim/test/runtest,v 1.32 2009/11/19 18:51:11 nm4 Exp $
###############################################################################
# This is the controlling script for the "new" test suite for Exim. It should #
# Start by initializing some global variables
-$testversion = "4.68 (16-Apr-07)";
+$testversion = "4.70 (14-Oct-09)";
$cf = "bin/cf";
$cr = "\r";
s/^\d+:error:/pppp:error:/;
s/:(?:\/[^\s:]+\/)?([^\/\s]+\.c):\d+:/:$1:dddd:/;
+ # There are differences in error messages between OpenSSL versions
+ s/SSL_CTX_set_cipher_list/SSL_connect/;
+
# One error test in expansions mentions base 62 or 36
s/is not a base (36|62) number/is not a base 36\/62 number/;
s/\bgethostbyname2?|\bgetipnodebyname/get[host|ipnode]byname[2]/;
+ # drop gnutls version strings
+ next if /GnuTLS compile-time version: \d+[\.\d]+$/;
+ next if /GnuTLS runtime version: \d+[\.\d]+$/;
+
# We have to omit the localhost ::1 address so that all is well in
# the IPv4-only case.
if (/looked up these IP addresses/);
next if /name=localhost address=::1/;
+ # drop pdkim debugging header
+ next if /^PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<+$/;
+
# Various other IPv6 lines must be omitted too
next if /using host_fake_gethostbyname for \S+ \(IPv6\)/;
print "\n";
print "------------ $f -----------\n"
if (defined $rf && -s $rf && defined $rsf && -s $rsf);
- system("$more $f");
+ system("$more '$f'");
}
}
# Do the comparison
- return 0 if (system("$cf $mf $sf >test-cf") == 0);
+ return 0 if (system("$cf '$mf' '$sf' >test-cf") == 0);
# Handle comparison failure
# Update or delete the saved file, and give the appropriate return code.
if (-s $mf)
- { tests_exit(-1, "Failed to cp $mf $sf") if system("cp $mf $sf") != 0; }
+ { tests_exit(-1, "Failed to cp $mf $sf") if system("cp '$mf' '$sf'") != 0; }
else
{ tests_exit(-1, "Failed to unlink $sf") if !unlink($sf); }