Merged branch 'jetty-9.4.x' into 'master'.

This commit is contained in:
Simone Bordet 2016-07-14 12:44:55 +02:00
commit 20b774cc25
2 changed files with 13 additions and 10 deletions

View File

@ -542,6 +542,7 @@ public class IdleTimeoutTest extends AbstractTest
@Test @Test
public void testBufferedReadsResetStreamIdleTimeout() throws Exception public void testBufferedReadsResetStreamIdleTimeout() throws Exception
{ {
int bufferSize = 8192;
long delay = 1000; long delay = 1000;
start(new HttpServlet() start(new HttpServlet()
{ {
@ -549,7 +550,7 @@ public class IdleTimeoutTest extends AbstractTest
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{ {
ServletInputStream input = request.getInputStream(); ServletInputStream input = request.getInputStream();
byte[] buffer = new byte[8192]; byte[] buffer = new byte[bufferSize];
while (true) while (true)
{ {
int read = input.read(buffer); int read = input.read(buffer);
@ -580,12 +581,13 @@ public class IdleTimeoutTest extends AbstractTest
// Send data larger than the flow control window. // Send data larger than the flow control window.
// The client will send bytes up to the flow control window immediately // The client will send bytes up to the flow control window immediately
// and they will be buffered by the server, which will read them slowly. // and they will be buffered by the server; the Servlet will consume them slowly.
// Server reads should reset the idle timeout. // Servlet reads should reset the idle timeout.
ByteBuffer data = ByteBuffer.allocate(FlowControlStrategy.DEFAULT_WINDOW_SIZE + 1); int contentLength = FlowControlStrategy.DEFAULT_WINDOW_SIZE + 1;
ByteBuffer data = ByteBuffer.allocate(contentLength);
stream.data(new DataFrame(stream.getId(), data, true), Callback.NOOP); stream.data(new DataFrame(stream.getId(), data, true), Callback.NOOP);
Assert.assertTrue(latch.await(5, TimeUnit.SECONDS)); Assert.assertTrue(latch.await(2 * (contentLength / bufferSize + 1) * delay, TimeUnit.MILLISECONDS));
} }
private void sleep(long value) private void sleep(long value)

View File

@ -398,15 +398,16 @@ public class SslContextFactory extends AbstractLifeCycle
} }
// select the protocols and ciphers // select the protocols and ciphers
SSLEngine sslEngine=context.createSSLEngine(); SSLParameters enabled=context.getDefaultSSLParameters();
selectCipherSuites(sslEngine.getEnabledCipherSuites(),sslEngine.getSupportedCipherSuites()); SSLParameters supported=context.getSupportedSSLParameters();
selectProtocols(sslEngine.getEnabledProtocols(),sslEngine.getSupportedProtocols()); selectCipherSuites(enabled.getCipherSuites(),supported.getCipherSuites());
selectProtocols(enabled.getProtocols(),supported.getProtocols());
_factory = new Factory(keyStore,trustStore,context); _factory = new Factory(keyStore,trustStore,context);
if (LOG.isDebugEnabled()) if (LOG.isDebugEnabled())
{ {
LOG.debug("Selected Protocols {} of {}",Arrays.asList(_selectedProtocols),Arrays.asList(sslEngine.getSupportedProtocols())); LOG.debug("Selected Protocols {} of {}",Arrays.asList(_selectedProtocols),Arrays.asList(supported.getProtocols()));
LOG.debug("Selected Ciphers {} of {}",Arrays.asList(_selectedCipherSuites),Arrays.asList(sslEngine.getSupportedCipherSuites())); LOG.debug("Selected Ciphers {} of {}",Arrays.asList(_selectedCipherSuites),Arrays.asList(supported.getCipherSuites()));
} }
} }