Page MenuHomePhorge

Guam does not filter groupware folders
Closed, ResolvedPublic

Description

Guam does not seem to filter groupware folders using their type definitions, but instead filters folders by name and prefix.

The intention is to filter folders based on their shared and private namespace values for the /vendor/kolab/folder-type value (anything empty or that does not start with 'mail' would be considered a groupware folder).

The blacklist strings are defined here: https://git.kolab.org/diffusion/G/browse/master/apps/kolab_guam/src/rules/kolab_guam_rule_filter_groupware.erl;28f63133a54dcccf8cefe4b1cf56a9f9e5d9301b$24

Details

Ticket Type
Task

Event Timeline

vanmeeuwen assigned this task to seigo.
vanmeeuwen raised the priority of this task from to 60.
vanmeeuwen updated the task description. (Show Details)
vanmeeuwen added a project: Guam.
vanmeeuwen moved this task to Backlog on the Guam board.
vanmeeuwen changed Ticket Type from Task to Task.
vanmeeuwen updated the task description. (Show Details)
vanmeeuwen subscribed.
vanmeeuwen raised the priority of this task from 60 to High.Dec 8 2015, 2:54 PM
vanmeeuwen renamed this task from Guam does not filter all folders all the time to Guam does not filter groupware folders.Dec 8 2015, 3:46 PM
vanmeeuwen updated the task description. (Show Details)

Fails on larger numbers of folders.

Configuration as per T928#13121, against kolab.kolabsys.com:

$ imtest -t "" -u vanmeeuwen@kolabsys.com -a vanmeeuwen@kolabsys.com 172.17.42.1
S: * OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE ACL RIGHTS=kxten QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME 
UNSELECT CHILDREN MULTIAPPEND BINARY CATENATE CONDSTORE ESEARCH SORT SORT=MODSEQ SORT=DISPLAY SORT=UID THREAD=ORDEREDSUBJECT 
THREAD=REFERENCES ANNOTATEMORE ANNOTATE-EXPERIMENT-1 LIST-EXTENDED LIST-STATUS LIST-MYRIGHTS WITHIN QRESYNC SCAN XLIST XMOVE MOVE 
SPECIAL-USE CREATE-SPECIAL-USE URLAUTH URLAUTH=BINARY X-NETSCAPE AUTH=PLAIN AUTH=LOGIN SASL-IR COMPRESS=DEFLATE X-QUOTA=STORAGE 
X-QUOTA=MESSAGE X-QUOTA=X-ANNOTATION-STORAGE X-QUOTA=X-NUM-FOLDERS IDLE STARTTLS] kolab02.kolabsys.com Cyrus IMAP 2.5.5.5-Kolab-
2.5.5-5.1.el6.kolab_14 server ready
C: S01 STARTTLS
S: S01 OK Begin TLS negotiation now
verify error:num=18:self signed certificate
TLS connection established: TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)
C: C01 CAPABILITY
S: * CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE ACL RIGHTS=kxten QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME UNSELECT 
CHILDREN MULTIAPPEND BINARY CATENATE CONDSTORE ESEARCH SORT SORT=MODSEQ SORT=DISPLAY SORT=UID THREAD=ORDEREDSUBJECT 
THREAD=REFERENCES ANNOTATEMORE ANNOTATE-EXPERIMENT-1 LIST-EXTENDED LIST-STATUS LIST-MYRIGHTS WITHIN QRESYNC SCAN XLIST XMOVE MOVE 
SPECIAL-USE CREATE-SPECIAL-USE URLAUTH URLAUTH=BINARY X-NETSCAPE AUTH=PLAIN AUTH=LOGIN SASL-IR COMPRESS=DEFLATE X-QUOTA=STORAGE 
X-QUOTA=MESSAGE X-QUOTA=X-ANNOTATION-STORAGE X-QUOTA=X-NUM-FOLDERS IDLE
S: C01 OK Completed
Please enter your password: 
C: A01 AUTHENTICATE PLAIN ********
S: A01 OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE ACL RIGHTS=kxten QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME 
UNSELECT CHILDREN MULTIAPPEND BINARY CATENATE CONDSTORE ESEARCH SORT SORT=MODSEQ SORT=DISPLAY SORT=UID THREAD=ORDEREDSUBJECT 
THREAD=REFERENCES ANNOTATEMORE ANNOTATE-EXPERIMENT-1 LIST-EXTENDED LIST-STATUS LIST-MYRIGHTS WITHIN QRESYNC SCAN XLIST XMOVE MOVE 
SPECIAL-USE CREATE-SPECIAL-USE URLAUTH URLAUTH=BINARY X-NETSCAPE LOGINDISABLED COMPRESS=DEFLATE X-QUOTA=STORAGE X-QUOTA=MESSAGE 
X-QUOTA=X-ANNOTATION-STORAGE X-QUOTA=X-NUM-FOLDERS IDLE] Success (tls protection) SESSIONID=<kolab02.kolabsys.com-
24069-1450346545-1-18301316321161749482>
Authenticated.
Security strength factor: 128
. LIST "" "*"
Connection closed.
  1. Expected to return a list of folders, with groupware folders filtered. See T928#13121 on Guam not doing that for smaller numbers of folders either.
  2. Should result in a NO response as per T927.

