Skip to content

Commit eb39055

Browse files
Merge pull request #10344 from eclipse/jetty-9.4.x-fixSizeLimitHandler
Issue #10337 - fixes to SizeLimitHandler
2 parents e4d596e + 325d839 commit eb39055

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

jetty-server/src/main/java/org/eclipse/jetty/server/handler/SizeLimitHandler.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@
3131
import org.eclipse.jetty.server.HttpOutput;
3232
import org.eclipse.jetty.server.Request;
3333
import org.eclipse.jetty.util.Callback;
34-
import org.eclipse.jetty.util.log.Log;
35-
import org.eclipse.jetty.util.log.Logger;
3634

3735
/**
3836
* <p>A handler that can limit the size of message bodies in requests and responses.</p>
@@ -46,8 +44,6 @@
4644
*/
4745
public class SizeLimitHandler extends HandlerWrapper
4846
{
49-
private static final Logger LOG = Log.getLogger(SizeLimitHandler.class);
50-
5147
private final long _requestLimit;
5248
private final long _responseLimit;
5349

@@ -90,7 +86,7 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
9086
baseRequest.getHttpInput().addInterceptor(limit);
9187
}
9288

93-
if (_responseLimit > 0)
89+
if (_responseLimit >= 0)
9490
{
9591
httpOutput.setInterceptor(limit);
9692
response = new LimitResponse(response);
@@ -132,7 +128,7 @@ public HttpInput.Content readFrom(HttpInput.Content content)
132128
if (content.hasContent())
133129
{
134130
_read += content.remaining();
135-
checkResponseLimit(_read);
131+
checkRequestLimit(_read);
136132
}
137133
return content;
138134
}

jetty-server/src/test/java/org/eclipse/jetty/server/handler/SizeLimitHandlerTest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
111111
_local.getResponse("GET /ctx/hello HTTP/1.0\r\n\r\n"));
112112
assertThat(response.getStatus(), equalTo(500));
113113
assertThat(response.getContent(), containsString("8193&gt;8192"));
114+
assertThat(response.getContent(), containsString("Response body is too large"));
114115
}
115116

116117
@Test
@@ -130,6 +131,7 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
130131
_local.getResponse("GET /ctx/hello HTTP/1.0\r\n\r\n"));
131132
assertThat(response.getStatus(), equalTo(500));
132133
assertThat(response.getContent(), containsString("8193&gt;8192"));
134+
assertThat(response.getContent(), containsString("Response body is too large"));
133135
}
134136

135137
@Test
@@ -219,6 +221,7 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
219221
"\r\n" +
220222
"123456..."));
221223
assertThat(response.getStatus(), equalTo(413));
224+
assertThat(response.getContent(), containsString("Request body is too large"));
222225
assertThat(response.getContent(), containsString("32768&gt;8192"));
223226
}
224227

@@ -253,7 +256,8 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
253256

254257
HttpTester.Response response = HttpTester.parseResponse(endp.getResponse());
255258

256-
assertThat(response.getStatus(), equalTo(500));
259+
assertThat(response.getStatus(), equalTo(413));
260+
assertThat(response.getContent(), containsString("Request body is too large"));
257261
assertThat(response.getContent(), containsString("&gt;8192"));
258262
}
259263
}

0 commit comments

Comments
 (0)