summaryrefslogtreecommitdiff
path: root/rt/lib/RT/Interface/Web/Standalone.pm
diff options
context:
space:
mode:
authorivan <ivan>2011-04-18 23:15:19 +0000
committerivan <ivan>2011-04-18 23:15:19 +0000
commitb5c4237a34aef94976bc343c8d9e138664fc3984 (patch)
treeba7cb2c13c199b1012c661fcf4f248e7b7e3d36f /rt/lib/RT/Interface/Web/Standalone.pm
parent96a0d937cdfe26d691e59139088e33e0bc3e1184 (diff)
parent75162bb14b3e38d66617077843f4dfdcaf09d5c4 (diff)
This commit was generated by cvs2svn to compensate for changes in r11022,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'rt/lib/RT/Interface/Web/Standalone.pm')
-rwxr-xr-xrt/lib/RT/Interface/Web/Standalone.pm9
1 files changed, 9 insertions, 0 deletions
diff --git a/rt/lib/RT/Interface/Web/Standalone.pm b/rt/lib/RT/Interface/Web/Standalone.pm
index 91dbac33b..3157e315e 100755
--- a/rt/lib/RT/Interface/Web/Standalone.pm
+++ b/rt/lib/RT/Interface/Web/Standalone.pm
@@ -77,6 +77,15 @@ sub handle_request {
Module::Refresh->refresh if RT->Config->Get('DevelMode');
RT::ConnectToDatabase() unless RT->InstallMode;
+
+ # Each environment has its own way of handling .. and so on in paths,
+ # so RT consistently forbids such paths.
+ if ( $cgi->path_info =~ m{/\.} ) {
+ $RT::Logger->crit("Invalid request for ".$cgi->path_info." aborting");
+ print STDOUT "HTTP/1.0 400\r\n\r\n";
+ return RT::Interface::Web::Handler->CleanupRequest();
+ }
+
$self->SUPER::handle_request($cgi);
$RT::Logger->crit($@) if $@ && $RT::Logger;
warn $@ if $@ && !$RT::Logger;