patrickl 01/11/13 11:48:13 Modified: catalina/src/share/org/apache/catalina/connector Tag: tomcat_40_branch HttpResponseBase.java Log: Trap uncaught exceptions thrown by certain malformed URIs and return SC_NOT_FOUND instead. These uncaught exceptions are thrown when URIs contain more "/.." directories than non "/.." directories. For example, http://localhost/.. and http://localhost/examples/../.. will both throw these uncaught exceptions. Revision Changes Path No revision No revision 1.37.2.2 +11 -7 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java Index: HttpResponseBase.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v retrieving revision 1.37.2.1 retrieving revision 1.37.2.2 diff -u -r1.37.2.1 -r1.37.2.2 --- HttpResponseBase.java 2001/10/04 19:26:57 1.37.2.1 +++ HttpResponseBase.java 2001/11/13 19:48:13 1.37.2.2 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v 1.37.2.1 2001/10/04 19:26:57 remm Exp $ - * $Revision: 1.37.2.1 $ - * $Date: 2001/10/04 19:26:57 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v 1.37.2.2 2001/11/13 19:48:13 patrickl Exp $ + * $Revision: 1.37.2.2 $ + * $Date: 2001/11/13 19:48:13 $ * * ==================================================================== * @@ -101,7 +101,7 @@ * * @author Craig R. McClanahan * @author Remy Maucherat - * @version $Revision: 1.37.2.1 $ $Date: 2001/10/04 19:26:57 $ + * @version $Revision: 1.37.2.2 $ $Date: 2001/11/13 19:48:13 $ */ public class HttpResponseBase @@ -1087,9 +1087,13 @@ resetBuffer(); // Generate a temporary redirect to the specified location - String absolute = toAbsolute(location); - setStatus(SC_MOVED_TEMPORARILY); - setHeader("Location", absolute); + try { + String absolute = toAbsolute(location); + setStatus(SC_MOVED_TEMPORARILY); + setHeader("Location", absolute); + } catch (IllegalArgumentException e) { + setStatus(SC_NOT_FOUND); + } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>