diff --git a/tests/data/command100.txt b/tests/data/command100.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a3a4452cce37611d179386ad09174380f72a0b0e
--- /dev/null
+++ b/tests/data/command100.txt
@@ -0,0 +1 @@
+ftp://%HOSTIP:%FTPPORT/
diff --git a/tests/data/command101.txt b/tests/data/command101.txt
new file mode 100644
index 0000000000000000000000000000000000000000..83e26f27ff961dd02fb79e47046dfc44b581e42a
--- /dev/null
+++ b/tests/data/command101.txt
@@ -0,0 +1,3 @@
+ftp://%HOSTIP:%FTPPORT/ -P %HOSTIP
+
+
diff --git a/tests/data/command102.txt b/tests/data/command102.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f3e870e6ec21a991addc9fe7ba22056c667a3bb7
--- /dev/null
+++ b/tests/data/command102.txt
@@ -0,0 +1 @@
+ftp://%HOSTIP:%FTPPORT/102
diff --git a/tests/data/command103.txt b/tests/data/command103.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3f327fd9ddcb704745eed9ee7fd7713a287d71ec
--- /dev/null
+++ b/tests/data/command103.txt
@@ -0,0 +1,4 @@
+ftp://%HOSTIP:%FTPPORT/a/path/103 -P -
+
+
+
diff --git a/tests/data/name100.txt b/tests/data/name100.txt
new file mode 100644
index 0000000000000000000000000000000000000000..148cedd73445b890f3e25cbcf31766eae4ff26c6
--- /dev/null
+++ b/tests/data/name100.txt
@@ -0,0 +1 @@
+FTP dir list PASV
diff --git a/tests/data/name101.txt b/tests/data/name101.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a15e892536ad9e7a526d832dc145bfdf44a23483
--- /dev/null
+++ b/tests/data/name101.txt
@@ -0,0 +1,2 @@
+FTP dir list, PORT with specified IP
+
diff --git a/tests/data/name102.txt b/tests/data/name102.txt
new file mode 100644
index 0000000000000000000000000000000000000000..87c1fe763c7a64f8987770a687ad3b451ae9814f
--- /dev/null
+++ b/tests/data/name102.txt
@@ -0,0 +1 @@
+FTP RETR PASV
diff --git a/tests/data/name103.txt b/tests/data/name103.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b6dff0fb4f74dcdd50f14e5d002229d3f797c12a
--- /dev/null
+++ b/tests/data/name103.txt
@@ -0,0 +1 @@
+FTP RETR PORT with CWD
diff --git a/tests/data/prot100.txt b/tests/data/prot100.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d7ce21977a7cc0814b5595e998e1464864ffc4aa
--- /dev/null
+++ b/tests/data/prot100.txt
@@ -0,0 +1,5 @@
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PASV
+TYPE A
+LIST
diff --git a/tests/data/prot101.txt b/tests/data/prot101.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7fd492d56e929a3a77321f19f7bbbbccda1d192d
--- /dev/null
+++ b/tests/data/prot101.txt
@@ -0,0 +1,5 @@
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PORT 127,0,0,1,243,212
+TYPE A
+LIST
diff --git a/tests/data/prot102.txt b/tests/data/prot102.txt
new file mode 100644
index 0000000000000000000000000000000000000000..373c189d2dc6e59a78fd7bb78f310bc485a02cdd
--- /dev/null
+++ b/tests/data/prot102.txt
@@ -0,0 +1,5 @@
+USER anonymous
+PASS curl_by_daniel@haxx.se
+PASV
+TYPE I
+RETR 102
diff --git a/tests/data/prot103.txt b/tests/data/prot103.txt
new file mode 100644
index 0000000000000000000000000000000000000000..42e857e42b40a1b35d27b50da2af0057e35f1d84
--- /dev/null
+++ b/tests/data/prot103.txt
@@ -0,0 +1,6 @@
+USER anonymous
+PASS curl_by_daniel@haxx.se
+CWD a/path/
+PORT 127,0,0,1,246,33
+TYPE I
+RETR 103
diff --git a/tests/data/reply100.txt b/tests/data/reply100.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1baaf9385e317ae18cade32bc49446e824fa2f65
--- /dev/null
+++ b/tests/data/reply100.txt
@@ -0,0 +1,11 @@
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
diff --git a/tests/data/reply101.txt b/tests/data/reply101.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1baaf9385e317ae18cade32bc49446e824fa2f65
--- /dev/null
+++ b/tests/data/reply101.txt
@@ -0,0 +1,11 @@
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
diff --git a/tests/data/reply102.txt b/tests/data/reply102.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0cfa203ddcc2fc5644dec65050aadd6cdef85738
--- /dev/null
+++ b/tests/data/reply102.txt
@@ -0,0 +1,6 @@
+data
+    to
+      see
+that FTP
+works
+  so does it?
diff --git a/tests/data/reply103.txt b/tests/data/reply103.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0cfa203ddcc2fc5644dec65050aadd6cdef85738
--- /dev/null
+++ b/tests/data/reply103.txt
@@ -0,0 +1,6 @@
+data
+    to
+      see
+that FTP
+works
+  so does it?