55

We are developing a wireless n/w configuration UI and need to check if a SSID is a valid one? Are there any restrictions on the character set? length ? anything more..

Anand G
  • 551
  • 1
  • 4
  • 4

2 Answers2

68

Section 7.3.2.1 of the 802.11-2007 specification (http://standards.ieee.org/getieee802/download/802.11-2007.pdf) defines SSIDs.

A valid SSID is 0-32 octets with arbitrary contents. A 0-length SSID indicates the wildcard SSID (in probe request frames for instance).

There's no character set associated with the SSID - a 32-byte string of NUL-bytes is a valid SSID.

This implies:

  • you should never use normal string functions when manipulating generic SSIDs (strcpy() and friends).

  • you should not assume that the SSID is printable when, for instance, logging it to disk

Ryan Schipper
  • 1,019
  • 7
  • 8
Per Knytt
  • 1,931
  • 1
  • 11
  • 14
15

According to last standard 802.11-2012 (Section 6.3.11.2.2), it can be 0-32 octets with an unspecified or UTF8 encoding.

fazineroso
  • 7,196
  • 7
  • 31
  • 42
  • 5
    Microsoft -- as usual -- messed it: While Windows Phone 8 displayed it correctly UTF8 decoded, Windows 10 Mobile now decodes it using Windows-1252 or Latin1. – springy76 May 29 '16 at 12:13