summaryrefslogtreecommitdiffstats
path: root/tools/scan-view/ScanView.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/scan-view/ScanView.py')
-rw-r--r--tools/scan-view/ScanView.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/tools/scan-view/ScanView.py b/tools/scan-view/ScanView.py
index c6dddba..32570b9 100644
--- a/tools/scan-view/ScanView.py
+++ b/tools/scan-view/ScanView.py
@@ -707,6 +707,11 @@ File Bug</h3>
return None
def send_path(self, path):
+ # If the requested path is outside the root directory, do not open it
+ rel = os.path.abspath(os.path.join(self.server.root, path))
+ if not rel.startswith(os.path.abspath(self.server.root) ):
+ return self.send_404()
+
ctype = self.guess_type(path)
if ctype.startswith('text/'):
# Patch file instead
OpenPOWER on IntegriCloud