Testsuite: Provide '>>> ' for script input to allow binary data (take 2)
[users/heiko/exim.git] / test / README
index 36cdd6984eccd70525aafce3bd196492b4b14051..7a852ee43ed074956c17ae8eb81f3f6b3fd2c5d7 100644 (file)
@@ -517,6 +517,9 @@ bin/client-ssl     A script-driven SMTP client simulation with OpenSSL support.
                    This is built only if OpenSSL support is detected on the
                    host.
 
+bin/client-anytls  A symlink to either client-ssl or client-gnutls, if
+                   any is built.
+
 bin/fakens         A fake "nameserver" for DNS tests (see below for details).
 
 bin/fd             A program that outputs details of open file descriptors.
@@ -859,6 +862,16 @@ The remaining commands are followed by data lines for their standard input,
 terminated by four asterisks. Even if no data is required for the particular
 usage, the asterisks must be given.
 
+If the input line starts with '>>> ', this prefix and any trailing spaces
+(including line feed) are removed. The reminder is processed with Perl's
+string eval() function, effectivly evaluatiing escape sequences like
+'\x41', or '\r'.  If you need a line feed there, you need to encode it
+according to your needs.
+
+If the input line starts with '\>>> ', the backslash is removed and the
+rest of the line is passed as input. This is used by the client tool,
+which understands the '>>> ' prefix for similar processing.
+
 
   background
 
@@ -873,7 +886,6 @@ except that the data it generates is copied to the end of the test-stdout file
 as well as to the named file.
 
 
-
   client [<options>] <ip address> <port> [<outgoing interface>]
 
 This command runs the auxiliary "client" program that simulates an SMTP client.
@@ -1044,10 +1056,13 @@ Lines in client scripts are of several kinds:
 
 (5) If a line begins with three '>' characters and a space, the rest of the
     line is input to be sent to the server.  Backslash escaping is done as
-    described below, but no trailing "\r\n" is sent.
+    described below, but no trailing "\r\n" is sent. As the runtest's 
+    input processing catches the '>>> ' for its string eval, you may
+    want to escape from this first stage processing by prefixing your
+    line with '\'.
 
 (6) If a line begin with three '<' characters and a space, the rest of the
-    line is a filename; the content of the file is inserted intto the script
+    line is a filename; the content of the file is inserted into the script
     at this point.
 
 (7) Otherwise, the line is an input line line that is sent to the server. Any