From 04402bf02fb2720a62a70f169e807fc92f49ea9d Mon Sep 17 00:00:00 2001 From: Craig Drummond Date: Fri, 10 Aug 2018 09:37:17 +0100 Subject: [PATCH] Remove user-agent checking when serving local files, this is easily fake-able and breaks playback to forked-daap (and mopidy?) Issue #1339 --- ChangeLog | 2 ++ http/httpsocket.cpp | 17 ----------------- 2 files changed, 2 insertions(+), 17 deletions(-) diff --git a/ChangeLog b/ChangeLog index d71ed47a4..04f991111 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,8 @@ ----- 1. For Opus files, use R128_TRACK_GAIN and R128_ALBUM_GAIN to store replaygain values. +2. Remove user-agent checking when serving local files, this is easily + fake-able and breaks playback to forked-daap (and mopidy?) 2.3.2 ----- diff --git a/http/httpsocket.cpp b/http/httpsocket.cpp index 7c78924f0..8c9b71dae 100644 --- a/http/httpsocket.cpp +++ b/http/httpsocket.cpp @@ -154,16 +154,6 @@ static QList split(const QByteArray &a) return rv; } -static bool isFromMpd(const QStringList ¶ms) -{ - for (const QString &str: params) { - if (str.startsWith("User-Agent:") && str.contains("Music Player Daemon")) { - return true; - } - } - return false; -} - static void getRange(const QStringList ¶ms, qint32 &from, qint32 &to) { for (const QString &str: params) { @@ -279,13 +269,6 @@ void HttpSocket::readClient() QStringList params = QString(socket->readAll()).split(QRegExp("[\r\n][\r\n]*")); DBUG << "params" << params << "tokens" << tokens; - if (!isFromMpd(params)) { - sendErrorResponse(socket, 400); - socket->close(); - DBUG << "Not from MPD"; - return; - } - QUrl url(QUrl::fromEncoded(tokens[1])); QUrlQuery q(url); bool ok=false;