diff options
author | Tim Graham <timograham@gmail.com> | 2019-03-01 13:47:09 -0500 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2019-03-02 09:19:05 -0500 |
commit | 8ec7ded3706fe66bf307ed339eb852d73f6d10d0 (patch) | |
tree | b2ad9b885302717a70e3a9fb0d7d751783d4d637 /django/http/multipartparser.py | |
parent | 2ed2acf872b87d1149da98ceeb96997f23258e83 (diff) | |
download | django-8ec7ded3706fe66bf307ed339eb852d73f6d10d0.tar.gz |
Refs #30227 -- Added helpful message for non-ASCII Content-Type in mulitpart request.
Diffstat (limited to 'django/http/multipartparser.py')
-rw-r--r-- | django/http/multipartparser.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/django/http/multipartparser.py b/django/http/multipartparser.py index 526e161ae4..07a1d676ee 100644 --- a/django/http/multipartparser.py +++ b/django/http/multipartparser.py @@ -67,7 +67,10 @@ class MultiPartParser: raise MultiPartParserError('Invalid Content-Type: %s' % content_type) # Parse the header to get the boundary to split the parts. - ctypes, opts = parse_header(content_type.encode('ascii')) + try: + ctypes, opts = parse_header(content_type.encode('ascii')) + except UnicodeEncodeError: + raise MultiPartParserError('Invalid non-ASCII Content-Type in multipart: %s' % force_str(content_type)) boundary = opts.get('boundary') if not boundary or not cgi.valid_boundary(boundary): raise MultiPartParserError('Invalid boundary in multipart: %s' % force_str(boundary)) |