diff --git a/libavformat/Makefile b/libavformat/Makefile index 25b8157d2c..110e683b2e 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -380,7 +380,8 @@ SKIPHEADERS-$(CONFIG_NETWORK) += network.h rtsp.h EXAMPLES = metadata \ output \ -TESTPROGS = seek \ +TESTPROGS = noproxy \ + seek \ srtp \ url \ diff --git a/libavformat/noproxy-test.c b/libavformat/noproxy-test.c new file mode 100644 index 0000000000..59a435e30a --- /dev/null +++ b/libavformat/noproxy-test.c @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2013 Martin Storsjo + * + * This file is part of Libav. + * + * Libav is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * Libav is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with Libav; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "internal.h" + +static void test(const char *pattern, const char *host) +{ + int res = ff_http_match_no_proxy(pattern, host); + printf("The pattern \"%s\" %s the hostname %s\n", + pattern ? pattern : "(null)", res ? "matches" : "does not match", + host); +} + +int main(void) +{ + test(NULL, "domain.com"); + test("example.com domain.com", "domain.com"); + test("example.com other.com", "domain.com"); + test("example.com,domain.com", "domain.com"); + test("example.com,domain.com", "otherdomain.com"); + test("example.com, *.domain.com", "sub.domain.com"); + test("example.com, *.domain.com", "domain.com"); + test("example.com, .domain.com", "domain.com"); + test("*", "domain.com"); + return 0; +} diff --git a/tests/fate/libavformat.mak b/tests/fate/libavformat.mak index 20bc31999f..8332246949 100644 --- a/tests/fate/libavformat.mak +++ b/tests/fate/libavformat.mak @@ -1,3 +1,7 @@ +FATE_LIBAVFORMAT += fate-noproxy +fate-noproxy: libavformat/noproxy-test$(EXESUF) +fate-noproxy: CMD = run libavformat/noproxy-test + FATE_LIBAVFORMAT += fate-srtp fate-srtp: libavformat/srtp-test$(EXESUF) fate-srtp: CMD = run libavformat/srtp-test diff --git a/tests/ref/fate/noproxy b/tests/ref/fate/noproxy new file mode 100644 index 0000000000..7707609d0f --- /dev/null +++ b/tests/ref/fate/noproxy @@ -0,0 +1,9 @@ +The pattern "(null)" does not match the hostname domain.com +The pattern "example.com domain.com" matches the hostname domain.com +The pattern "example.com other.com" does not match the hostname domain.com +The pattern "example.com,domain.com" matches the hostname domain.com +The pattern "example.com,domain.com" does not match the hostname otherdomain.com +The pattern "example.com, *.domain.com" matches the hostname sub.domain.com +The pattern "example.com, *.domain.com" matches the hostname domain.com +The pattern "example.com, .domain.com" matches the hostname domain.com +The pattern "*" matches the hostname domain.com