Author: kkolinko
Date: Wed Jan 27 09:19:38 2010
New Revision: 903577
URL: http://svn.apache.org/viewvc?rev=903577&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47744
Prevent medium term memory leak if using SSL under a security manager
Based on a patch by Greg Vanore
Modified:
tomcat/tc5.5.x/trunk/STATUS.txt
tomcat/tc5.5.x/trunk/connectors/util/java/org/apache/tomcat/util/net/jsse/JSSESupport.java
tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml
Modified: tomcat/tc5.5.x/trunk/STATUS.txt
URL:
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=903577&r1=903576&r2=903577&view=diff
==============================================================================
--- tomcat/tc5.5.x/trunk/STATUS.txt (original)
+++ tomcat/tc5.5.x/trunk/STATUS.txt Wed Jan 27 09:19:38 2010
@@ -174,13 +174,6 @@
+1: markt, rjung
-1:
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47744
- Prevent medium term memory leak if using SSL under a security manager
- Based on a patch by Greg Vanore
- http://svn.apache.org/viewvc?rev=890350&view=rev
- +1: markt, rjung, kkolinko
- -1:
-
* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47963
Prevent use of non-RFC2616 compliant custom status messages
http://svn.apache.org/viewvc?rev=892612&view=rev
Modified:
tomcat/tc5.5.x/trunk/connectors/util/java/org/apache/tomcat/util/net/jsse/JSSESupport.java
URL:
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/connectors/util/java/org/apache/tomcat/util/net/jsse/JSSESupport.java?rev=903577&r1=903576&r2=903577&view=diff
==============================================================================
---
tomcat/tc5.5.x/trunk/connectors/util/java/org/apache/tomcat/util/net/jsse/JSSESupport.java
(original)
+++
tomcat/tc5.5.x/trunk/connectors/util/java/org/apache/tomcat/util/net/jsse/JSSESupport.java
Wed Jan 27 09:19:38 2010
@@ -20,6 +20,8 @@
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.security.cert.CertificateFactory;
+import java.util.Map;
+import java.util.WeakHashMap;
import javax.net.ssl.SSLSession;
import javax.net.ssl.SSLSocket;
@@ -45,6 +47,10 @@
private static org.apache.commons.logging.Log log =
org.apache.commons.logging.LogFactory.getLog(JSSESupport.class);
+ // Map<SSLSession,Integer>
+ private static final Map keySizeCache =
+ new WeakHashMap();
+
protected SSLSocket ssl;
@@ -138,7 +144,12 @@
SSLSupport.CipherData c_aux[]=ciphers;
if (session == null)
return null;
- Integer keySize = (Integer) session.getValue(KEY_SIZE_KEY);
+
+ Integer keySize = null;
+ synchronized(keySizeCache) {
+ keySize = (Integer) keySizeCache.get(session);
+ }
+
if (keySize == null) {
int size = 0;
String cipherSuite = session.getCipherSuite();
@@ -149,7 +160,9 @@
}
}
keySize = new Integer(size);
- session.putValue(KEY_SIZE_KEY, keySize);
+ synchronized(keySizeCache) {
+ keySizeCache.put(session, keySize);
+ }
}
return keySize;
}
Modified: tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml?rev=903577&r1=903576&r2=903577&view=diff
==============================================================================
--- tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml (original)
+++ tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml Wed Jan 27
09:19:38 2010
@@ -156,6 +156,11 @@
mapper. (markt)
</fix>
<fix>
+ <bug>47744</bug>: Prevent a medium term memory leak if using SSl with
+ the JSSE provider and also using a security manager. Based on a patch
by
+ Greg Vanore. (markt)
+ </fix>
+ <fix>
CVE-2009-3555. Provide option to disable legacy SSL renegotiation.
(markt/costin)
</fix>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]