Hi,

The ICY protocol is used by some sites to stream mp3 audio. The server sends
back the first Header line as.

ICY 200 OK

Polipo will drop that header and tell the client that it is not a supported
server version. However, the ICY
is not much different from HTTP. I find that just change the ICY to HTTP/1.1
and pass along the rest of the traffic. Windows Media player will happily
play the mp3 stream it carries, ICY or HTTP/1.1, it doesn't seem to make a
different to the windows media player.

Here is my dif

--- smg/contrib/polipo-cache/http_parse.c       2008/06/12 17:58:16     1.3
+++ smg/contrib/polipo-cache/http_parse.c       2008/12/01 14:40:41     1.4
@@ -478,7 +478,11 @@ httpParseServerFirstLine(const char *res
         version = HTTP_10;
     else if(y >= x + 8 && memcmp(buf + x, "HTTP/1.", 7) == 0)
         version = HTTP_11;
-    else
+    else if (y >= x + 3 && memcmp(buf + x, "ICY", 3) == 0)
+       version = HTTP_11;
+    else
         version = HTTP_UNKNOWN;

     i = getNextWord(buf, y + 1, &x, &y);

The site you can test against are

http://www.kqed.org, click listen alive, and choose windows media player.

Regards,
Ming
------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Polipo-users mailing list
Polipo-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/polipo-users

Reply via email to