diff --git a/wish-server/.gitignore b/wish-server/.gitignore index 4523c5d..9a6e7ce 100644 --- a/wish-server/.gitignore +++ b/wish-server/.gitignore @@ -1 +1,2 @@ /streams.db +/wish-server diff --git a/wish-server/main.go b/wish-server/main.go index be9612a..0a8728b 100644 --- a/wish-server/main.go +++ b/wish-server/main.go @@ -133,10 +133,13 @@ func HandleWHIP(res http.ResponseWriter, req *http.Request) { logHTTPError(res, "Authorization was not set", http.StatusBadRequest) return } - streamName, streamPassword, _ := strings.Cut(authorization, ":") - if err := db.QueryRow("SELECT * FROM streams WHERE stream = ? AND password = ?", streamName, streamPassword).Scan(); err != nil { - logHTTPError(res, "Invalid stream authorization", http.StatusUnauthorized) + streamName, _ = strings.CutPrefix(strings.ToLower(streamName), "bearer ") + + var qN string + var qP string + if err := db.QueryRow("SELECT * FROM streams WHERE stream = ? AND password = ?", streamName, streamPassword).Scan(&qN, &qP); err != nil { + logHTTPError(res, "Invalid stream authorization for: "+streamName+" - "+err.Error(), http.StatusUnauthorized) return }