[horde] Bad or malformed request. Server Responded: Command unrecognized: LOGIN
Beth Halsema
bhalsema at purdue.edu
Tue Aug 4 13:44:02 UTC 2009
[NOTE: I have included the initial post, since it contained detailed
information regarding what we are seeing. ]
On Tue, 4 Aug 2009, Jan Schneider wrote:
>
> Zitat von Beth Halsema <bhalsema at purdue.edu>:
>
> >
> > While testing our installation of Horde Groupware Webmail Edition
> > (version 1.2.3), we ran into an understandable but undesirable
> > behavior. I am uncertain as to whether it should be considered a
> > bug, but I was hoping that I might find out:
> >
> > a) Whether others have experienced this scenario?
> > b) If so, how did they address it?
> > c) Whether I should be submitting a bug report?
> >
> > We are running the latest release of UW-IMAP. We are using the IMP
> > application to authenticate. We also use the IMAP host's native
> > account expiration. From the time that the expiration field is set
> > and excluding its final day, the status information displayed by IMP
> > (as provided by the IMAP server) is correct:
> >
> > Account expires in x days(s)!
> >
> > However, on the final day (the account has not yet expired), instead
> > of the alert being displayed,
> >
> > Account expires today!
> >
> > , the login attempt fails, and the following informational message is
> > provided on the Horde login page:
> >
> > Bad or malformed request. Server Responded: Command unrecognized: LOGIN
> >
> > I believe that this is due to the fact that the IMAP server returns
> > (untagged):
> >
> > * NO [ALERT] Account expires today!
> >
> > as opposed to:
> >
> > * OK [ALERT] Account expires in x day(s)!
> >
> > According to RFC 3501 Section 7.1.2 (NO Response), this is a recognized
> > response, indicating an operational errror from the server. The
> > command can and does complete successfully.
> >
> > http://www.rfc-editor.org/rfc/rfc3501.txt
>
> We have no influence on that. PHP uses the c-client for authentication
> at the IMAP server, which has been developed by the author of that RFC.
>
> Jan.
>
I understand c-client's part in the handling of the server response.
However, the inability to login is not due to a server problem, nor
c-client. The behavior appears to be due to the handling of the
response in the case statement found in the _runCommand() function
in the file
horde/imp/lib/IMAP/Client.php
Specifically, the handling of the NO response for untagged responses
doesn't appear to be consistent with the RFC.
Here is an excerpt from our logs:
-------------
Aug 3 16:38:20 HORDE[14505]: [imp] Could not complete request. Reason Given: [ALERT] Account expires today!: NO [pid 14505 on line 382 of "/opt/horde-webmail-1.2.3/imp/lib/IMAP/Client.php"]
Aug 3 16:38:20 HORDE[14505]: [imp] Bad or malformed request. Server Responded: Command unrecognized: LOGIN: BAD [pid 14505 on line 382 of "/opt/horde-webmail-1.2.3/imp/lib/IMAP/Client.php"]
Aug 3 16:38:20 HORDE[14505]: [imp] IMAP alerts: [ALERT] Account expires today! [pid 14505 on line 170 of "/opt/horde-webmail-1.2.3/imp/lib/IMAP.php"]
-------------
Thank you for any assistance you might be able to provide.
Beth
More information about the horde
mailing list