[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LSUB failure
From: |
Alain Magloire |
Subject: |
Re: LSUB failure |
Date: |
Tue, 2 Apr 2002 09:10:30 -0500 (EST) |
>
> > I can turn off lsub easy enough, but I'm wondering if we're doing the
> > right thing? I'm quite new to imap so please forgive errors. =)
>
> Imap4d LSUB returns OK response only if file named
> '.mailboxlist' exists in user's home directory. The file is
> supposed to keep user's subscriptions, one per line.
>
> > Evolution seems to not know how to subscribe to folders at all (so
> > won't even list the inbox) without this result being succesful.
> >
> > Who's bad behaviour is this?
>
> Well, RFC says that NO response must be returned on "lsub failure: can't
> list that reference or name". For imap4d, failure to open ~/.mailboxlist
> means that it is impossible to list any references, so it seems to
> comply with RFC.
What does the WU-imapd returns? I can not check unfortunately.
Probably many clients expect the "OK LSUB completed" response.
And "NO .." means some fatal error
> But I'd propose it to return OK if ~/.mailboxlist
> does not exist, this will make it coexist with programs that depend on
> LSUB returning success:
Sounds good.
Will it covers everything? Maybe a stat() == -1, util_finish(..., RESP_OK,..).
> Index: lsub.c
> ===================================================================
> RCS file: /cvsroot/mailutils/mailutils/imap4d/lsub.c,v
> retrieving revision 1.5
> diff -p -u -w -b -r1.5 lsub.c
> --- lsub.c 9 May 2001 04:23:52 -0000 1.5
> +++ lsub.c 2 Apr 2002 08:25:04 -0000
> @@ -60,5 +60,7 @@ imap4d_lsub (struct imap4d_command *comm
> fclose (fp);
> return util_finish (command, RESP_OK, "Completed");
> }
> + else if (errno == ENOENT)
> + return util_finish (command, RESP_OK, "Completed");
> return util_finish (command, RESP_NO, "Can not list subscriber");
> }
>