Browse Source

don't refuse to strip Path just because it's INBOX/

no ambiguity can result from this, so there is no reason to treat
sub-folders of INBOX differently from any other namespace.
wip/server-refactor
Oswald Buddenhagen 10 years ago
parent
commit
d8225390fc
  1. 3
      NEWS
  2. 18
      src/drv_imap.c

3
NEWS

@ -2,6 +2,9 @@
The 'isync' compatibility wrapper is now deprecated. The 'isync' compatibility wrapper is now deprecated.
An IMAP Path/NAMESPACE rooted in INBOX won't be handled specially any more.
This means that some Patterns may need adjustment.
The SSL/TLS configuration has been re-designed. The SSL/TLS configuration has been re-designed.
SSL is now explicitly enabled or disabled - "use SSL if available" is gone. SSL is now explicitly enabled or disabled - "use SSL if available" is gone.
Notice: Tunnels are assumed to be secure and thus default to no SSL. Notice: Tunnels are assumed to be secure and thus default to no SSL.

18
src/drv_imap.c

@ -1149,14 +1149,16 @@ parse_list_rsp_p2( imap_store_t *ctx, list_t *list, char *cmd ATTR_UNUSED )
} }
arg = list->val; arg = list->val;
argl = list->len; argl = list->len;
if (!is_inbox( ctx, arg, argl ) && (l = strlen( ctx->prefix ))) { if ((l = strlen( ctx->prefix ))) {
if (!starts_with( arg, argl, ctx->prefix, l )) if (starts_with( arg, argl, ctx->prefix, l )) {
goto skip; arg += l;
arg += l; argl -= l;
argl -= l; if (is_inbox( ctx, arg, argl )) {
if (is_inbox( ctx, arg, argl )) { if (!arg[5])
if (!arg[5]) warn( "IMAP warning: ignoring INBOX in %s\n", ctx->prefix );
warn( "IMAP warning: ignoring INBOX in %s\n", ctx->prefix ); goto skip;
}
} else if (!is_inbox( ctx, arg, argl )) {
goto skip; goto skip;
} }
} }

Loading…
Cancel
Save