On Sat, 17 Nov 2001, Brian Pane wrote:

>   * A rewrite of apr_table_overlap() that uses a hash
>     table (sort of) instead of qsort

i'm not sure this part of the patch is a good idea.  the reason
apr_table_overlap() uses qsort is to prevent various O(n^2) DoS attacks
(both time & space).  with your hash i think it's possible for attackers
to carefully construct headers such that they all hash the same, which
would result in an O(n^2) time attack.

also -- if i understand the hash you're using, it appears that all headers
less than 4 characters in length will hash to position 0?  (i'm looking at
COMPUTE_KEY_CHECKSUM).

(otherwise nice work, as always :)

-dean






Reply via email to