________________________________________
From: [email protected] 
[[email protected]] On Behalf Of Iñaki Baz 
Castillo [[email protected]]

So, even if I'm right (my parser is ok) I want to be less restrictive
and allow such invalid bytes as value of generic header. The ABNF of
header_value is RFC 3261 is:

  header-value      =  *(TEXT-UTF8char / UTF8-CONT / LWS)
  TEXT-UTF8char   =  %x21-7E / UTF8-NONASCII
  UTF8-NONASCII   =  %xC0-DF 1UTF8-CONT
                        /  %xE0-EF 2UTF8-CONT
                        /  %xF0-F7 3UTF8-CONT
                        /  %xF8-Fb 4UTF8-CONT
                        /  %xFC-FD 5UTF8-CONT
  UTF8-CONT       =  %x80-BF
_______________________________________________

There is a corruption that allows situations like this to work fairly well:  
Treat all "upper half" bytes (x80 to xFF) as "letters":

UTF8-NONASCII = %x80-FF

This causes UTF-8 encoded characters x80 and upward to appear as a sequence of 
UTF8-NONASCII, but in most applications, that is acceptable.  If the text is 
encoded using ISO-8859-x, or any one-byte encoding that reserves x00-x7F to 
match ASCII, then the characters x80-xFF are parsed as a single UTF8-NONASCII.

Of course the best solution is to replace any device that does not encode 
characters correctly.  But also verify that you are configuring the device 
correctly -- if the configuration information is presented in an unexpected 
encoding, the phone might be copying the bytes without examining them.

Dale

_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to