rel/kolab_guam/bin/kolab_guam foreground output:

10:02:37.497 [error] gen_fsm <0.140.0> in state wait_response terminated with reason: no match of right hand value {<<"* METADATA 
INBOX (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia (/shared/vendor/kolab/folder-type NIL)\r\n* 
METADATA Administrativia/Klab (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia/Support (/shared/vendor
/kolab/folder-type \"mail\")\r\n* METADATA Archive (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2012 (/shared
/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2013 (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA 
Archiv...">>,...} in eimap_command_getmetadata:continue_parse/3 line 36
10:02:37.497 [error] CRASH REPORT Process <0.140.0> with 0 neighbours exited with reason: no match of right hand value {<<"* 
METADATA INBOX (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia (/shared/vendor/kolab/folder-type 
NIL)\r\n* METADATA Administrativia/Klab (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia/Support (/shared
/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2012 
(/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2013 (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA 
Archiv...">>,...} in eimap_command_getmetadata:continue_parse/3 line 36 in gen_fsm:terminate/7 line 611

Same for SSL connections:

$ imtest -s -u vanmeeuwen@kolabsys.com -a vanmeeuwen@kolabsys.com 172.17.42.1
verify error:num=18:self signed certificate
TLS connection established: TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)
S: * OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE AUTH=PLAIN AUTH=LOGIN SASL-IR] kolab02.kolabsys.com Cyrus IMAP 2.5.5.5-Kolab-
2.5.5-5.1.el6.kolab_14 server ready
Please enter your password: 
C: A01 AUTHENTICATE PLAIN ********
S: A01 OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE ACL RIGHTS=kxten QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME 
UNSELECT CHILDREN MULTIAPPEND BINARY CATENATE CONDSTORE ESEARCH SORT SORT=MODSEQ SORT=DISPLAY SORT=UID THREAD=ORDEREDSUBJECT 
THREAD=REFERENCES ANNOTATEMORE ANNOTATE-EXPERIMENT-1 LIST-EXTENDED LIST-STATUS LIST-MYRIGHTS WITHIN QRESYNC SCAN XLIST XMOVE MOVE 
SPECIAL-USE CREATE-SPECIAL-USE URLAUTH URLAUTH=BINARY X-NETSCAPE LOGINDISABLED COMPRESS=DEFLATE X-QUOTA=STORAGE X-QUOTA=MESSAGE 
X-QUOTA=X-ANNOTATION-STORAGE X-QUOTA=X-NUM-FOLDERS IDLE] Success (tls protection) SESSIONID=<kolab02.kolabsys.com-
22607-1450346567-1-9626846080753926073>
Authenticated.
Security strength factor: 128
. LIST "" "*"
Connection closed.
$ 

rel/kolab_guam/bin/kolab_guam foreground output:

10:03:00.381 [error] gen_fsm <0.148.0> in state wait_response terminated with reason: no match of right hand value {<<"* METADATA 
INBOX (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia (/shared/vendor/kolab/folder-type NIL)\r\n* 
METADATA Administrativia/Klab (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia/Support (/shared/vendor
/kolab/folder-type \"mail\")\r\n* METADATA Archive (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2012 (/shared
/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2013 (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA 
Archiv...">>,...} in eimap_command_getmetadata:continue_parse/3 line 36
10:03:00.382 [error] CRASH REPORT Process <0.148.0> with 0 neighbours exited with reason: no match of right hand value {<<"* 
METADATA INBOX (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia (/shared/vendor/kolab/folder-type 
NIL)\r\n* METADATA Administrativia/Klab (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Administrativia/Support (/shared
/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2012 
(/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA Archive/2013 (/shared/vendor/kolab/folder-type \"mail\")\r\n* METADATA 
Archiv...">>,...} in eimap_command_getmetadata:continue_parse/3 line 36 in gen_fsm:terminate/7 line 611
vanmeeuwen raised the priority of this task from High to Unbreak Now!.Dec 17 2015, 11:10 AM

Pet peeve: re-opening old tasks for new unrelated issues.

The crash is in eimap; it was resolved already in the develop branch, and that is now backported the fix to master

vanmeeuwen moved this task from Review to Done on the Guam board.