Hi,

I committed the patch below. It fixes a bug when the passed in service or 
algorithm aren't in the correct case (the initial lookup is case insenstive, 
but later on provider.getProperty() was called with the incorrectly cased key).

Regards,
Jeroen

2007-06-21  Jeroen Frijters  <[EMAIL PROTECTED]>

        * gnu/java/security/Engine.java
        (getInstance(String,String,Provider,Object[]): Use correctly cased
        property name.

Index: gnu/java/security/Engine.java
===================================================================
RCS file: /cvsroot/classpath/classpath/gnu/java/security/Engine.java,v
retrieving revision 1.6
diff -u -r1.6 Engine.java
--- gnu/java/security/Engine.java       13 Aug 2006 00:09:58 -0000      1.6
+++ gnu/java/security/Engine.java       20 Jun 2007 12:48:52 -0000
@@ -146,7 +146,7 @@
       throw new IllegalArgumentException("Constructor's parameters MUST NOT be 
null");

     Enumeration enumer = provider.propertyNames();
-    String key;
+    String key = null;
     String alias;
     int count = 0;
     boolean algorithmFound = false;
@@ -193,7 +193,7 @@
     Class clazz = null;
     ClassLoader loader = provider.getClass().getClassLoader();
     Constructor constructor = null;
-    String className = provider.getProperty(service + "." + algorithm);
+    String className = provider.getProperty(key);
     sb.append("Class [").append(className).append("] for algorithm [")
         .append(algorithm).append("] of type [").append(service)
         .append("] from provider [").append(provider).append("] ");

Reply via email to