mirror of
https://github.com/curl/curl.git
synced 2026-08-24 14:03:35 +03:00
url: normalize CURLINFO_EFFECTIVE_URL
The URL extracted with CURLINFO_EFFECTIVE_URL was returned as given as input in most cases, which made it not get a scheme prefixed like before if the URL was given without one, and it didn't remove dotdot sequences etc. Added test case 1907 to verify that this now works as intended and as before 7.62.0. Regression introduced in 7.62.0 Reported-by: Christophe Dervieux Fixes #4491 Closes #4493
This commit is contained in:
parent
347075bc17
commit
e062043433
5 changed files with 123 additions and 2 deletions
53
tests/data/test1907
Normal file
53
tests/data/test1907
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
CURLINFO_EFFECTIVE_URL
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes swsclose
|
||||
Content-Length: 0
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
CURLINFO_EFFECTIVE_URL with non-scheme URL
|
||||
</name>
|
||||
<tool>
|
||||
lib1907
|
||||
</tool>
|
||||
|
||||
<command>
|
||||
%HOSTIP:%HTTPPORT/hello/../1907
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1907 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<stdout>
|
||||
Effective URL: http://%HOSTIP:%HTTPPORT/1907
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
Loading…
Add table
Add a link
Reference in a new issue