From: Erik Janssen Date: Thu, 20 Aug 2015 21:07:03 +0000 (+0200) Subject: rtsp: stop reading empty DESCRIBE responses X-Git-Tag: curl-7_45_0~121 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=14ff86256b13e;p=curl rtsp: stop reading empty DESCRIBE responses Based-on-patch-by: Jim Hollinger --- diff --git a/lib/http.c b/lib/http.c index 9817d72af..d7b56c30b 100644 --- a/lib/http.c +++ b/lib/http.c @@ -3185,6 +3185,16 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, */ if(data->set.opt_no_body) *stop_reading = TRUE; +#ifndef CURL_DISABLE_RTSP + else if((conn->handler->protocol & CURLPROTO_RTSP) && + (data->set.rtspreq == RTSPREQ_DESCRIBE) && + (k->size <= -1)) + /* Respect section 4.4 of rfc2326: If the Content-Length header is + absent, a length 0 must be assumed. It will prevent libcurl from + hanging on DECRIBE request that got refused for whatever + reason */ + *stop_reading = TRUE; +#endif else { /* If we know the expected size of this document, we set the maximum download size to the size of the expected