http://%HOSTIP:%HTTPPORT/%TESTNUMBER --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@%LOGDIR/%TESTNUMBER.txt" --data-urlencode @%LOGDIR/%TESTNUMBER.txt
</command>
<file name="%LOGDIR/%TESTNUMBER.txt">
-content to _?!#$'|<>
+content to _?!#$'|%LT%GT
</file>
</client>
body
</stdin>
<command>
-smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"'
+smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"'
</command>
</client>
</strippart>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
http://%HOSTIP:%HTTPPORT/%TESTNUMBER --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@%LOGDIR/%TESTNUMBER.txt" --url-query @%LOGDIR/%TESTNUMBER.txt --url-query "+%3d%3d" --data-urlencode "start=once upon the time"
</command>
<file name="%LOGDIR/%TESTNUMBER.txt">
-content to _?!#$'|<>
+content to _?!#$'|%LT%GT
</file>
</client>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com> SIZE=38
-RCPT TO:<recipient.one@example.com>
-RCPT TO:<recipient.two@example.com>
+MAIL FROM:%LTsender@example.com%GT SIZE=38
+RCPT TO:%LTrecipient.one@example.com%GT
+RCPT TO:%LTrecipient.two@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<%TESTNUMBER-realuser@example.com>
-RCPT TO:<%TESTNUMBER-recipient@example.com>
+MAIL FROM:%LT%TESTNUMBER-realuser@example.com%GT
+RCPT TO:%LT%TESTNUMBER-recipient@example.com%GT
DATA
</protocol>
<upload>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<invalid.one>
-RCPT TO:<recipient.two@example.com>
-RCPT TO:<recipient.three@example.com>
-RCPT TO:<recipient.four@example.com>
-RCPT TO:<recipient.five@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTinvalid.one%GT
+RCPT TO:%LTrecipient.two@example.com%GT
+RCPT TO:%LTrecipient.three@example.com%GT
+RCPT TO:%LTrecipient.four@example.com%GT
+RCPT TO:%LTrecipient.five@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient.one@example.com>
-RCPT TO:<recipient.two@example.com>
-RCPT TO:<recipient.three@example.com>
-RCPT TO:<recipient.four@example.com>
-RCPT TO:<invalid.five>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient.one@example.com%GT
+RCPT TO:%LTrecipient.two@example.com%GT
+RCPT TO:%LTrecipient.three@example.com%GT
+RCPT TO:%LTrecipient.four@example.com%GT
+RCPT TO:%LTinvalid.five%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient.one@example.com>
-RCPT TO:<recipient.two@example.com>
-RCPT TO:<invalid.three>
-RCPT TO:<recipient.four@example.com>
-RCPT TO:<recipient.five@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient.one@example.com%GT
+RCPT TO:%LTrecipient.two@example.com%GT
+RCPT TO:%LTinvalid.three%GT
+RCPT TO:%LTrecipient.four@example.com%GT
+RCPT TO:%LTrecipient.five@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<invalid.one>
-RCPT TO:<recipient.two@example.com>
-RCPT TO:<invalid.three>
-RCPT TO:<invalid.four>
-RCPT TO:<invalid.five>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTinvalid.one%GT
+RCPT TO:%LTrecipient.two@example.com%GT
+RCPT TO:%LTinvalid.three%GT
+RCPT TO:%LTinvalid.four%GT
+RCPT TO:%LTinvalid.five%GT
DATA
QUIT
</protocol>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<invalid.one>
-RCPT TO:<invalid.two>
-RCPT TO:<invalid.three>
-RCPT TO:<invalid.four>
-RCPT TO:<invalid.five>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTinvalid.one%GT
+RCPT TO:%LTinvalid.two%GT
+RCPT TO:%LTinvalid.three%GT
+RCPT TO:%LTinvalid.four%GT
+RCPT TO:%LTinvalid.five%GT
QUIT
</protocol>
</verify>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<invalid.one>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTinvalid.one%GT
QUIT
</protocol>
</verify>
</command>
<file name="%LOGDIR/upload%TESTNUMBER">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
</protocol>
<upload>
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
</command>
<file name="%LOGDIR/upload%TESTNUMBER">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
</protocol>
<upload>
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
body
</stdin>
<command>
-smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt "<recipient@example.com> NOTIFY=SUCCESS,FAILURE" --mail-from "<sender@example.com> RET=HDRS" -T -
+smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt "%LTrecipient@example.com%GT NOTIFY=SUCCESS,FAILURE" --mail-from "%LTsender@example.com%GT RET=HDRS" -T -
</command>
</client>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com> RET=HDRS
-RCPT TO:<recipient@example.com> NOTIFY=SUCCESS,FAILURE
+MAIL FROM:%LTsender@example.com%GT RET=HDRS
+RCPT TO:%LTrecipient@example.com%GT NOTIFY=SUCCESS,FAILURE
DATA
QUIT
</protocol>
-F "=@%LOGDIR/test%TESTNUMBER.txt;headers=<%LOGDIR/headers%TESTNUMBER"
-H "From: different"
-H "To: another"
--H "Reply-To: <followup@example.com>"
+-H "Reply-To: %LTfollowup@example.com%GT"
</command>
<file1 name="%LOGDIR/test%TESTNUMBER.txt">
This is an attached file.
</strippart>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
Mime-Version: 1.0%CR
From: different%CR
To: another%CR
-Reply-To: <followup@example.com>%CR
+Reply-To: %LTfollowup@example.com%GT%CR
%CR
------------------------------%CR
Content-Type: multipart/alternative; boundary=----------------------------%CR
-F "=)"
-F "=@%LOGDIR/test%TESTNUMBER.txt"
-H "Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)"
--H "From: Fred Foobar <foobar@example.com>"
+-H "From: Fred Foobar %LTfoobar@example.com%GT"
-H "To: joe@example.com"
--H "Message-Id: <B27397-0100000@example.com>"
+-H "Message-Id: %LTB27397-0100000@example.com%GT"
-H "Subject: afternoon meeting"
-u user:secret
</command>
Content-Type: multipart/mixed; boundary=----------------------------%CR
Mime-Version: 1.0%CR
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)%CR
-From: Fred Foobar <foobar@example.com>%CR
+From: Fred Foobar %LTfoobar@example.com%GT%CR
To: joe@example.com%CR
-Message-Id: <B27397-0100000@example.com>%CR
+Message-Id: %LTB27397-0100000@example.com%GT%CR
Subject: afternoon meeting%CR
%CR
------------------------------%CR
</strippart>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
</protocol>
<errorcode>
</strippart>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<somebody@example.com>
-RCPT TO:<someone@example.com>
+MAIL FROM:%LTsomebody@example.com%GT
+RCPT TO:%LTsomeone@example.com%GT
DATA
QUIT
</protocol>
</command>
<file name="%LOGDIR/upload%TESTNUMBER" crlf="yes">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
</protocol>
<upload crlf="yes">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
<reply>
<servercmd>
CAPA APOP
-REPLY welcome +OK curl POP3 server ready to serve <1972.987654321\@curl>
+REPLY welcome +OK curl POP3 server ready to serve %LT1972.987654321\@curl%GT
</servercmd>
<data crlf="yes">
From: me@somewhere
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
HELO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH PLAIN
AHVzZXIAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
AUTH LOGIN
dXNlcg==
c2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH CRAM-MD5
dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg==
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
AUTH NTLM
TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
AUTH DIGEST-MD5
dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJzbXRwLzEyNy4wLjAuMSIscmVzcG9uc2U9YTI3YzQzOTVmMzM4Njc0M2JlMTIyMDdiN2QxMTIxYzUscW9wPWF1dGg=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH XOAUTH2
dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com> SIZE=38
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT SIZE=38
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com> SIZE=38
+MAIL FROM:%LTsender@example.com%GT SIZE=38
QUIT
</protocol>
</verify>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<invalid>
+MAIL FROM:%LTinvalid%GT
QUIT
</protocol>
</verify>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LT%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<invalid>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTinvalid%GT
QUIT
</protocol>
</verify>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient.one@example.com>
-RCPT TO:<recipient.two@example.com>
-RCPT TO:<recipient.three@example.com>
-RCPT TO:<recipient.four@example.com>
-RCPT TO:<recipient.five@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient.one@example.com%GT
+RCPT TO:%LTrecipient.two@example.com%GT
+RCPT TO:%LTrecipient.three@example.com%GT
+RCPT TO:%LTrecipient.four@example.com%GT
+RCPT TO:%LTrecipient.five@example.com%GT
DATA
QUIT
</protocol>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient.one@example.com>
-RCPT TO:<invalid>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient.one@example.com%GT
+RCPT TO:%LTinvalid%GT
QUIT
</protocol>
</verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
AUTH PLAIN AHVzZXIAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH LOGIN dXNlcg==
c2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<reply>
<data crlf="yes">
553-Ambiguous; Possibilities are:
-553-Joe Smith <joe.smith@example.com>
-553-Harry Smith <harry.smith@example.com>
-553 Melvin Smith <melvin.smith@example.com>
+553-Joe Smith %LTjoe.smith@example.com%GT
+553-Harry Smith %LTharry.smith@example.com%GT
+553 Melvin Smith %LTmelvin.smith@example.com%GT
</data>
</reply>
# Server-side
<reply>
<data crlf="yes">
-250-Joe Smith <joe.smith@example.com>
-250-Harry Smith <harry.smith@example.com>
-250 Melvin Smith <melvin.smith@example.com>
+250-Joe Smith %LTjoe.smith@example.com%GT
+250-Harry Smith %LTharry.smith@example.com%GT
+250 Melvin Smith %LTmelvin.smith@example.com%GT
</data>
</reply>
*
AUTH PLAIN
AHVzZXIAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
*
AUTH PLAIN
AHVzZXIAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
*
AUTH PLAIN
AHVzZXIAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER001
AUTH PLAIN
dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
EHLO %TESTNUMBER002
AUTH PLAIN
dXNlci50d28AdXNlci50d28Ac2VjcmV0
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
HELO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH EXTERNAL
dXNlcg==
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH EXTERNAL
=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
AUTH EXTERNAL dXNlcg==
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
AUTH EXTERNAL =
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH OAUTHBEARER
%b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64%
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<protocol crlf="yes">
EHLO %TESTNUMBER
AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64%
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
# Server-side
<reply>
<data crlf="yes">
-250 <recipient@example.com>
+250 %LTrecipient@example.com%GT
</data>
</reply>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH PLAIN
dXJzZWwAa3VydAB4aXBqM3BsbXE=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<Avs%hex[%c3%a4]hex%ndaren@example.com>
+MAIL FROM:%LTAvs%hex[%c3%a4]hex%ndaren@example.com%GT
QUIT
</protocol>
</verify>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<St%hex[%c3%b6]hex%dmottagaren@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTSt%hex[%c3%b6]hex%dmottagaren@example.com%GT
QUIT
</protocol>
</verify>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@%hex[%c3%a5%c3%a4%c3%b6]hex%.se>
+MAIL FROM:%LTsender@%hex[%c3%a5%c3%a4%c3%b6]hex%.se%GT
QUIT
</protocol>
</verify>
</errorcode>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@%hex[%c3%a5%c3%a4%c3%b6]hex%.se>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@%hex[%c3%a5%c3%a4%c3%b6]hex%.se%GT
QUIT
</protocol>
</verify>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@xn--4cab6c.se>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@xn--4cab6c.se%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@xn--4cab6c.se>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@xn--4cab6c.se%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<Avs%hex[%c3%a4]hex%ndaren@xn--4cab6c.se> SMTPUTF8
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTAvs%hex[%c3%a4]hex%ndaren@xn--4cab6c.se%GT SMTPUTF8
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com> SMTPUTF8
-RCPT TO:<St%hex[%c3%b6]hex%dmottagaren@xn--4cab6c.se>
+MAIL FROM:%LTsender@example.com%GT SMTPUTF8
+RCPT TO:%LTSt%hex[%c3%b6]hex%dmottagaren@xn--4cab6c.se%GT
DATA
QUIT
</protocol>
CAPA SMTPUTF8
</servercmd>
<data crlf="yes">
-250-Joe Smith <joe.smith@example.com>
-250-Harry Smith <harry.smith@example.com>
-250 Melvin Smith <melvin.smith@example.com>
+250-Joe Smith %LTjoe.smith@example.com%GT
+250-Harry Smith %LTharry.smith@example.com%GT
+250 Melvin Smith %LTmelvin.smith@example.com%GT
</data>
</reply>
</command>
<file name="%LOGDIR/upload%TESTNUMBER">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
</command>
<file name="%LOGDIR/upload%TESTNUMBER">
Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
-From: Fred Foobar <foobar@example.COM>
+From: Fred Foobar %LTfoobar@example.COM%GT
Subject: afternoon meeting
To: joe@example.com
-Message-Id: <B27397-0100000@example.COM>
+Message-Id: %LTB27397-0100000@example.COM%GT
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
<verify>
<protocol crlf="yes">
EHLO %TESTNUMBER
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
EHLO %TESTNUMBER
AUTH XOAUTH2
dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
+MAIL FROM:%LTsender@example.com%GT
+RCPT TO:%LTrecipient@example.com%GT
DATA
QUIT
</protocol>
$$thing =~ s/%SP/ /g; # space
$$thing =~ s/%TAB/\t/g; # horizontal tab
$$thing =~ s/%CR/\r/g; # carriage return aka \r aka 0x0d
+ $$thing =~ s/%LT/</g;
+ $$thing =~ s/%GT/>/g;
# include a file
$$thing =~ s/%include ([^%]*)%[\n\r]+/includefile($1, 0)/ge;