player: refine rar:// playlist-safety handling

It was possible to make the player play local files by putting rar://
links into remote playlists, and some other potentially unsafe things.

Redo the handling of it. Now the rar-redirector (the thing in
demux_playlist.c) sets disable_safety, which makes the player open any
playlist entries returned. This is fine, because it redirects to the
same file anyway (just with different selection/interpretation of the
contents). On the other hand, rar:// itself is now considered fully
unsafe, which means that it is ignored if found in normal playlists.
This commit is contained in:
wm4
2015-03-02 19:09:36 +01:00
parent 01b87e509c
commit a4b6bf8c41
6 changed files with 11 additions and 9 deletions

View File

@@ -735,7 +735,6 @@ static stream_t *open_cache(stream_t *orig, const char *name)
cache->mime_type = talloc_strdup(cache, orig->mime_type);
cache->demuxer = talloc_strdup(cache, orig->demuxer);
cache->lavf_type = talloc_strdup(cache, orig->lavf_type);
cache->safe_origin = orig->safe_origin;
cache->streaming = orig->streaming,
cache->is_network = orig->is_network;
cache->opts = orig->opts;