From a4482b21bd8bb0ac7cfb3471bad32bf84f829805 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Sun, 30 Dec 2018 20:11:57 +0100 Subject: urlapi: fix parsing ipv6 with zone index The previous fix for parsing IPv6 URLs with a zone index was a paddle short for URLs without an explicit port. This patch fixes that case and adds a unit test case. This bug was highlighted by issue #3408, and while it's not the full fix for the problem there it is an isolated bug that should be fixed regardless. Closes #3411 Reported-by: GitYuanQu on github Reviewed-by: Daniel Stenberg --- tests/unit/unit1653.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests') diff --git a/tests/unit/unit1653.c b/tests/unit/unit1653.c index b68d8dc4f..4e326f51b 100644 --- a/tests/unit/unit1653.c +++ b/tests/unit/unit1653.c @@ -83,6 +83,14 @@ UNITTEST_START free(ipv6port); curl_url_cleanup(u); + /* Valid IPv6 with zone index without port number */ + u = curl_url(); + ipv6port = strdup("[fe80::250:56ff:fea7:da15%25eth3]"); + ret = Curl_parse_port(u, ipv6port); + fail_unless(ret == CURLUE_OK, "Curl_parse_port returned error"); + free(ipv6port); + curl_url_cleanup(u); + /* Valid IPv6 with port number */ u = curl_url(); ipv6port = strdup("[fe80::250:56ff:fea7:da15]:81"); -- cgit v1.2.1