[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