From c9cf025fadfe043f0f2f679e10d1207d8a158bb6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 17:01:31 +0200 Subject: Adding debian version 2.4.57-2. Signed-off-by: Daniel Baumann --- .../perl-framework/t/htdocs/modules/h2/upload.py | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 debian/perl-framework/t/htdocs/modules/h2/upload.py (limited to 'debian/perl-framework/t/htdocs/modules/h2/upload.py') diff --git a/debian/perl-framework/t/htdocs/modules/h2/upload.py b/debian/perl-framework/t/htdocs/modules/h2/upload.py new file mode 100755 index 0000000..71880f1 --- /dev/null +++ b/debian/perl-framework/t/htdocs/modules/h2/upload.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python +import cgi, os +import cgitb; cgitb.enable() + +status = '200 Ok' + +try: # Windows needs stdio set for binary mode. + import msvcrt + msvcrt.setmode (0, os.O_BINARY) # stdin = 0 + msvcrt.setmode (1, os.O_BINARY) # stdout = 1 +except ImportError: + pass + +form = cgi.FieldStorage() + +# Test if the file was uploaded +if 'file' in form: + # A nested FieldStorage instance holds the file + fileitem = form['file'] + + # strip leading path from file name to avoid directory traversal attacks + fn = os.path.basename(fileitem.filename) + open('./files/' + fn, 'wb').write(fileitem.file.read()) + message = 'The file "' + fn + '" was uploaded successfully' + +elif 'remove' in form: + remove = form['remove'].value + try: + fn = os.path.basename(remove) + os.remove('./files/' + fn) + message = 'The file "' + fn + '" was removed successfully' + except OSError, e: + message = 'Error removing ' + fn + ': ' + e.strerror + status = '404 File Not Found' +else: + message = '''\ + Upload File
+ +
+ ''' + +print "Status: %s" % (status,) +print """\ + Content-Type: text/html\n + +

%s

+ """ % (message,) -- cgit v1.2.3