Avoid test_errstr in a cross compiled configuration
authorRichard Levitte <levitte@openssl.org>
Fri, 23 Nov 2018 17:53:32 +0000 (18:53 +0100)
committerRichard Levitte <levitte@openssl.org>
Sat, 24 Nov 2018 17:49:23 +0000 (18:49 +0100)
There's too high a chance that the openssl app and perl get different
messages for some error numbers.

[extended tests]

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7699)

(cherry picked from commit 0777de15ff09105593c7e778cf47f97a9144d273)

test/recipes/02-test_errstr.t

index 3d806f02acdf3843943e43084d095963244dc160..745c3c0e72f50df15629a207c91d1bf50eddbe63 100644 (file)
@@ -9,6 +9,7 @@
 use strict;
 no strict 'refs';               # To be able to use strings as function refs
 use OpenSSL::Test;
+use OpenSSL::Test::Utils;
 use Errno qw(:POSIX);
 use POSIX qw(strerror);
 
@@ -22,6 +23,14 @@ use constant NUM_SYS_STR_REASONS => 127;
 
 setup('test_errstr');
 
+# In a cross compiled situation, there are chances that our
+# application is linked against different C libraries than
+# perl, and may thereby get different error messages for the
+# same error.
+# The safest is not to test under such circumstances.
+plan skip_all => 'This is unsupported for cross compiled configurations'
+    if config('CROSS_COMPILE');
+
 # These are POSIX error names, which Errno implements as functions
 # (this is documented)
 my @posix_errors = @{$Errno::EXPORT_TAGS{POSIX}};