RFC Errata
RFC 6455, "The WebSocket Protocol", December 2011
Note: This RFC has been updated by RFC 7936, RFC 8307, RFC 8441
Source of RFC: hybi (app)
Errata ID: 8491
Status: Rejected
Type: Technical
Publication Format(s) : TEXT
Reported By: YuSheng Chen
Date Reported: 2025-06-28
Rejected by: Mike Bishop (WIT AD)
Date Rejected: 2025-07-19
Section 9.1 says:
is exactly equivalent to
Sec-WebSocket-Extensions: foo, bar; baz=2
It should say:
is exactly equivalent to
Sec-WebSocket-Extensions: foo; bar; baz=2
Notes:
Should be semicolon-separated
--VERIFIER NOTES--
RFC 6455 defines this field in Section 9.1 as:
extension-list = 1#extension
extension = extension-token *( ";" extension-param )
While the reporter is noting the ";" between extension-token and extension-param, the separator between two extension elements is found in the definition of "#" from RFC 2616:
#rule
A construct "#" is defined, similar to "*", for defining lists of
elements. The full form is "<n>#<m>element" indicating at least
<n> and at most <m> elements, each separated by one or more commas
(",") and OPTIONAL linear white space (LWS). This makes the usual
form of lists very easy; a rule such as
( *LWS element *( *LWS "," *LWS element ))
Thus, as is typical in HTTP fields other than Cookie, the delimiter between outermost elements is "," and ";" is an internal separator within an element.
