diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index ac625474c5..bcb33bd2b6 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -5,9 +5,11 @@ test:
[ -f test1 ] || ln -s $(srcdir)/test* .
EXTRA_DIST = \
-test1 test104 test11 test15 test20 test23 test33 test6 \
-test10 test105 test110 test16 test200 test24 test4 test7 \
-test100 test106 test111 test17 test201 test25 test400 test8 \
-test101 test107 test12 test18 test202 test26 test43 test9 \
-test102 test108 test13 test19 test21 test3 test44 \
-test103 test109 test14 test2 test22 test300 test5
+test1 test106 test113 test120 test15 test201 test3 test6 \
+test10 test107 test114 test121 test16 test202 test300 test7 \
+test100 test108 test115 test122 test17 test21 test33 test8 \
+test101 test109 test116 test123 test18 test22 test4 test9 \
+test102 test11 test117 test124 test19 test23 test400 \
+test103 test110 test118 test125 test2 test24 test43 \
+test104 test111 test119 test13 test20 test25 test44 \
+test105 test112 test12 test14 test200 test26 test5
diff --git a/tests/data/test112 b/tests/data/test112
new file mode 100644
index 0000000000..712a16cec4
--- /dev/null
+++ b/tests/data/test112
@@ -0,0 +1,37 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP PASV upload resume
+
+
+ftp://%HOSTIP:%FTPPORT/112 -T log/upload112 -C 40
+
+
+this is the *****crap******** that we're gonna upload
+
+worx?
+
+
+
+# Verify data after the test has been "shot"
+
+
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+APPE 112
+
+
+ gonna upload
+
+worx?
+
+
diff --git a/tests/data/test113 b/tests/data/test113
new file mode 100644
index 0000000000..5dcc6afaf1
--- /dev/null
+++ b/tests/data/test113
@@ -0,0 +1,26 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed login: USER not valid
+
+
+ftp://%HOSTIP:%FTPPORT/113
+
+
+REPLY USER 314 bluah you fewl!
+
+
+
+# Verify data after the test has been "shot"
+
+
+12
+
+
+USER anonymous
+
+
diff --git a/tests/data/test114 b/tests/data/test114
new file mode 100644
index 0000000000..52f4378b21
--- /dev/null
+++ b/tests/data/test114
@@ -0,0 +1,27 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed login: PASS not valid
+
+
+ftp://%HOSTIP:%FTPPORT/114
+
+
+REPLY PASS 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+11
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+
+
diff --git a/tests/data/test115 b/tests/data/test115
new file mode 100644
index 0000000000..a480f91179
--- /dev/null
+++ b/tests/data/test115
@@ -0,0 +1,29 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed PASV
+
+
+ftp://%HOSTIP:%FTPPORT/115
+
+
+REPLY PASV 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+13
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+
+
diff --git a/tests/data/test116 b/tests/data/test116
new file mode 100644
index 0000000000..690fd8b3d4
--- /dev/null
+++ b/tests/data/test116
@@ -0,0 +1,31 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed PORT
+
+
+ftp://%HOSTIP:%FTPPORT/116 -P 127.0.0.1
+
+
+REPLY PORT 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+30
+
+
+^PORT 127,0,0,1,.*
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+
+
diff --git a/tests/data/test117 b/tests/data/test117
new file mode 100644
index 0000000000..617fc9149f
--- /dev/null
+++ b/tests/data/test117
@@ -0,0 +1,30 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed TYPE
+
+
+ftp://%HOSTIP:%FTPPORT/117
+
+
+REPLY TYPE 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+17
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+
+
diff --git a/tests/data/test118 b/tests/data/test118
new file mode 100644
index 0000000000..42dca01dbe
--- /dev/null
+++ b/tests/data/test118
@@ -0,0 +1,31 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed RETR
+
+
+ftp://%HOSTIP:%FTPPORT/118
+
+
+REPLY RETR 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+19
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+RETR 118
+
+
diff --git a/tests/data/test119 b/tests/data/test119
new file mode 100644
index 0000000000..6c49532731
--- /dev/null
+++ b/tests/data/test119
@@ -0,0 +1,33 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed RETR with PORT
+
+
+ftp://%HOSTIP:%FTPPORT/119 -P -
+
+
+REPLY RETR 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+19
+
+
+^PORT.*
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+TYPE I
+RETR 119
+
+
diff --git a/tests/data/test120 b/tests/data/test120
new file mode 100644
index 0000000000..095d03bd1d
--- /dev/null
+++ b/tests/data/test120
@@ -0,0 +1,34 @@
+# Server-side
+
+
+data
+ to
+ see
+that FTP
+works
+ so does it?
+
+
+
+# Client-side
+
+
+ftp download with post-quote delete operation
+
+
+ftp://%HOSTIP:%FTPPORT/120 -Q "-DELE file"
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+RETR 120
+DELE file
+
+
diff --git a/tests/data/test121 b/tests/data/test121
new file mode 100644
index 0000000000..3ac985c6aa
--- /dev/null
+++ b/tests/data/test121
@@ -0,0 +1,35 @@
+# Server-side
+
+
+data
+ to
+ see
+that FTP
+works
+ so does it?
+
+
+
+# Client-side
+
+
+ftp download with post- and pre-transfer delete operations
+
+
+ftp://%HOSTIP:%FTPPORT/121 -Q "-DELE after_transfer" -Q "DELE before_transfer"
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+DELE before_transfer
+PASV
+TYPE I
+RETR 121
+DELE after_transfer
+
+
diff --git a/tests/data/test122 b/tests/data/test122
new file mode 100644
index 0000000000..b9990d9822
--- /dev/null
+++ b/tests/data/test122
@@ -0,0 +1,28 @@
+# Server-side
+
+
+5
+
+
+
+# Client-side
+
+
+FTP download resume with whole file already downloaded
+
+
+ftp://%HOSTIP:%FTPPORT/122 -C 5
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+SIZE 122
+
+
diff --git a/tests/data/test123 b/tests/data/test123
new file mode 100644
index 0000000000..c2e81646c5
--- /dev/null
+++ b/tests/data/test123
@@ -0,0 +1,27 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP upload resume with whole file already downloaded
+
+
+ftp://%HOSTIP:%FTPPORT/123 -T log/upload123 -C 51
+
+
+--------------------------------------------------
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+
+
diff --git a/tests/data/test124 b/tests/data/test124
new file mode 100644
index 0000000000..106291fd46
--- /dev/null
+++ b/tests/data/test124
@@ -0,0 +1,31 @@
+# Server-side
+
+
+we can still send data even if pwd fails!
+
+
+
+# Client-side
+
+
+FTP download, failed PWD
+
+
+ftp://%HOSTIP:%FTPPORT/124
+
+
+REPLY PWD 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+PASV
+TYPE I
+RETR 124
+
+
diff --git a/tests/data/test125 b/tests/data/test125
new file mode 100644
index 0000000000..7581d6e8e5
--- /dev/null
+++ b/tests/data/test125
@@ -0,0 +1,29 @@
+# Server-side
+
+
+
+# Client-side
+
+
+FTP download, failed CWD
+
+
+ftp://%HOSTIP:%FTPPORT/path/to/file/125
+
+
+REPLY CWD 314 bluah you f00l!
+
+
+
+# Verify data after the test has been "shot"
+
+
+9
+
+
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PWD
+CWD path/to/file
+
+