ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
April 17th, 2024 | 14:30-16:00 SGT (UTC+8) | Online

Wireshark-dev: [Wireshark-dev] UCS-2 vs. UTF-16?

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Fri, 13 Dec 2013 23:49:31 -0800
Currently, we have separate encoding values for UCS-2 (Unicode code points between 0 and 65535, represented as 2-byte sequences) and UTF-16 (all of Unicode, with code points > 65535 represented as "surrogate pairs").

Is there any reason to support UCS-2 (in which, presumably, code points in the ranges 0xD800-0xDFFF would be treated as errors, as those code points are reserved as surrogates), or should we just support UTF-16?

The Microsoft [MS-RPCE] (Remote Procedure Call Protocol Extensions) specification talks about "Unicode" strings, without indicating whether that's full Unicode, encoded as UTF-16, or only the Unicode Basic Multilingual Plane, encoded as UCS-2.  I haven't checked what, for example, the SMB or SMB2 specification says.