Project

General

Profile

« Previous | Next » 

Revision 096db35a

Added by nagachika (Tomoyuki Chikanaga) over 6 years ago

merge revision(s) 61197: [Backport #14184]

    webrick: compile RE correctly for beginning and end match

    Using ^ and $ in regexps means we can accidentally get fooled
    by "%0a" in HTTP request paths being decoded to newline
    characters.  Use \A and \z to match beginning and end-of-string
    respectively, instead.

    Thanks to mame and hsbt for reporting.

    * lib/webrick/httpserver.rb (MountTable#compile):
      use \A and \z instead of ^ and $
    * lib/webrick/httpserver.rb (MountTable#normalize): use \z instead of $
    * test/webrick/test_httpserver.rb (test_cntrl_in_path): new test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@61238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e