#13944: Very long accept-language headers break parser
----------------------------------+-----------------------------------------
 Reporter:  russellm              |       Owner:  nobody    
   Status:  new                   |   Milestone:  1.3       
Component:  Internationalization  |     Version:  1.2       
 Keywords:                        |       Stage:  Unreviewed
Has_patch:  0                     |  
----------------------------------+-----------------------------------------
 The parse_accept_language_header() function in
 utils/translation/trans_real.py uses a regular expression to parse accept-
 language headers.

 This works well with RFC2616 compliant data, but breaks if bad data is
 passed in -- in particular, a string that exceeds 16 characters in length.
 This can result in pages not returning from the server.

 A particular culprit here appears to be Weave; for some reason, on some
 configurations, it seems to put path names into the accept-language
 header. A path will often exceed 16 characters, triggering the problem.

 To reproduce: set your accept-language header to: en-
 nz,en,de,chrome://global/locale/intl.properties

-- 
Ticket URL: <http://code.djangoproject.com/ticket/13944>
Django <http://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to