Closed Redrield closed 7 years ago
In the websockets feature, specifically at https://github.com/Kotlin/ktor/blob/master/ktor-features/ktor-websockets/src/org/jetbrains/ktor/websocket/WebSocketUpgrade.kt#L22, the upgrade header is defined as requiring a value of 'websocket' exactly. This violates the terms set in section 4.2.1 of RFC 6455, which states that
An |Upgrade| header field containing the value "websocket", treated as an ASCII case-insensitive value.
This can be solved by comparing header values with ignoreCase as true.
Fixed
In the websockets feature, specifically at https://github.com/Kotlin/ktor/blob/master/ktor-features/ktor-websockets/src/org/jetbrains/ktor/websocket/WebSocketUpgrade.kt#L22, the upgrade header is defined as requiring a value of 'websocket' exactly. This violates the terms set in section 4.2.1 of RFC 6455, which states that
This can be solved by comparing header values with ignoreCase as true.