Commit e5ea21a5 authored by Michael Niedermayer's avatar Michael Niedermayer

avformat/rtsp: Clear reply in every iteration in ff_rtsp_connect()

Fixes: Infinite loop
Found-by: 's avatarMichael Hanselmann <public@hansmi.ch>
Reviewed-by: 's avatarMichael Hanselmann <public@hansmi.ch>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 0b50f276)
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 20337eb1
...@@ -1659,7 +1659,7 @@ int ff_rtsp_connect(AVFormatContext *s) ...@@ -1659,7 +1659,7 @@ int ff_rtsp_connect(AVFormatContext *s)
char tcpname[1024], cmd[2048], auth[128]; char tcpname[1024], cmd[2048], auth[128];
const char *lower_rtsp_proto = "tcp"; const char *lower_rtsp_proto = "tcp";
int port, err, tcp_fd; int port, err, tcp_fd;
RTSPMessageHeader reply1 = {0}, *reply = &reply1; RTSPMessageHeader reply1, *reply = &reply1;
int lower_transport_mask = 0; int lower_transport_mask = 0;
int default_port = RTSP_DEFAULT_PORT; int default_port = RTSP_DEFAULT_PORT;
char real_challenge[64] = ""; char real_challenge[64] = "";
...@@ -1688,6 +1688,7 @@ int ff_rtsp_connect(AVFormatContext *s) ...@@ -1688,6 +1688,7 @@ int ff_rtsp_connect(AVFormatContext *s)
rt->lower_transport_mask &= (1 << RTSP_LOWER_TRANSPORT_NB) - 1; rt->lower_transport_mask &= (1 << RTSP_LOWER_TRANSPORT_NB) - 1;
redirect: redirect:
memset(&reply1, 0, sizeof(reply1));
/* extract hostname and port */ /* extract hostname and port */
av_url_split(proto, sizeof(proto), auth, sizeof(auth), av_url_split(proto, sizeof(proto), auth, sizeof(auth),
host, sizeof(host), &port, path, sizeof(path), s->filename); host, sizeof(host), &port, path, sizeof(path), s->filename);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment