]> granicus.if.org Git - curl/commit
URL: return error on malformed URLs with junk after port number
authorDaniel Stenberg <daniel@haxx.se>
Mon, 6 Mar 2017 15:08:21 +0000 (16:08 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 6 Mar 2017 15:08:21 +0000 (16:08 +0100)
commitaadb7c7b62251c4e760930d543105f2b10cbd9b2
treed11600c715804a7d85c6005e2d121d000168f245
parent7ad72e0fc274b85130a75003fcb49c59c49d3dd7
URL: return error on malformed URLs with junk after port number

... because it causes confusion with users. Example URLs:

"http://[127.0.0.1]:11211:80" which a lot of languages' URL parsers will
parse and claim uses port number 80, while libcurl would use port number
11211.

"http://user@example.com:80@localhost" which by the WHATWG URL spec will
be treated to contain user name 'user@example.com' but according to
RFC3986 is user name 'user' for the host 'example.com' and then port 80
is followed by "@localhost"

Both these formats are now rejected, and verified so in test 1260.

Reported-by: Orange Tsai
lib/url.c
tests/data/Makefile.inc
tests/data/test1260 [new file with mode: 0644]