Icecast: Send 100-continue header if possible
authorMarvin Scholz <epirat07@gmail.com>
Tue, 11 Nov 2014 01:39:39 +0000 (02:39 +0100)
committerAnton Khirnov <anton@khirnov.net>
Sat, 15 Nov 2014 08:14:04 +0000 (09:14 +0100)
This allows for proper error reporting. Only do
this for non-legacy requests as only Icecast >2.4.0
will reply with a proper status.
Libav seems to accept both, 100 and 200 status codes, but
let's stay close to spec.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
libavformat/icecast.c

index 155396f..1dc08ab 100644 (file)
@@ -127,6 +127,7 @@ static int icecast_open(URLContext *h, const char *uri, int flags)
     av_dict_set(&opt_dict, "auth_type", "basic", 0);
     av_dict_set(&opt_dict, "headers", headers, 0);
     av_dict_set(&opt_dict, "chunked_post", "0", 0);
+    av_dict_set(&opt_dict, "send_expect_100", s->legacy_icecast ? "0" : "1", 0);
     if (NOT_EMPTY(s->content_type))
         av_dict_set(&opt_dict, "content_type", s->content_type, 0);
     if (NOT_EMPTY(s->user_agent))