Allow to disable max http post size limit

Closes gh-8508
This commit is contained in:
Dr. Stefan Hüttemann 2017-04-06 12:08:40 +02:00 committed by Stephane Nicoll
parent 492aee9cea
commit 0294ad3e95
2 changed files with 22 additions and 3 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright 2012-2016 the original author or authors.
* Copyright 2012-2017 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -790,7 +790,7 @@ public class ServerProperties
if (maxHttpHeaderSize > 0) {
customizeMaxHttpHeaderSize(factory, maxHttpHeaderSize);
}
if (serverProperties.getMaxHttpPostSize() > 0) {
if (serverProperties.getMaxHttpPostSize() != 0) {
customizeMaxHttpPostSize(factory, serverProperties.getMaxHttpPostSize());
}
if (this.accesslog.enabled) {

View File

@ -1,5 +1,5 @@
/*
* Copyright 2012-2016 the original author or authors.
* Copyright 2012-2017 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -445,6 +445,25 @@ public class ServerPropertiesTests {
assertThat(remoteIpValve.getInternalProxies()).isEqualTo("192.168.0.1");
}
@Test
public void customTomcatDisableMaxHttpPostSize() {
Map<String, String> map = new HashMap<String, String>();
map.put("server.max-http-post-size", "-1");
bindProperties(map);
TomcatEmbeddedServletContainerFactory container = new TomcatEmbeddedServletContainerFactory(0);
this.properties.customize(container);
TomcatEmbeddedServletContainer embeddedContainer =
(TomcatEmbeddedServletContainer) container.getEmbeddedServletContainer();
embeddedContainer.start();
try {
assertThat(embeddedContainer.getTomcat().getConnector().getMaxPostSize())
.isEqualTo(-1);
}
finally {
embeddedContainer.stop();
}
}
@Test
public void defaultUseForwardHeadersUndertow() throws Exception {
UndertowEmbeddedServletContainerFactory container = spy(