From 3e8e87bfccebcff5b031861a8f323ad57cbff1e8 Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Sun, 13 Nov 2022 19:26:22 +0300 Subject: [PATCH] Fix RTSP unknown response handler --- pkg/rtsp/conn.go | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/pkg/rtsp/conn.go b/pkg/rtsp/conn.go index 1b91ca21..c7d74ab5 100644 --- a/pkg/rtsp/conn.go +++ b/pkg/rtsp/conn.go @@ -644,22 +644,21 @@ func (c *Conn) Handle() (err error) { } if buf4[0] != '$' { - if string(buf4) == "RTSP" { + switch string(buf4) { + case "RTSP": var res *tcp.Response - res, err = tcp.ReadResponse(c.reader) - if err != nil { + if res, err = tcp.ReadResponse(c.reader); err != nil { return } - c.Fire(res) - } else { + case "OPTI", "TEAR", "DESC", "SETU", "PLAY", "PAUS", "RECO", "ANNO", "GET_", "SET_": var req *tcp.Request - req, err = tcp.ReadRequest(c.reader) - if err != nil { + if req, err = tcp.ReadRequest(c.reader); err != nil { return } - c.Fire(req) + default: + return fmt.Errorf("RTSP wrong input") } continue }