You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2017/04/17 07:16:28 UTC

[Bug 60997] New: Enhance SemaphoreValve to support denied status and path matching

https://bz.apache.org/bugzilla/show_bug.cgi?id=60997

            Bug ID: 60997
           Summary: Enhance SemaphoreValve to support denied status and
                    path matching
           Product: Tomcat 9
           Version: unspecified
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: rmannibucau@gmail.com
  Target Milestone: -----

Hi,

would be great to enrich the SemaphoreValve to support few more things. Obvious
and easy ones are:

1. deniedStatus and have a default implementation of permitDenied setting this
status (Note: if not possible in current valve a EnhancedSemaphoreValve would
be good enough)
2. controlConcurrency should enable to match a requestUri, I guess a
includeRequestUris and excludeRequestUris is the way to go

On probably a bit more difficult side, it would be great to support
asynchronism limiting. This one can require to move the valve to a filter to be
able to wrap the AsyncContext to have the right hooks but this would make it
fully functional.

Finally: this valve provides concurrent limit but is there any plan to have
rate limiting (based on a time slot)?

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60997] Enhance SemaphoreValve to support denied status and path matching

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60997

--- Comment #1 from Remy Maucherat <re...@apache.org> ---
I started looking at 2) since I think I saw the request somewhere else as well
in the past, but it was a bit messy (I tried using RequestFilterValve as well).

Instead I added a new feature to the rewrite valve:
https://github.com/apache/tomcat/commit/7a3bbc6e300ced35268fe1c46c90f6b5c752dc5c
Since it allows skipping the next valve, if the semaphore valve is configured
right after the rewrite valve, it can simply how over it if when a rule
matches.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60997] Enhance SemaphoreValve to support denied status and path matching

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60997

Remy Maucherat <re...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #2 from Remy Maucherat <re...@apache.org> ---
Implemented in 11-M19, 10.1.20 and 9.0.88.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org