You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2012/03/17 20:35:22 UTC
svn commit: r1301982 -
/karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
Author: jbonofre
Date: Sat Mar 17 19:35:21 2012
New Revision: 1301982
URL: http://svn.apache.org/viewvc?rev=1301982&view=rev
Log:
[KARAF-1220] Avoid to spin the keystore lookup and raise a GenericSecurityException
Modified:
karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
Modified: karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java?rev=1301982&r1=1301981&r2=1301982&view=diff
==============================================================================
--- karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java (original)
+++ karaf/branches/karaf-2.2.x/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java Sat Mar 17 19:35:21 2012
@@ -67,7 +67,9 @@ public class OsgiKeystoreManager impleme
public SSLContext createSSLContext(String provider, String protocol, String algorithm, String keyStore, String keyAlias, String trustStore, long timeout) throws GeneralSecurityException {
- this.checkForKeystoresAvailability(keyStore, keyAlias, trustStore, timeout);
+ if (!this.checkForKeystoresAvailability(keyStore, keyAlias, trustStore, timeout)) {
+ throw new GeneralSecurityException("Unable to lookup configured keystore and/or truststore");
+ }
KeystoreInstance keyInstance = getKeystore(keyStore);
if (keyInstance != null && keyInstance.isKeystoreLocked()) {
@@ -125,7 +127,8 @@ public class OsgiKeystoreManager impleme
* @param trustStore
* @param timeout
*/
- private void checkForKeystoresAvailability( String keyStore, String keyAlias, String trustStore, long timeout ) {
+ private boolean checkForKeystoresAvailability( String keyStore, String keyAlias, String trustStore, long timeout ) {
+ boolean found = false;
for (int i = 0 ; i < timeout/1000; ++i) {
KeystoreInstance keyInstance = getKeystore(keyStore);
if (keyInstance == null || (keyInstance != null && keyInstance.isKeystoreLocked())) {
@@ -146,7 +149,11 @@ public class OsgiKeystoreManager impleme
continue;
}
+ found = true;
+ break;
}
+
+ return found;
}
}