diff --git a/tests/data/DISABLED b/tests/data/DISABLED
index 5a0f2bf95d..310f3e9d29 100644
--- a/tests/data/DISABLED
+++ b/tests/data/DISABLED
@@ -5,3 +5,4 @@
594
1209
1211
+1355
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index c6d8d04322..44fcb3f6ef 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -85,7 +85,8 @@ test1314 test1315 test1316 test1317 test1318 test1319 test1320 test1321 \
test1322 test1323 test1324 test1325 test1326 test1327 test1328 test1329 \
test1331 test1332 test1333 test1334 test1335 test1336 test1337 test1338 \
test1339 test1340 test1341 test1342 test1343 test1344 test1345 test1346 \
-test1347 \
+test1347 test1348 test1349 test1350 test1351 test1352 test1353 test1354 \
+test1355 \
test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 \
test2000 test2001 test2002 test2003 test2004
diff --git a/tests/data/test1348 b/tests/data/test1348
new file mode 100644
index 0000000000..e6329b8390
--- /dev/null
+++ b/tests/data/test1348
@@ -0,0 +1,67 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without Content-Disposition inside, using -O
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1348 -O
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1348
+RETR file1348
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/data/test1349 b/tests/data/test1349
new file mode 100644
index 0000000000..6a3eb565a0
--- /dev/null
+++ b/tests/data/test1349
@@ -0,0 +1,84 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -D file
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1349 -O -D log/heads1349
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1349
+RETR file1349
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1349 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/data/test1350 b/tests/data/test1350
new file mode 100644
index 0000000000..a85ed6014b
--- /dev/null
+++ b/tests/data/test1350
@@ -0,0 +1,84 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -D stdout
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1350 -O -D -
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1350
+RETR file1350
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1350 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+
diff --git a/tests/data/test1351 b/tests/data/test1351
new file mode 100644
index 0000000000..b1b4719901
--- /dev/null
+++ b/tests/data/test1351
@@ -0,0 +1,85 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -J -D file
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1351 -O -J -D log/heads1351
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1351
+RETR file1351
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1351 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+curl: Saved to filename '%PWD/log/file1351'
+
+
+
+
+
+
+
diff --git a/tests/data/test1352 b/tests/data/test1352
new file mode 100644
index 0000000000..2de2754e29
--- /dev/null
+++ b/tests/data/test1352
@@ -0,0 +1,85 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -J -D stdout
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1352 -O -J -D -
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1352
+RETR file1352
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1352 () (10 bytes).
+226 File transfer complete
+curl: Saved to filename '%PWD/log/file1352'
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+
diff --git a/tests/data/test1353 b/tests/data/test1353
new file mode 100644
index 0000000000..fd4544107a
--- /dev/null
+++ b/tests/data/test1353
@@ -0,0 +1,84 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -i -D file
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1353 -O -i -D log/heads1353
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1353
+RETR file1353
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1353 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/data/test1354 b/tests/data/test1354
new file mode 100644
index 0000000000..5d90b395cd
--- /dev/null
+++ b/tests/data/test1354
@@ -0,0 +1,84 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -i -D stdout
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1354 -O -i -D -
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1354
+RETR file1354
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1354 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+
diff --git a/tests/data/test1355 b/tests/data/test1355
new file mode 100644
index 0000000000..da0878ce7e
--- /dev/null
+++ b/tests/data/test1355
@@ -0,0 +1,84 @@
+
+
+
+FTP
+RETR
+
+
+
+# Server-side
+
+
+fooo
+mooo
+
+
+
+# Client-side
+
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+
+debug
+
+
+ftp
+
+
+FTP download file without C-D inside, using -O -i, without -D
+
+
+CURL_TESTDIR=%PWD/log
+
+
+ftp://%HOSTIP:%FTPPORT/path/file1355 -O -i
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD path
+EPSV
+TYPE I
+SIZE file1355
+RETR file1355
+QUIT
+
+
+
+fooo
+mooo
+
+
+
+
+
+
+220- _ _ ____ _
+220- ___| | | | _ \| |
+220- / __| | | | |_) | |
+220- | (__| |_| | _ <| |___
+220 \___|\___/|_| \_\_____|
+331 We are happy you popped in!
+230 Welcome you silly person
+257 "/" is current directory
+250 CWD command successful.
+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted
+213 10
+150 Binary data connection for 1355 () (10 bytes).
+226 File transfer complete
+
+
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+
+
+
+
+
+
+