Handle lowercase websocket upgrade headers
This commit is contained in:
@@ -69,6 +69,18 @@ diff --git a/internal/telebit/connwrap.go b/internal/telebit/connwrap.go
|
|||||||
// isEncrypted returns true if peeking at net.Conn reveals that it is TLS-encrypted
|
// isEncrypted returns true if peeking at net.Conn reveals that it is TLS-encrypted
|
||||||
func (c *ConnWrap) isEncrypted() bool {
|
func (c *ConnWrap) isEncrypted() bool {
|
||||||
if nil != c.encrypted {
|
if nil != c.encrypted {
|
||||||
|
diff --git a/internal/telebit/admin.go b/internal/telebit/admin.go
|
||||||
|
--- a/internal/telebit/admin.go
|
||||||
|
+++ b/internal/telebit/admin.go
|
||||||
|
@@ -223,7 +223,7 @@ func upgradeWebsocket(w http.ResponseWriter, r *http.Request) {
|
||||||
|
log.Println("websocket opening ", r.RemoteAddr, " ", r.Host)
|
||||||
|
w.Header().Set("Content-Type", "application/json")
|
||||||
|
|
||||||
|
- if "Upgrade" != r.Header.Get("Connection") && "WebSocket" != r.Header.Get("Upgrade") {
|
||||||
|
+ if "upgrade" != strings.ToLower(r.Header.Get("Connection")) && "websocket" != strings.ToLower(r.Header.Get("Upgrade")) {
|
||||||
|
w.Write(apiNotFoundContent)
|
||||||
|
return
|
||||||
|
}
|
||||||
diff --git a/internal/telebit/routemux.go b/internal/telebit/routemux.go
|
diff --git a/internal/telebit/routemux.go b/internal/telebit/routemux.go
|
||||||
--- a/internal/telebit/routemux.go
|
--- a/internal/telebit/routemux.go
|
||||||
+++ b/internal/telebit/routemux.go
|
+++ b/internal/telebit/routemux.go
|
||||||
|
|||||||
Reference in New Issue
Block a user