You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Trustin Lee (JIRA)" <ji...@apache.org> on 2007/01/28 05:01:49 UTC
[jira] Updated: (DIRMINA-325) Configuration of SSLSession cacheSize
and sessionTimeout
[ https://issues.apache.org/jira/browse/DIRMINA-325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Trustin Lee updated DIRMINA-325:
--------------------------------
Fix Version/s: 2.0.0-M1
Please allow us fix this issue in 2.0-M1 because it need changes (addition) of the API.
> Configuration of SSLSession cacheSize and sessionTimeout
> --------------------------------------------------------
>
> Key: DIRMINA-325
> URL: https://issues.apache.org/jira/browse/DIRMINA-325
> Project: MINA
> Issue Type: Improvement
> Components: Integration
> Affects Versions: 1.0.0
> Reporter: Wolter Eldering
> Fix For: 2.0.0-M1
>
>
> The defaults values for session cache and timeout could lead to a large number of sessions being cached under a SSLContext.
> The is no way to set these values in SSLContextFactoryBean.
> Index: integration-spring/src/main/java/org/apache/mina/integration/spring/ssl/SSLContextFactoryBean.java
> ===================================================================
> --- integration-spring/src/main/java/org/apache/mina/integration/spring/ssl/SSLContextFactoryBean.java (revision 487691)
> +++ integration-spring/src/main/java/org/apache/mina/integration/spring/ssl/SSLContextFactoryBean.java (working copy)
> @@ -76,6 +76,10 @@
> private String trustManagerFactoryProvider = null;
> private boolean trustManagerFactoryAlgorithmUseDefault = false;
> private ManagerFactoryParameters trustManagerFactoryParameters = null;
> + private int clientSessionCacheSize = -1;
> + private int clientSessionTimeout = -1;
> + private int serverSessionCacheSize = -1;
> + private int serverSessionTimeout = -1;
>
> protected Object createInstance() throws Exception
> {
> @@ -156,7 +160,27 @@
> }
>
> context.init( keyManagers, trustManagers, secureRandom );
> +
> + if( clientSessionCacheSize >= 0 )
> + {
> + context.getClientSessionContext().setSessionCacheSize( clientSessionCacheSize );
> + }
>
> + if( clientSessionTimeout >= 0 )
> + {
> + context.getClientSessionContext().setSessionTimeout( clientSessionTimeout );
> + }
> +
> + if( serverSessionCacheSize >= 0 )
> + {
> + context.getServerSessionContext().setSessionCacheSize( serverSessionCacheSize );
> + }
> +
> + if( serverSessionTimeout >= 0 )
> + {
> + context.getServerSessionContext().setSessionTimeout( serverSessionTimeout );
> + }
> +
> return context;
> }
>
> @@ -393,5 +417,47 @@
> this.secureRandom = secureRandom;
> }
>
> + /**
> + * Sets the SSLSession cache size for the {@link SSLSessionContext} for use in client mode.
> + *
> + * @param size the new session cache size limit; zero means there is no limit.
> + * @see SSLSessionContext#setSessionCacheSize(int size)
> + */
> + public void setClientSessionCacheSize(int size)
> + {
> + this.clientSessionCacheSize = size;
> + }
>
> + /**
> + * Set the SSLSession timeout limit for the {@link SSLSessionContext} for use in client mode.
> + *
> + * @param seconds the new session timeout limit in seconds; zero means there is no limit.
> + * @see SSLSessionContext#setSessionTimeout(int seconds)
> + */
> + public void setClientSessionTimeout(int seconds)
> + {
> + this.clientSessionTimeout = seconds;
> + }
> +
> + /**
> + * Sets the SSLSession cache size for the {@link SSLSessionContext} for use in server mode.
> + *
> + * @param size the new session cache size limit; zero means there is no limit.
> + * @see SSLSessionContext#setSessionCacheSize(int size)
> + */
> + public void setServerSessionCacheSize(int serverSessionCacheSize)
> + {
> + this.serverSessionCacheSize = serverSessionCacheSize;
> + }
> +
> + /**
> + * Set the SSLSession timeout limit for the {@link SSLSessionContext} for use in server mode.
> + *
> + * @param seconds the new session timeout limit in seconds; zero means there is no limit.
> + * @see SSLSessionContext#setSessionTimeout(int seconds)
> + */
> + public void setServerSessionTimeout(int serverSessionTimeout)
> + {
> + this.serverSessionTimeout = serverSessionTimeout;
> + }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.