From: Olivier Chéron Date: Mon, 30 Sep 2024 19:44:28 +0000 (+0200) Subject: Test PBMAC1 with absent PBKDF2 PRF X-Git-Tag: openssl-3.5.0-alpha1~1037 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=80a31435e5a0cf1ccd2d7369f6c43319bce5b9a5;p=thirdparty%2Fopenssl.git Test PBMAC1 with absent PBKDF2 PRF Reviewed-by: Dmitry Belyavskiy Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/25568) --- diff --git a/test/recipes/80-test_pkcs12.t b/test/recipes/80-test_pkcs12.t index 9fcfa965429..616de23ffbe 100644 --- a/test/recipes/80-test_pkcs12.t +++ b/test/recipes/80-test_pkcs12.t @@ -56,7 +56,7 @@ $ENV{OPENSSL_WIN32_UTF8}=1; my $no_fips = disabled('fips') || ($ENV{NO_FIPS} // 0); -plan tests => $no_fips ? 45 : 51; +plan tests => $no_fips ? 46 : 52; # Test different PKCS#12 formats ok(run(test(["pkcs12_format_test"])), "test pkcs12 formats"); @@ -247,6 +247,14 @@ for my $file ("pbmac1_256_256.bad-iter.p12", "pbmac1_256_256.bad-salt.p12", "pbm ); } +# Test pbmac1 pkcs12 file with absent PBKDF2 PRF, usually omitted when selecting sha1 +{ + my $file = "pbmac1_sha1_hmac_and_prf.p12"; + my $path = srctop_file("test", "recipes", "80-test_pkcs12_data", $file); + ok(run(app(["openssl", "pkcs12", "-in", $path, "-password", "pass:1234", "-noenc"])), + "test pbmac1 pkcs12 file $file"); +} + # Test some bad pkcs12 files my $bad1 = srctop_file("test", "recipes", "80-test_pkcs12_data", "bad1.p12"); my $bad2 = srctop_file("test", "recipes", "80-test_pkcs12_data", "bad2.p12"); diff --git a/test/recipes/80-test_pkcs12_data/pbmac1_sha1_hmac_and_prf.p12 b/test/recipes/80-test_pkcs12_data/pbmac1_sha1_hmac_and_prf.p12 new file mode 100644 index 00000000000..d0fe88ca9b2 Binary files /dev/null and b/test/recipes/80-test_pkcs12_data/pbmac1_sha1_hmac_and_prf.p12 differ