diff --git a/tests/scripts/test-ref-configs.pl b/tests/scripts/test-ref-configs.pl index d1cc924bf..ebc032b11 100755 --- a/tests/scripts/test-ref-configs.pl +++ b/tests/scripts/test-ref-configs.pl @@ -11,14 +11,17 @@ use warnings; use strict; my %configs = ( - 'config-mini-tls1_1.h' - => '-m tls1_1 -f \'^DES-CBC3-SHA$\|^TLS-RSA-WITH-3DES-EDE-CBC-SHA$\'', - 'config-suite-b.h' - => "-m tls1_2 -f 'ECDHE-ECDSA.*AES.*GCM' -p mbedTLS", - 'config-picocoin.h' - => 0, - 'config-ccm-psk-tls1_2.h' - => '-m tls1_2 -f \'^TLS-PSK-WITH-AES-...-CCM-8\'', + 'config-mini-tls1_1.h' => { + 'compat' => '-m tls1_1 -f \'^DES-CBC3-SHA$\|^TLS-RSA-WITH-3DES-EDE-CBC-SHA$\'', + }, + 'config-suite-b.h' => { + 'compat' => "-m tls1_2 -f 'ECDHE-ECDSA.*AES.*GCM' -p mbedTLS", + }, + 'config-picocoin.h' => { + }, + 'config-ccm-psk-tls1_2.h' => { + 'compat' => '-m tls1_2 -f \'^TLS-PSK-WITH-AES-...-CCM-8\'', + }, ); # If no config-name is provided, use all known configs. @@ -46,7 +49,7 @@ sub abort { die $_[0]; } -while( my ($conf, $args) = each %configs ) { +while( my ($conf, $data) = each %configs ) { system( "cp $config_h.bak $config_h" ) and die; system( "make clean" ) and die; @@ -60,10 +63,11 @@ while( my ($conf, $args) = each %configs ) { system( "make" ) and abort "Failed to build: $conf\n"; system( "make test" ) and abort "Failed test suite: $conf\n"; - if( $args ) + my $compat = $data->{'compat'}; + if( $compat ) { - print "\nrunning compat.sh $args\n"; - system( "tests/compat.sh $args" ) + print "\nrunning compat.sh $compat\n"; + system( "tests/compat.sh $compat" ) and abort "Failed compat.sh: $conf\n"; } else