Hi, I've realized that some phones (did I say Cisco Linksys SPA?) incorrectly encode non ASCII symbols. For example, my name "Iñaki". The phone sets "Iñaki" as display-name in Contact/From header:
From: "Iñaki" <sip:[email protected]> However my SIP parser detects an error. After inspecting it I've realized that "Iñaki" is written in ISO-8859 rather than UTF-8. So: Correct encoding (bytes decimal representation) for "Iñaki" using UTF-8: I = 73 ñ = 195 177 a = 97 k = 107 i = 105 Incorrect encoding (bytes decimal representation) for "Iñaki" using ISO-8859: I = 73 ñ = 241 a = 97 k = 107 i = 105 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 So, any secure modification I could perform on "header-value" grammar to allow the above case? Thanks a lot. -- Iñaki Baz Castillo <[email protected]> _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
