husted 01/11/21 05:59:28 Modified: src/share/org/apache/struts/action ActionForm.java Added: src/share/org/apache/struts/action ActionServletWrapper.java Log: Add ActionServletWrapper and modify ActionForm to address issue #4997 - autopopulation exploit. This change prevents the Public String properties of ActionServlet from being changed via a query string. Revision Changes Path 1.10 +27 -17 jakarta-struts/src/share/org/apache/struts/action/ActionForm.java Index: ActionForm.java =================================================================== RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/action/ActionForm.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- ActionForm.java 2001/06/13 22:16:48 1.9 +++ ActionForm.java 2001/11/21 13:59:28 1.10 @@ -1,13 +1,13 @@ /* - * $Header: /home/cvs/jakarta-struts/src/share/org/apache/struts/action/ActionForm.java,v 1.9 2001/06/13 22:16:48 craigmcc Exp $ - * $Revision: 1.9 $ - * $Date: 2001/06/13 22:16:48 $ + * $Header: /home/cvs/jakarta-struts/src/share/org/apache/struts/action/ActionForm.java,v 1.10 2001/11/21 13:59:28 husted Exp $ + * $Revision: 1.10 $ + * $Date: 2001/11/21 13:59:28 $ * * ==================================================================== - * + * * The Apache Software License, Version 1.1 * - * Copyright (c) 1999-2001 The Apache Software Foundation. All rights + * Copyright (c) 1999-2001 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ * are met: * * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. + * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in @@ -23,15 +23,15 @@ * distribution. * * 3. The end-user documentation included with the redistribution, if - * any, must include the following acknowlegement: - * "This product includes software developed by the + * any, must include the following acknowlegement: + * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowlegement may appear in the software itself, * if and wherever such third-party acknowlegements normally appear. * * 4. The names "The Jakarta Project", "Struts", and "Apache Software * Foundation" must not be used to endorse or promote products derived - * from this software without prior written permission. For written + * from this software without prior written permission. For written * permission, please contact [EMAIL PROTECTED] * * 5. Products derived from this software may not be called "Apache" @@ -57,7 +57,7 @@ * information on the Apache Software Foundation, please see * <http://www.apache.org/>. * - */ + */ package org.apache.struts.action; @@ -94,7 +94,7 @@ * </p> * * @author Craig R. McClanahan - * @version $Revision: 1.9 $ $Date: 2001/06/13 22:16:48 $ + * @version $Revision: 1.10 $ $Date: 2001/11/21 13:59:28 $ */ public abstract class ActionForm implements Serializable { @@ -107,8 +107,8 @@ * The controller servlet instance to which we are attached. */ protected transient ActionServlet servlet = null; - - + + /** * The MultipartRequestHandler for this form, can be * <code>null</code> @@ -122,14 +122,24 @@ /** * Return the controller servlet instance to which we are attached. */ - public ActionServlet getServlet() { + protected ActionServlet getServlet() { return (this.servlet); } - - + + /** + * Return the controller servlet instance to which we are attached. + */ + public ActionServletWrapper getServletWrapper() { + + return new ActionServletWrapper(getServlet()); + + } + + + /** * Return the MultipartRequestHandler for this form * The reasoning behind this is to give form bean developers * control over the lifecycle of their multipart requests @@ -156,8 +166,8 @@ this.servlet = servlet; } + - public void setMultipartRequestHandler(MultipartRequestHandler multipartRequestHandler) { this.multipartRequestHandler = multipartRequestHandler; } 1.2 +140 -0 jakarta-struts/src/share/org/apache/struts/action/ActionServletWrapper.java
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>