Skip to content

[pull] master from MusicPlayerDaemon:master#74

Merged
pull[bot] merged 20 commits into
CartoonFan:masterfrom
MusicPlayerDaemon:master
May 14, 2026
Merged

[pull] master from MusicPlayerDaemon:master#74
pull[bot] merged 20 commits into
CartoonFan:masterfrom
MusicPlayerDaemon:master

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented May 14, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

In XML-based playlist formats such as ASX and XSPF, the `location` tag
can have arbitrary string data, including (encoded) newline
characters.  That allows injecting such URIs into MPD, which allows an
attacker to desync the MPD protocol.

Closes #2483
Obviously, we shouldn't ever transmit null bytes because bad things
happen when you do.
The MPD text protocol is by definition UTF-8 only, and thus all
strings that are used anywhere must be valid UTF-8.
…ateUTF8()

.. so these plugins will benefit from future improvements to
VerifyRelativePathUTF8().
This removes the check for '\r', but we don't have it everywhere else.
Having a playlist name with '\r' for sure isn't a good idea, but at
least it's not dangerous for the MPD protocol, I guess.  If we believe
it's dangerous, the check should be added to VerifyStringUTF8() to
cover all places where that's important.
This fixes an ugly path traversal bug that allowed clients to do
"listfiles ..".

Closes #2484
The buffer size must be rounded up.

Just like the other vulnerabilities I fixed today, this one was found
and reported by Matteo Strada and Daniele Berardinelli.

Closes #2485
Even Debian "oldstable" Bookworm has 7.88.0, so requiring at least
7.85.0 is reasonable.

The actual reason to raise the minimum version is because that version
limits the CURLOPT_FOLLOWLOCATION protocols to HTTP and FTP,
disallowing redirects to Gopher and other strange protocols MPD
doesn't want to use.  This means redirects can no longer circumvent
the protocol whitelist (function protocol_is_whitelisted()).

Closes #2487
This was never necessary, but became buggy after commit
4e2a551 which added the
curl_version_info() check to obtain the list of protocols supported by
CURL.  The plugin now claimed to support protocols that were not
actually accepted by input_curl_open().
release v0.24.11
@pull pull Bot locked and limited conversation to collaborators May 14, 2026
@pull pull Bot added the ⤵️ pull label May 14, 2026
@pull pull Bot merged commit d5d2b1c into CartoonFan:master May 14, 2026
2 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant