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;
}
}