avformat/http: return EOF from ff_http_do_new_request if previous response said Connection:close
This fixes a deadlock when using the hls demuxer's new http_persistent feature to stream a youtube live stream over HTTPS. The youtube servers are http/1.1 compliant, but return a "Connecton: close". Before this commit, the demuxer would attempt to send a new request on the partially shutdown connection and cause a deadlock in the tls protocol. Signed-off-by: Aman Gupta <aman@tmm1.net>
This commit is contained in:
		
							parent
							
								
									1f0eaa02aa
								
							
						
					
					
						commit
						54d0ef1738
					
				| @ -327,6 +327,9 @@ int ff_http_do_new_request(URLContext *h, const char *uri) | |||||||
|     if (ret < 0) |     if (ret < 0) | ||||||
|         return ret; |         return ret; | ||||||
| 
 | 
 | ||||||
|  |     if (s->willclose) | ||||||
|  |         return AVERROR_EOF; | ||||||
|  | 
 | ||||||
|     s->end_chunked_post = 0; |     s->end_chunked_post = 0; | ||||||
|     s->chunkend      = 0; |     s->chunkend      = 0; | ||||||
|     s->off           = 0; |     s->off           = 0; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user