diff options
| author | salmonik <salmonik@tuta.io> | 2026-11-04 01:29:57 +0100 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-11-04 01:29:57 +0100 |
| commit | 4b2b4af606237def78273a42e881ae9f971cb505 (patch) | |
| tree | 47735062971b7dcddfbe3ad385ccbf2570fa6245 /src/commands/music.rs | |
| parent | docker: install ImageMagick for image compress/convert (diff) | |
| download | senator-sperma-4b2b4af606237def78273a42e881ae9f971cb505.tar.gz senator-sperma-4b2b4af606237def78273a42e881ae9f971cb505.zip | |
net: block private and link-local URLs
Diffstat (limited to '')
| -rw-r--r-- | src/commands/music.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/commands/music.rs b/src/commands/music.rs index 245eb88..baa91b1 100644 --- a/src/commands/music.rs +++ b/src/commands/music.rs | |||
| @@ -121,6 +121,10 @@ async fn resolve_source( | |||
| 121 | let url = name.clone(); | 121 | let url = name.clone(); |
| 122 | let display_name = clean_name(url.rsplit('/').next().unwrap_or(&url)); | 122 | let display_name = clean_name(url.rsplit('/').next().unwrap_or(&url)); |
| 123 | 123 | ||
| 124 | if !ctx.data().copyparty.is_own_url(&url) { | ||
| 125 | crate::net::ensure_public_http_url(&url).await?; | ||
| 126 | } | ||
| 127 | |||
| 124 | // yt-dlp platforms → download; everything else (radio, HLS, | 128 | // yt-dlp platforms → download; everything else (radio, HLS, |
| 125 | // playlists, Copyparty, direct media) → ffmpeg stream. | 129 | // playlists, Copyparty, direct media) → ffmpeg stream. |
| 126 | let kind = classify_url(&url); | 130 | let kind = classify_url(&url); |
