mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
8214096: sun.security.util.SignatureUtil passes null parameter, so JCE validation fails
Changed SignatureUtil.specialSetParameter to ignore null signature parameters Reviewed-by: mullan, weijun
This commit is contained in:
parent
57dc039131
commit
cfcd43da04
2 changed files with 82 additions and 14 deletions
|
@ -28,8 +28,6 @@ package sun.security.util;
|
|||
import java.io.IOException;
|
||||
import java.security.*;
|
||||
import java.security.spec.*;
|
||||
import sun.security.util.ObjectIdentifier;
|
||||
import sun.security.x509.AlgorithmId;
|
||||
import sun.security.rsa.RSAUtil;
|
||||
|
||||
/**
|
||||
|
@ -86,13 +84,12 @@ public class SignatureUtil {
|
|||
// specified Signature object as signature parameters.
|
||||
public static void specialSetParameter(Signature sig, byte[] paramBytes)
|
||||
throws InvalidAlgorithmParameterException, ProviderException {
|
||||
|
||||
AlgorithmParameters params = null;
|
||||
if (paramBytes != null) {
|
||||
String sigName = sig.getAlgorithm();
|
||||
params = createAlgorithmParameters(sigName, paramBytes);
|
||||
AlgorithmParameters params =
|
||||
createAlgorithmParameters(sigName, paramBytes);
|
||||
specialSetParameter(sig, params);
|
||||
}
|
||||
specialSetParameter(sig, params);
|
||||
}
|
||||
|
||||
// Special method for setting the specified AlgorithmParameter object
|
||||
|
@ -100,16 +97,9 @@ public class SignatureUtil {
|
|||
public static void specialSetParameter(Signature sig,
|
||||
AlgorithmParameters params)
|
||||
throws InvalidAlgorithmParameterException, ProviderException {
|
||||
|
||||
String sigName = sig.getAlgorithm();
|
||||
if (params != null) {
|
||||
String sigName = sig.getAlgorithm();
|
||||
sig.setParameter(getParamSpec(sigName, params));
|
||||
} else {
|
||||
try {
|
||||
sig.setParameter(null);
|
||||
} catch (UnsupportedOperationException e) {
|
||||
// ignore for maintaining backward compatibility
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue