Mercurial > hg > openjdk > jdk7 > jdk
changeset 4003:a3de1543568b
6986789: Sun pkcs11 provider fails to parse path name containing "+"
Summary: Modified to accept '+' as valid character.
Reviewed-by: weijun
author | valeriep |
---|---|
date | Tue, 12 Apr 2011 16:09:17 -0700 |
parents | 5d132f3bfbbf |
children | d9248245a88c |
files | src/share/classes/sun/security/pkcs11/Config.java test/sun/security/pkcs11/Provider/ConfigShortPath.java test/sun/security/pkcs11/Provider/cspPlus.cfg |
diffstat | 3 files changed, 21 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/classes/sun/security/pkcs11/Config.java Tue Apr 12 15:57:28 2011 -0700 +++ b/src/share/classes/sun/security/pkcs11/Config.java Tue Apr 12 16:09:17 2011 -0700 @@ -343,6 +343,7 @@ st.wordChars('{', '{'); // need {} for property subst st.wordChars('}', '}'); st.wordChars('*', '*'); + st.wordChars('+', '+'); st.wordChars('~', '~'); // XXX check ASCII table and add all other characters except special
--- a/test/sun/security/pkcs11/Provider/ConfigShortPath.java Tue Apr 12 15:57:28 2011 -0700 +++ b/test/sun/security/pkcs11/Provider/ConfigShortPath.java Tue Apr 12 16:09:17 2011 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -22,8 +22,8 @@ */ /** * @test - * @bug 6581254 - * @summary Allow "~" in config to support windows short path + * @bug 6581254 6986789 + * @summary Allow '~' and '+' in config file * @author Valerie Peng */ @@ -32,17 +32,21 @@ public class ConfigShortPath { + private static final String[] configNames = { "csp.cfg", "cspPlus.cfg" }; + public static void main(String[] args) { String testSrc = System.getProperty("test.src", "."); - String configFile = testSrc + File.separator + "csp.cfg"; - System.out.println("Testing against " + configFile); - try { - Provider p = new sun.security.pkcs11.SunPKCS11(configFile); - } catch (ProviderException pe) { - String cause = pe.getCause().getMessage(); - if (cause.indexOf("Unexpected token") != -1) { - // re-throw to indicate test failure - throw pe; + for (int i = 0; i < configNames.length; i++) { + String configFile = testSrc + File.separator + configNames[i]; + System.out.println("Testing against " + configFile); + try { + Provider p = new sun.security.pkcs11.SunPKCS11(configFile); + } catch (ProviderException pe) { + String cause = pe.getCause().getMessage(); + if (cause.indexOf("Unexpected token") != -1) { + // re-throw to indicate test failure + throw pe; + } } } }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/sun/security/pkcs11/Provider/cspPlus.cfg Tue Apr 12 16:09:17 2011 -0700 @@ -0,0 +1,4 @@ +showInfo = false +name = NSS +nssSecmodDirectory = /export/local/38289.JDK7.PIT.JSN-TL+7-b112_pit_security_oel5.5-x64-32/results/ResultDir/KeytoolNSS/db +nssLibraryDirectory = /export/local/common/testbase/7/security/tools/lib/nss/Linux2.6