mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 10:24:02 +00:00
fix(cctv): serve only live feeds on /media
/api/cctv/media relayed still-image cameras with an ordinary fetch: it followed redirects to any host, passed through any content type and had no body cap. Stills are served by /api/cctv/frame, which keeps redirects on the registered origin, accepts only image/* and caps the body, and no client requests a still through /media. /media now answers 404 for anything but HLS, MP4/WebM and MJPEG, before any upstream request.
This commit is contained in:
1 parent
3f239f1173
commit
248a658713
4 files changed
+299
-1
No files matched your search
@@ -1,5 +1,15 @@
|
||||
# Changelog
|
||||
|
||||
- Refuse still-image cameras on the CCTV media relay. `/api/cctv/media` is the
|
||||
live-feed route, but it also relayed any registered still camera through an
|
||||
ordinary fetch that followed redirects to any host, passed through whatever
|
||||
content type came back and had no cap on the body, bypassing every protection
|
||||
`/api/cctv/frame` applies to the same URL. Only HLS, MP4, WebM and MJPEG
|
||||
feeds are relayed now; a still camera, or an unknown id, gets a JSON 404
|
||||
without an upstream request and is served only through `/api/cctv/frame`.
|
||||
The client already loaded stills through `/frame`, so nothing it requests
|
||||
changes.
|
||||
|
||||
- Stop one retired bikeshare feed from reporting the whole layer as failed.
|
||||
City feeds are fetched independently, but failure was recorded in a single
|
||||
flag that only a successful *activation* cleared — and an already-loaded city
|
||||
|
||||
Reference in new issue
Block a user