summaryrefslogtreecommitdiff
path: root/tools/http_server.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/http_server.py')
-rwxr-xr-xtools/http_server.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/http_server.py b/tools/http_server.py
index 76f8e6e69..d143f0ba8 100755
--- a/tools/http_server.py
+++ b/tools/http_server.py
@@ -207,6 +207,25 @@ class ContentTypeHandler(QuietSimpleHTTPRequestHandler):
data_string = self.rfile.read(int(self.headers['Content-Length']))
self.wfile.write(bytes(data_string))
return
+ if "echo_multipart_file" in self.path:
+ self.protocol_version = 'HTTP/1.1'
+ self.send_response(200, 'OK')
+ self.send_header('Content-type',
+ 'multipart/form-data;boundary=boundary')
+ self.end_headers()
+ file_content = self.rfile.read(int(self.headers['Content-Length']))
+ self.wfile.write(
+ bytes('--boundary\t \r\n'
+ 'Content-Disposition: form-data; name="field_1"\r\n'
+ '\r\n'
+ 'value_1 \r\n'
+ '\r\n--boundary\r\n'
+ 'Content-Disposition: form-data; name="file"; '
+ 'filename="file.bin"\r\n'
+ 'Content-Type: application/octet-stream\r\n'
+ '\r\n') + bytes(file_content) +
+ bytes('\r\n--boundary--\r\n'))
+ return
self.protocol_version = 'HTTP/1.1'
self.send_response(501)
self.send_header('content-type', 'text/plain')