Thunderbird does not always display ALERT messages
Categories
(MailNews Core :: Networking: IMAP, defect)
Tracking
(Not tracked)
People
(Reporter: mail, Unassigned)
Details
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
Steps to reproduce:
If the IMAP server sends ALERT messages, Thunderbird seems to ignore them in many cases.
To reproduce, the server sends an ALERT whenever the client issues a UID FETCH command. Only the first alert shows up. Subsequent alerts do not display. (Alerts are unique, using the tag to guarantee uniqueness).
This is filed against 102, but I looked at the current code that is likely relevant and it has not been modified in a long time, at least since version 52.
Actual results:
ALERT messages sent from the server are not displayed to the user. This is a violation of RFC 3501.
Expected results:
ALERT message should be displayed, whenever possible. In particular, note Section 7 of RFC 3501:
The client MUST be prepared to accept any response at all times.
Some status responses, and all server data, are untagged. An untagged response is indicated by the token "*" instead of a tag. Untagged status responses indicate server greeting, or server status that does not indicate the completion of a command (for example, an impending system shutdown alert).
ALERT
The human-readable text contains a special alert that MUST be
presented to the user in a fashion that calls the user's
attention to the message.
It's not clear why alerts received during an IDLE are not displayed, nor when other commands are executed.
Doing some testing, alerts are shown when the client executes the following commands, sometimes, but not other commands:
ID, GETQUOTAROOT, UID FETCH, SELECT, LIST, ENABLE, CAPABILITY, NAMESPACE, LSUB
Additionally, alerts seem to be getting ignored after some point. As a test, if I sent an ALERT on the first UID FETCH when logging in, it will display that alert. However, on subsequent UID FETCH commands, the alert does not appear, even though the alert message is different (per the code that ignores duplicate alerts). So something seems off.
Looking quickly at the code, it seems that [ALERT] may not be properly handled everywhere.
Updated•2 years ago
|
Description
•