Author: markt
Date: Sun May 4 03:41:48 2008
New Revision: 653195
URL: http://svn.apache.org/viewvc?rev=653195&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=43080 and
https://issues.apache.org/bugzilla/show_bug.cgi?id=43079
Move warning to StandardContext so a) we can check all url-patterns and b) we
associate the message with the context.
Modified:
tomcat/trunk/java/org/apache/catalina/core/StandardContext.java
tomcat/trunk/java/org/apache/catalina/deploy/SecurityCollection.java
Modified: tomcat/trunk/java/org/apache/catalina/core/StandardContext.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardContext.java?rev=653195&r1=653194&r2=653195&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/StandardContext.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardContext.java Sun May 4
03:41:48 2008
@@ -5040,20 +5040,38 @@
return (false);
}
if (urlPattern.startsWith("*.")) {
- if (urlPattern.indexOf('/') < 0)
+ if (urlPattern.indexOf('/') < 0) {
+ checkUnusualURLPattern(urlPattern);
return (true);
- else
+ } else
return (false);
}
if ( (urlPattern.startsWith("/")) &&
- (urlPattern.indexOf("*.") < 0))
+ (urlPattern.indexOf("*.") < 0)) {
+ checkUnusualURLPattern(urlPattern);
return (true);
- else
+ } else
return (false);
}
+ /**
+ * Check for unusual but valid <code><url-pattern></code>s.
+ * See Bugzilla 34805, 43079 & 43080
+ */
+ private void checkUnusualURLPattern(String urlPattern) {
+ if (log.isInfoEnabled()) {
+ if(urlPattern.endsWith("*") && (urlPattern.length() < 2 ||
+ urlPattern.charAt(urlPattern.length()-2) != '/')) {
+ log.info("Suspicious url pattern: \"" + urlPattern + "\"" +
+ " in context [" + getName() + "] - see" +
+ " section SRV.11.2 of the Servlet specification" );
+ }
+ }
+ }
+
+
// ------------------------------------------------------------- Operations
Modified: tomcat/trunk/java/org/apache/catalina/deploy/SecurityCollection.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/deploy/SecurityCollection.java?rev=653195&r1=653194&r2=653195&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/deploy/SecurityCollection.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/deploy/SecurityCollection.java Sun
May 4 03:41:48 2008
@@ -21,9 +21,6 @@
import org.apache.catalina.util.RequestUtil;
-import org.apache.juli.logging.Log;
-import org.apache.juli.logging.LogFactory;
-
import java.io.Serializable;
@@ -44,9 +41,6 @@
public class SecurityCollection implements Serializable {
- private static Log log = LogFactory.getLog(SecurityCollection.class);
-
-
// ----------------------------------------------------------- Constructors
@@ -188,17 +182,6 @@
if (pattern == null)
return;
- // Bugzilla 34805: add friendly warning.
- if(pattern.endsWith("*")) {
- if (pattern.charAt(pattern.length()-1) != '/') {
- if (log.isDebugEnabled()) {
- log.warn("Suspicious url pattern: \"" + pattern + "\"" +
- " - see
http://java.sun.com/aboutJava/communityprocess/first/jsr053/servlet23_PFD.pdf" +
- " section 11.2" );
- }
- }
- }
-
pattern = RequestUtil.URLDecode(pattern);
String results[] = new String[patterns.length + 1];
for (int i = 0; i < patterns.length; i++) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]