--- loncom/lonhttpd 2002/10/29 20:21:32 1.1 +++ loncom/lonhttpd 2002/10/29 20:57:31 1.2 @@ -4,12 +4,12 @@ # based on # TinyHTTPD - a minimum-functional HTTP server written in -*- Perl -*- # -ot.0894 -# $Id: lonhttpd,v 1.1 2002/10/29 20:21:32 www Exp $ +# $Id: lonhttpd,v 1.2 2002/10/29 20:57:31 www Exp $ # Currently supported: HTTP 1.0/1.1 GET and POST queries # File types of .html and .gif -$ENV{'SERVER_SOFTWARE'}="TinyHTTPD $Revision: 1.1 $ -ot.0894 (LON-CAPA)"; +$ENV{'SERVER_SOFTWARE'}="TinyHTTPD $Revision: 1.2 $ -ot.0894 (LON-CAPA)"; use POSIX; @@ -108,6 +108,9 @@ sub serve_request { # prevent directory go-back $url=~/\.\./ && do { &error(403,$url,"contains go-back"); return; }; + # Multiple slashes do happen + $url=~s/\/+/\//g; + # Check access control unless (($url=~/^\/res\/adm\//) || ($url=~/^\/adm\//)) { do { &error(403,$url,"not on allow list"); return; };