Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IMAP PERMANENTFLAGS is optional #4667

Closed
rcubetrac opened this issue Oct 2, 2014 · 7 comments
Closed

IMAP PERMANENTFLAGS is optional #4667

rcubetrac opened this issue Oct 2, 2014 · 7 comments
Milestone

Comments

@rcubetrac
Copy link

Reported by asc on 2 Oct 2014 11:09 UTC as Trac ticket #1490087

In 1.0.3 I noticed that setting flags is not working anymore since my IMAP server does not send any PERMANENTFLAGS hints. This should not prevent setting flags though:

()
A list of message flags that the client can change
permanently. If this is missing, the client should
assume that all flags can be changed permanently.

Effects of this are: flags cannot be changed, messages cannot be moved etc.

Keywords: IMAP PERMANTENTFLAGS
Migrated-From: http://trac.roundcube.net/ticket/1490087

@rcubetrac
Copy link
Author

Milestone changed by asc on 2 Oct 2014 12:18 UTC

=> 1.1-beta

@rcubetrac
Copy link
Author

Comment by @alecpl on 2 Oct 2014 14:11 UTC

What imap server?

@rcubetrac
Copy link
Author

Comment by asc on 2 Oct 2014 14:28 UTC

bejy.net IMAP java server it is in my case

@rcubetrac
Copy link
Author

Comment by bebbo on 3 Oct 2014 14:08 UTC

from RFC3501, "INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1", March

OK [(<list of flags>)](PERMANENTFLAGS)

  A list of message flags that the client can change
  permanently.  If this is missing, the client should
  assume that all flags can be changed permanently.

So here is a patch for roundcube to use FLAGS as PERMANENTFLAGS if PERMANENTFLAGS is absent:

roundcubemail-1.0.3-dep/program/lib/Roundcube/rcube_imap_generic.php

1029,1031d1028
<                 else if (preg_match('/^\* FLAGS \(([$line, $match)) {
<                     $this->data['FLAGS'](^\)]+)\)/iU',) = explode(' ', $match[                }
1067,1068d1063
<             // no PERMANENTFLAGS --> all FLAGS are permanent
<             if (!$this->data['PERMANENTFLAGS'](1]);
<)) $this->data[=  $this->data['FLAGS']('PERMANENTFLAGS']);

@rcubetrac
Copy link
Author

Comment by @alecpl on 4 Oct 2014 07:59 UTC

Fixed in 07fa81d.

@rcubetrac
Copy link
Author

Status changed by @alecpl on 4 Oct 2014 07:59 UTC

new => closed

@rcubetrac
Copy link
Author

Milestone changed by @alecpl on 4 Oct 2014 07:59 UTC

1.1-beta => 1.0.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant