diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2016-03-03 22:28:46 +0100 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2016-03-03 22:28:46 +0100 |
commit | 48ddc7416f1934b6569ada559c3473de6cf6e4b8 (patch) | |
tree | 499bc898beeb091cb6b1bf4e91956345a5fa605e /lib/Net/IMAP | |
parent | 91eb4650581ac424cc7153ed6dc47be6563182f4 (diff) |
Relax parsing of continuation requests for for empty resp-text.
microsoft's IMAP server violates RFC 3501 by skipping the trailing space
for empty resp-text.
Diffstat (limited to 'lib/Net/IMAP')
-rw-r--r-- | lib/Net/IMAP/InterIMAP.pm | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Net/IMAP/InterIMAP.pm b/lib/Net/IMAP/InterIMAP.pm index 0405794..745e64f 100644 --- a/lib/Net/IMAP/InterIMAP.pm +++ b/lib/Net/IMAP/InterIMAP.pm @@ -2249,7 +2249,8 @@ sub _resp($$;$$$) { } } } - elsif (s/\A\+ //) { + elsif (s/\A\+// and ($_ eq '' or s/\A //)) { + # microsoft's IMAP server violates RFC 3501 by skipping the trailing ' ' for empty resp-text if (defined $callback and $cmd eq 'AUTHENTICATE') { my $x = $callback->($_); $self->_cmd_extend(\$x); |