[freenet-cvs] r17182 - trunk/freenet/src/freenet/crypt

nextgens at freenetproject.org nextgens at freenetproject.org
Mon Jan 21 12:30:14 UTC 2008


Author: nextgens
Date: 2008-01-21 12:30:14 +0000 (Mon, 21 Jan 2008)
New Revision: 17182

Modified:
   trunk/freenet/src/freenet/crypt/SSL.java
Log:
Don't leave the closure of the FD up to the GC

Modified: trunk/freenet/src/freenet/crypt/SSL.java
===================================================================
--- trunk/freenet/src/freenet/crypt/SSL.java	2008-01-21 12:25:09 UTC (rev 17181)
+++ trunk/freenet/src/freenet/crypt/SSL.java	2008-01-21 12:30:14 UTC (rev 17182)
@@ -36,6 +36,7 @@
 import freenet.support.api.BooleanCallback;
 import freenet.support.api.StringCallback;
 
+import freenet.support.io.Closer;
 import sun.security.x509.X500Name;
 import sun.security.x509.CertAndKeyGen;
 
@@ -49,10 +50,6 @@
 	private static String keyPass;
 	private static String version;
 
-	private SSL() {
-		
-	}
-
 	/**
 	 * Call this function before ask ServerSocket
 	 * @return True is ssl is available
@@ -218,8 +215,9 @@
 		if(enable) {
 			// A keystore is where keys and certificates are kept
 			// Both the keystore and individual private keys should be password protected
+			FileInputStream fis = null;
 			try {
-				FileInputStream fis = new FileInputStream(keyStore);
+				fis = new FileInputStream(keyStore);
 				keystore.load(fis, keyStorePass.toCharArray());
 			} catch (FileNotFoundException fnfe) {
 				//If keystore not exist, create keystore and server certificat
@@ -240,6 +238,8 @@
 		    	keystore.setKeyEntry("freenet", privKey, keyPass.toCharArray(), chain);
 		    	storeKeyStore();
 		    	createSSLContext();
+			} finally {
+				Closer.close(fis);
 			}
 		}
 	}




More information about the cvs mailing list