Skip to content

Commit 84a1ef1

Browse files
committed
one more place to deal with digest (name) passed as String
1 parent 2a0bb7a commit 84a1ef1

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/main/java/org/jruby/ext/openssl/Cipher.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1008,7 +1008,11 @@ public IRubyObject pkcs5_keyivgen(final ThreadContext context, final IRubyObject
10081008
throw newCipherError(runtime, "salt must be an 8-octet string");
10091009
}
10101010

1011-
final String algorithm = vdigest.isNil() ? "MD5" : ((Digest) vdigest).getAlgorithm();
1011+
final String algorithm;
1012+
if ( vdigest.isNil() ) algorithm = "MD5";
1013+
else {
1014+
algorithm = (vdigest instanceof Digest) ? ((Digest) vdigest).getAlgorithm() : vdigest.asJavaString();
1015+
}
10121016
final MessageDigest digest = Digest.getDigest(runtime, algorithm);
10131017
KeyAndIv result = evpBytesToKey(keyLength, ivLength, digest, salt, pass, iter);
10141018
this.key = result.key;

0 commit comments

Comments
 (0)