ftpserver.pl: Fixed processing of POP3 authentication strings

...and corrected response when check fails from 500 to -ERR.
This commit is contained in:
Steve Holme 2013-10-19 20:39:18 +01:00
parent 39f4e4fafa
commit 5b31b38c27

View File

@ -3049,6 +3049,7 @@ while(1) {
sendcontrol "$1 '$full': command not understood.\r\n";
last;
}
$cmdid=$1; # set the global variable
$FTPCMD=$2;
$FTPARG=$3;
@ -3057,6 +3058,16 @@ while(1) {
$FTPCMD=$1;
$FTPARG=$3;
}
elsif($proto eq "pop3") {
# POP3 long "commands" are base64 authentication data
unless($full =~ /^[A-Z0-9+\/]+={0,2}$/i)) {
sendcontrol "-ERR '$full': command not understood.\r\n";
last;
}
$FTPCMD=$full;
$FTPARG="";
}
elsif(($proto eq "smtp") && ($full =~ /^[A-Z0-9+\/]{0,512}={0,2}$/i)) {
# SMTP long "commands" are base64 authentication data.
$FTPCMD=$full;