diff options
Diffstat (limited to 'lib/cryptohi/seckey.c')
-rw-r--r-- | lib/cryptohi/seckey.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/cryptohi/seckey.c b/lib/cryptohi/seckey.c index a352a269e..0f141b5c5 100644 --- a/lib/cryptohi/seckey.c +++ b/lib/cryptohi/seckey.c @@ -2054,9 +2054,13 @@ sec_RSAPSSParamsToMechanism(CK_RSA_PKCS_PSS_PARAMS *mech, mech->mgf = CKG_MGF1_SHA1; /* default, MGF1 with SHA-1 */ } - rv = SEC_ASN1DecodeInteger((SECItem *)¶ms->saltLength, &saltLength); - if (rv != SECSuccess) { - return rv; + if (params->saltLength.data) { + rv = SEC_ASN1DecodeInteger((SECItem *)¶ms->saltLength, &saltLength); + if (rv != SECSuccess) { + return rv; + } + } else { + saltLength = 20; /* default, 20 */ } mech->sLen = saltLength; |