From eae86ba62dadecc8fc9ef7ae4fc5f3a8439496e9 Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Sun, 15 Sep 2013 09:06:18 +0100 Subject: [PATCH] ftpserver.pl: Added support for SMTP HELO command ...and updated test902 as explicit HELO response is no longer required. --- tests/data/test902 | 1 - tests/ftpserver.pl | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/tests/data/test902 b/tests/data/test902 index 4da1b99..c61ab93 100644 --- a/tests/data/test902 +++ b/tests/data/test902 @@ -12,7 +12,6 @@ RFC821 REPLY EHLO 500 Command unrecognized -REPLY HELO 250 Already old but still servicing... diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index c1df824..15d00f0 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -623,6 +623,7 @@ sub protocolsetup { elsif($proto eq 'smtp') { %commandfunc = ( 'DATA' => \&DATA_smtp, + 'HELO' => \&HELO_smtp, 'RCPT' => \&RCPT_smtp, ); %displaytext = ( @@ -772,6 +773,20 @@ sub RCPT_smtp { $smtp_rcpt = $args; } +sub HELO_smtp { + my ($client) = @_; + + # TODO: Get the IP address of the client connection to use in the HELO + # response when the client doesn't specify one but for now use 127.0.0.1 + if (!$client) { + $client = "[127.0.0.1]"; + } + + sendcontrol "250 SMTP pingpong test server Hello $client\r\n"; + + return 0; +} + # What was deleted by IMAP STORE / POP3 DELE commands my @deleted; -- 2.7.4