mirror of
https://github.com/curl/curl.git
synced 2026-07-24 04:17:18 +03:00
url: Fix parsing for when 'file' is the default protocol
Follow-up to3463408. Prior to3463408file:// hostnames were silently stripped. Prior to this commit it did not work when a schemeless url was used with file as the default protocol. Ref: https://curl.haxx.se/mail/lib-2016-11/0081.html Closes https://github.com/curl/curl/pull/1124 Also fix for drive letters: - Support --proto-default file c:/foo/bar.txt - Support file://c:/foo/bar.txt - Fail when a file:// drive letter is detected and not MSDOS/Windows. Bug: https://github.com/curl/curl/issues/1187 Reported-by: Anatol Belski Assisted-by: Anatol Belski
This commit is contained in:
parent
807698db02
commit
1d4202ade6
5 changed files with 151 additions and 10 deletions
|
|
@ -120,7 +120,7 @@ test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 \
|
|||
test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 \
|
||||
test1128 test1129 test1130 test1131 test1132 test1133 test1134 test1135 \
|
||||
test1136 test1137 test1138 test1139 test1140 test1141 test1142 test1143 \
|
||||
test1144 \
|
||||
test1144 test1145 test1146 \
|
||||
test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \
|
||||
test1208 test1209 test1210 test1211 test1212 test1213 test1214 test1215 \
|
||||
test1216 test1217 test1218 test1219 \
|
||||
|
|
|
|||
40
tests/data/test1145
Normal file
40
tests/data/test1145
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FILE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
file
|
||||
</server>
|
||||
<name>
|
||||
file:// bad host
|
||||
</name>
|
||||
# This command should not succeed since we only accept
|
||||
# file:/// file://localhost/ file://127.0.0.1/
|
||||
<command>
|
||||
file://bad-host%PWD/log/test1145.txt
|
||||
</command>
|
||||
<file name="log/test1145.txt">
|
||||
foo
|
||||
bar
|
||||
bar
|
||||
foo
|
||||
moo
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# CURLE_URL_MALFORMAT is error code 3
|
||||
<errorcode>
|
||||
3
|
||||
</errorcode>
|
||||
</verify>
|
||||
</testcase>
|
||||
45
tests/data/test1146
Normal file
45
tests/data/test1146
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FILE
|
||||
--proto-default
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
foo
|
||||
bar
|
||||
bar
|
||||
foo
|
||||
moo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
file
|
||||
</server>
|
||||
<name>
|
||||
--proto-default file
|
||||
</name>
|
||||
<command>
|
||||
--proto-default file %PWD/log/test1146.txt
|
||||
</command>
|
||||
<file name="log/test1146.txt">
|
||||
foo
|
||||
bar
|
||||
bar
|
||||
foo
|
||||
moo
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<errorcode>
|
||||
0
|
||||
</errorcode>
|
||||
</verify>
|
||||
</testcase>
|
||||
|
|
@ -27,7 +27,7 @@ http
|
|||
lib1534
|
||||
</tool>
|
||||
<name>
|
||||
Test CURLINFO_RESPONSE_CODE
|
||||
CURLINFO_FILETIME init and reset
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1534
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue