diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index db1573048c..b9c700f73b 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -717,6 +717,9 @@ void rtsp_parse_line(RTSPHeader *reply, const char *buf) reply->seq = strtol(p, NULL, 10); } else if (av_stristart(p, "Range:", &p)) { rtsp_parse_range_npt(p, &reply->range_start, &reply->range_end); + } else if (av_stristart(p, "RealChallenge1:", &p)) { + skip_spaces(&p); + av_strlcpy(reply->real_challenge, p, sizeof(reply->real_challenge)); } } diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h index 288f69776d..1923acbbc8 100644 --- a/libavformat/rtsp.h +++ b/libavformat/rtsp.h @@ -62,6 +62,7 @@ typedef struct RTSPHeader { RTSPTransportField transports[RTSP_MAX_TRANSPORTS]; int seq; /**< sequence number */ char session_id[512]; + char real_challenge[64]; /**< the RealChallenge1 field from the server */ } RTSPHeader; /** the callback can be used to extend the connection setup/teardown step */