From 854303ad49d188d96af8151b290162916c81c993 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 7 Jul 2013 19:40:14 +0200 Subject: Remove internal network support This commit removes the "old" networking code in favor of libavformat's code. The code was still used for mp_http, udp, ftp, cddb. http has been mapped to libavformat's http support since approximately 6 months ago. udp and ftp have support in ffmpeg (though ftp was added only last month). cddb support is removed with this commit - it's probably not important and rarely used if at all, so we don't care about it. --- core/m_option.c | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) (limited to 'core/m_option.c') diff --git a/core/m_option.c b/core/m_option.c index 9ef968194f..9b8256abe4 100644 --- a/core/m_option.c +++ b/core/m_option.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -38,7 +39,6 @@ #include "core/mp_common.h" #include "core/m_option.h" #include "core/mp_msg.h" -#include "stream/url.h" char *m_option_strerror(int code) { @@ -2367,6 +2367,38 @@ const m_option_type_t m_option_type_obj_settings_list = { }; +/* Replace escape sequences in an URL (or a part of an URL) */ +/* works like strcpy(), but without return argument, + except that outbuf == inbuf is allowed */ +static void url_unescape_string(char *outbuf, const char *inbuf) +{ + unsigned char c,c1,c2; + int i,len=strlen(inbuf); + for (i=0;i='0' && c1<='9') || (c1>='A' && c1<='F')) && + ((c2>='0' && c2<='9') || (c2>='A' && c2<='F')) ) + { + if (c1>='0' && c1<='9') + c1-='0'; + else + c1-='A'-10; + if (c2>='0' && c2<='9') + c2-='0'; + else + c2-='A'-10; + c = (c1<<4) + c2; + i=i+2; //only skip next 2 chars if valid esc + } + } + *outbuf++ = c; + } + *outbuf++='\0'; //add nullterm to string +} + static int parse_custom_url(const m_option_t *opt, struct bstr name, struct bstr url, void *dst) { -- cgit v1.2.3