diff options
author | Daniel Stenberg <daniel@haxx.se> | 2018-08-13 12:12:14 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-08-13 23:16:01 +0200 |
commit | 8440616f53056b2330393d1b0740c89a30376c67 (patch) | |
tree | ea2ea2300488f3c792ff7cf2a86e5047a3814e2f /tests/data | |
parent | 233908a55aa041d1ad3d901f9c3b8e3b1ebd3d55 (diff) |
http: fix for tiny "HTTP/0.9" response
Deal with tiny "HTTP/0.9" (header-less) responses by checking the
status-line early, even before a full "HTTP/" is received to allow
detecting 0.9 properly.
Test 1266 and 1267 added to verify.
Fixes #2420
Closes #2872
Diffstat (limited to 'tests/data')
-rw-r--r-- | tests/data/Makefile.inc | 2 | ||||
-rw-r--r-- | tests/data/test1266 | 46 | ||||
-rw-r--r-- | tests/data/test1267 | 46 |
3 files changed, 93 insertions, 1 deletions
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc index 66d86a6cd..20274b37c 100644 --- a/tests/data/Makefile.inc +++ b/tests/data/Makefile.inc @@ -139,7 +139,7 @@ test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \ test1236 test1237 test1238 test1239 test1240 test1241 test1242 test1243 \ test1244 test1245 test1246 test1247 test1248 test1249 test1250 test1251 \ test1252 test1253 test1254 test1255 test1256 test1257 test1258 test1259 \ -test1260 test1261 test1262 test1263 test1264 test1265 \ +test1260 test1261 test1262 test1263 test1264 test1265 test1266 test1267 \ \ test1280 test1281 test1282 test1283 test1284 test1285 test1286 test1287 \ test1288 test1289 test1290 test1291 test1292 \ diff --git a/tests/data/test1266 b/tests/data/test1266 new file mode 100644 index 000000000..75ed7bdc9 --- /dev/null +++ b/tests/data/test1266 @@ -0,0 +1,46 @@ +<testcase> +<info> +<keywords> +HTTP/0.9 +</keywords> +</info> + +# +# Server-side +<reply> +<data> +o +</data> +<servercmd> +swsclose +</servercmd> +</reply> + +# +# Client-side +<client> +<server> +http +</server> + <name> +HTTP GET with a single-byte HTTP/0.9 response + </name> + <command> +http://%HOSTIP:%HTTPPORT/1266 +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /1266 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +</verify> +</testcase> diff --git a/tests/data/test1267 b/tests/data/test1267 new file mode 100644 index 000000000..8f2a63b78 --- /dev/null +++ b/tests/data/test1267 @@ -0,0 +1,46 @@ +<testcase> +<info> +<keywords> +HTTP/0.9 +</keywords> +</info> + +# +# Server-side +<reply> +<data> +HTTPr +</data> +<servercmd> +swsclose +</servercmd> +</reply> + +# +# Client-side +<client> +<server> +http +</server> + <name> +HTTP GET with a invalid HTTP/1 response line start + </name> + <command> +http://%HOSTIP:%HTTPPORT/1267 +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /1267 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +</verify> +</testcase> |