forked from I2P_Developers/i2p.i2p
Servlets: Close output stream on redirect,
instead of flushing buffer, to force commitment
This commit is contained in:
@ -290,7 +290,7 @@ class BasicServlet extends HttpServlet
|
||||
return true;
|
||||
}
|
||||
response.setStatus(304);
|
||||
response.flushBuffer();
|
||||
response.getOutputStream().close();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -1370,7 +1370,7 @@ public class I2PSnarkServlet extends BasicServlet {
|
||||
buf.append(p.replace("&", "&")); // no you don't html escape the redirect header
|
||||
resp.setHeader("Location", buf.toString());
|
||||
resp.setStatus(303);
|
||||
resp.flushBuffer();
|
||||
resp.getOutputStream().close();
|
||||
}
|
||||
|
||||
/** @since 0.9 */
|
||||
|
@ -183,6 +183,6 @@ public class HostCheckHandler extends GzipHandler
|
||||
// https://w3c.github.io/webappsec-upgrade-insecure-requests/
|
||||
httpResponse.setHeader("Vary", "Upgrade-Insecure-Requests");
|
||||
httpResponse.setStatus(307);
|
||||
httpResponse.flushBuffer();
|
||||
httpResponse.getOutputStream().close();
|
||||
}
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ public class CodedIconRendererServlet extends HttpServlet {
|
||||
}
|
||||
} else {
|
||||
srs.setStatus(304);
|
||||
srs.flushBuffer();
|
||||
srs.getOutputStream().close();
|
||||
}
|
||||
} else {
|
||||
//Binary data is not present but must be substituted by file on disk
|
||||
|
@ -9,6 +9,9 @@
|
||||
if (!testIFrame) {
|
||||
response.setStatus(307);
|
||||
response.setHeader("Location", "/susidns/index");
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
return;
|
||||
} else {
|
||||
%>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
@ -24,6 +24,8 @@
|
||||
// probably because restart or shutdown was clicked
|
||||
response.setStatus(307);
|
||||
response.setHeader("Location", "/graphs");
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
return;
|
||||
}
|
||||
%>
|
||||
|
@ -9,6 +9,9 @@
|
||||
if (!testIFrame) {
|
||||
response.setStatus(307);
|
||||
response.setHeader("Location", "/i2ptunnel/");
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
return;
|
||||
} else {
|
||||
%>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
@ -1,6 +1,12 @@
|
||||
<%@page contentType="text/plain"%>
|
||||
<%@page pageEncoding="UTF-8"%>
|
||||
<%
|
||||
/*
|
||||
* USE CAUTION WHEN EDITING
|
||||
* Trailing whitespace OR NEWLINE on the last line will cause
|
||||
* IllegalStateExceptions !!!
|
||||
*
|
||||
* Do not tag this file for translation.
|
||||
*/
|
||||
|
||||
//
|
||||
// Redirect to either /home or /console, depending on configuration,
|
||||
// while preserving any query parameters
|
||||
@ -24,4 +30,6 @@
|
||||
if (query != null)
|
||||
buf.append('?').append(query);
|
||||
response.setHeader("Location", buf.toString());
|
||||
%>
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
%>
|
@ -10,6 +10,9 @@
|
||||
if (!testIFrame || !embedApp) {
|
||||
response.setStatus(307);
|
||||
response.setHeader("Location", "/i2psnark/");
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
return;
|
||||
} else {
|
||||
%>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
@ -10,6 +10,9 @@
|
||||
if (!testIFrame || !embedApp) {
|
||||
response.setStatus(307);
|
||||
response.setHeader("Location", "/susimail/susimail");
|
||||
// force commitment
|
||||
response.getOutputStream().close();
|
||||
return;
|
||||
} else {
|
||||
%>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
@ -2297,7 +2297,7 @@ public class WebMail extends HttpServlet
|
||||
buf.append(q.replace("&", "&")); // no you don't html escape the redirect header
|
||||
resp.setHeader("Location", buf.toString());
|
||||
resp.setStatus(303);
|
||||
resp.flushBuffer();
|
||||
resp.getOutputStream().close();
|
||||
Debug.debug(Debug.DEBUG, "P-R-G to " + q);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user