(tomcat) branch 11.0.x updated: Another instance of user agent matching

[email protected] Fri, 31 Jul 2026 12:03:37 +0000
Newsgroups gmane.comp.jakarta.tomcat.devel
Message-ID <178549941702.4117313.15703615336785985754@gitbox3-he-fi.apache.org>
This is an automated email from the ASF dual-hosted git repository.

rmaucher pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/11.0.x by this push:
     new 5b1e66306a Another instance of user agent matching
5b1e66306a is described below

commit 5b1e66306a9be525d8834dc6087f02058739e666
Author: remm <[email protected]>
AuthorDate: Fri Jul 31 14:01:15 2026 +0200

    Another instance of user agent matching
---
 java/org/apache/catalina/valves/CrawlerSessionManagerValve.java | 2 +-
 webapps/docs/changelog.xml                                      | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java b/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java
index c67229d9be..4f7ef7d9fe 100644
--- a/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java
+++ b/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java
@@ -249,7 +249,7 @@ public class CrawlerSessionManagerValve extends ValveBase {
                     log.trace(request.hashCode() + ": UserAgent=" + uaHeader);
                 }
 
-                if (uaPattern != null && uaPattern.matcher(uaHeader).matches()) {
+                if (uaPattern != null && uaPattern.matcher(uaHeader).find()) {
                     isBot = true;
 
                     if (log.isTraceEnabled()) {
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 9732f89ba6..52f0c0e041 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -167,6 +167,13 @@
         attribute is not available or not configured for the current user.
         (markt)
       </fix>
+      <fix>
+        Fix matching the crawler user-agents of
+        <code>CrawlerSessionManagerValve</code> with patterns of the style
+        of the default
+        <code>.*[bB]ot.*|.*Yahoo! Slurp.*|.*Feedfetcher-Google.*</code>
+        pattern and documentation. (remm)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Coyote">