From: Markus Valentin Date: Mon, 5 May 2025 07:38:33 +0000 (+0200) Subject: imap: imap-select: Disable SELECT UNSEEN response if IMAP4rev2 is enabled X-Git-Tag: 2.4.2~764 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=042d2a7c698c2dedb27d5271aec91c95d5345c19;p=thirdparty%2Fdovecot%2Fcore.git imap: imap-select: Disable SELECT UNSEEN response if IMAP4rev2 is enabled --- diff --git a/src/imap/cmd-select.c b/src/imap/cmd-select.c index 485edac4e0..418eb44156 100644 --- a/src/imap/cmd-select.c +++ b/src/imap/cmd-select.c @@ -312,15 +312,16 @@ select_open(struct imap_select_context *ctx, const char *mailbox, bool readonly) client_update_mailbox_flags(client, status.keywords); client_send_mailbox_flags(client, TRUE); + bool imap4rev2_enabled = (client_enabled_mailbox_features(client) & + MAILBOX_FEATURE_IMAP4REV2) != 0; client_send_line(client, t_strdup_printf("* %u EXISTS", status.messages)); - if ((client_enabled_mailbox_features(client) & - MAILBOX_FEATURE_IMAP4REV2) == 0) { + if (!imap4rev2_enabled) { client_send_line(client, t_strdup_printf("* %u RECENT", status.recent)); } - if (status.first_unseen_seq != 0) { + if (!imap4rev2_enabled && status.first_unseen_seq != 0) { client_send_line(client, t_strdup_printf("* OK [UNSEEN %u] First unseen.", status.first_unseen_seq));