mirror of
https://github.com/curl/curl.git
synced 2026-05-30 03:07:28 +03:00
tool_ipfs: accept IPFS gateway URL without set port number
Follow-up to: 56129718b8
Test 1851 added to verify
Pointed out by Codex Security
Closes #20957
This commit is contained in:
parent
f1a5343f5e
commit
f4c0590b1c
3 changed files with 58 additions and 2 deletions
|
|
@ -166,7 +166,8 @@ CURLcode ipfs_url_rewrite(CURLU *uh, const char *protocol, char **url,
|
|||
/* get gateway parts */
|
||||
if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
|
||||
curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
|
||||
curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
|
||||
curl_url_get(gatewayurl, CURLUPART_PORT, &gwport,
|
||||
CURLU_URLDECODE | CURLU_DEFAULT_PORT) ||
|
||||
curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))
|
||||
goto clean;
|
||||
|
||||
|
|
|
|||
|
|
@ -230,7 +230,7 @@ test1680 test1681 test1682 test1683 \
|
|||
test1700 test1701 test1702 test1703 test1704 test1705 test1706 test1707 \
|
||||
test1708 test1709 test1710 test1711 test1712 test1713 \
|
||||
\
|
||||
test1800 test1801 test1802 test1847 test1848 test1849 test1850 \
|
||||
test1800 test1801 test1802 test1847 test1848 test1849 test1850 test1851 \
|
||||
\
|
||||
test1900 test1901 test1902 test1903 test1904 test1905 test1906 test1907 \
|
||||
test1908 test1909 test1910 test1911 test1912 test1913 test1914 test1915 \
|
||||
|
|
|
|||
55
tests/data/test1851
Normal file
55
tests/data/test1851
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
<?xml version="1.0" encoding="US-ASCII"?>
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
IPFS
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes" crlf="headers">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Tue, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 21
|
||||
Connection: close
|
||||
Content-Type: text/plain
|
||||
Funny-head: yesyes
|
||||
|
||||
Hello curl from IPFS
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<features>
|
||||
ipfs
|
||||
proxy
|
||||
</features>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
IPFS gateway using default port number
|
||||
</name>
|
||||
<command>
|
||||
--ipfs-gateway http://somewhere.anywhere "ipfs://r4nd0m" -x http://%HOSTIP:%HTTPPORT
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol crlf="headers">
|
||||
GET http://somewhere.anywhere/ipfs/r4nd0m HTTP/1.1
|
||||
Host: somewhere.anywhere
|
||||
User-Agent: curl/%VERSION
|
||||
Accept: */*
|
||||
Proxy-Connection: Keep-Alive
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
Loading…
Add table
Add a link
Reference in a new issue