Need advice: mailbox-based \Seen flag
Ken Murchison
murch at andrew.cmu.edu
Sat Sep 1 14:05:42 EDT 2007
I had some time while waiting for paint to dry, so I whipped up this
quick patch for shared seen state, based on our previous discussions.
It uses a "/vendor/cmu/cyrus-imapd/sharedseen" mailbox annotation,
stored as a mailbox option in the index header, to enable/disable shared
seen state, and stores the shared seen state in "anyone.seen". Note
that this patch is completely untested, although it compiles against
CVS. I also didn't consider replication yet.
Feel free to try this and see if it has the intended behavior. Remember
that the 's' ACL right controls whether a person can change the \Seen
flag on a message.
Boris Lytochkin wrote:
> Hello!
>
> I need an advice in implementing per-mailbox \Seen flag (or 'shared'
> \Seen flag in per-user basis).
>
> For now I want to implement it this way:
> 1) add a new mailbox attribute, say 'sharedseen'
> 2) switch path for .seen file in imap/seen_*.c:seen_getpath() if
> 'sharedseen' flag is set on mailbox.
> 3) changes in replication module?
>
> So, setting 'sharedseen' attribute to mailbox will cause using
> per-mailbox seen-file.
>
> What are weak points of this implementation?
> Is there more correct way to make per-mailbox \Seen flag?
>
>
--
Kenneth Murchison
Systems Programmer
Project Cyrus Developer/Maintainer
Carnegie Mellon University
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sharedseen.diff
Type: text/x-patch
Size: 6534 bytes
Desc: not available
Url : http://lists.andrew.cmu.edu/pipermail/cyrus-devel/attachments/20070901/4b0e10e0/attachment.bin
More information about the Cyrus-devel
mailing list