Author: jbonofre
Date: Sun Mar 18 07:51:05 2012
New Revision: 1302085
URL: http://svn.apache.org/viewvc?rev=1302085&view=rev
Log:
[KARAF-1220] Avoid to spin the keystore lookup and raise a
GenericSecurityException
Modified:
karaf/trunk/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
Modified:
karaf/trunk/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
URL:
http://svn.apache.org/viewvc/karaf/trunk/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java?rev=1302085&r1=1302084&r2=1302085&view=diff
==============================================================================
---
karaf/trunk/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
(original)
+++
karaf/trunk/jaas/config/src/main/java/org/apache/karaf/jaas/config/impl/OsgiKeystoreManager.java
Sun Mar 18 07:51:05 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,8 +149,11 @@ public class OsgiKeystoreManager impleme
continue;
}
+ found = true;
+ break;
}
+ return found;
}
}
\ No newline at end of file