Only allow directories for directorylisting

This commit is contained in:
Sebastian Lohff 2012-06-25 20:45:37 +02:00
parent 8a040fbb75
commit 5374315e76
1 changed files with 5 additions and 1 deletions

View File

@ -871,13 +871,17 @@ class ServeFile():
try: try:
os.mkdir(self.target) os.mkdir(self.target)
except (IOError, OSError): except (IOError, OSError):
raise ServeFileException("Error: Could not create directory '%s' for uploads." % (self.target,) ) raise ServeFileException("Error: Could not create directory '%s' for uploads." % (self.target,))
else: else:
raise ServeFileException("Error: Upload directory already exists and is a file.") raise ServeFileException("Error: Upload directory already exists and is a file.")
FilePutter.targetDir = self.target FilePutter.targetDir = self.target
FilePutter.maxUploadSize = self.maxUploadSize FilePutter.maxUploadSize = self.maxUploadSize
handler = FilePutter handler = FilePutter
elif self.serveMode == self.MODE_LISTDIR: elif self.serveMode == self.MODE_LISTDIR:
if not os.path.exists(self.target):
raise ServeFileException("Error: Could not open file or directory.")
if not os.path.isdir(self.target):
raise ServeFileException("Error: '%s' is not a directory." % (self.target,))
handler = DirListingHandler handler = DirListingHandler
handler.targetDir = self.target handler.targetDir = self.target