summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Baryshkov <dbaryshkov@gmail.com>2020-01-28 14:39:57 +0000
committerDmitry Baryshkov <dbaryshkov@gmail.com>2020-01-28 14:39:57 +0000
commit5ef8e05c9860f503ed6b36c4ca5217e50c960825 (patch)
tree2d033d8706ea905258e26d91f67309d0e1710a18
parenta11282d2877c9d45b7e2efc73b6bb3d104404489 (diff)
parent495aa9b57a3ce3ee546a0498ef232b4aa47d0f51 (diff)
downloadgnutls-5ef8e05c9860f503ed6b36c4ca5217e50c960825.tar.gz
Merge branch 'fix-pkcs12-iter' into 'master'
pkcs12: do not go try calculating pbkdf2 with 0 iterations See merge request gnutls/gnutls!1182
-rw-r--r--fuzz/gnutls_pkcs12_key_parser_fuzzer.repro/dcbb6c7d385ddf87823849890768b022dc9e1effbin0 -> 1011 bytes
-rw-r--r--lib/x509/pkcs12.c3
2 files changed, 3 insertions, 0 deletions
diff --git a/fuzz/gnutls_pkcs12_key_parser_fuzzer.repro/dcbb6c7d385ddf87823849890768b022dc9e1eff b/fuzz/gnutls_pkcs12_key_parser_fuzzer.repro/dcbb6c7d385ddf87823849890768b022dc9e1eff
new file mode 100644
index 0000000000..ebc03d30dc
--- /dev/null
+++ b/fuzz/gnutls_pkcs12_key_parser_fuzzer.repro/dcbb6c7d385ddf87823849890768b022dc9e1eff
Binary files differ
diff --git a/lib/x509/pkcs12.c b/lib/x509/pkcs12.c
index 8c3310d066..6324fb25a3 100644
--- a/lib/x509/pkcs12.c
+++ b/lib/x509/pkcs12.c
@@ -867,6 +867,9 @@ _gnutls_pkcs12_gost_string_to_key(gnutls_mac_algorithm_t algo,
size_t temp_len = sizeof(temp);
unsigned int pass_len = 0;
+ if (iter == 0)
+ return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
+
if (pass)
pass_len = strlen(pass);