Re: [Rocky Linux 8.6] expire plugin file disappeared

2022-05-17 Thread Daniel Lange

Am 18.05.22 um 02:06 schrieb Masakazu Hirose:

I use Rocky Linux packages. Rocky or Redhat may fail to package.
"/usr/lib64/dovecot/lib20_expire_plugin.so" seems to have disappeared
in the new package.

[..]

May 18 08:21:22 xxx dovecot[3508407]: imap(yyy): Error: Plugin
'expire' not found from directory /usr/lib64/dovecot

# cat /etc/redhat-release
Rocky Linux release 8.6 (Green Obsidian)

# rpm -qa | grep dovecot
dovecot-2.3.16-2.el8.x86_64
dovecot-mysql-2.3.16-2.el8.x86_64


From https://dovecot.org/doc/NEWS

V2.3.14 2021-03-04  Aki Tuomi 
[..]
* Remove autocreate, expire, snarf and mail-filter plugins.

The plugin is gone since v2.3.14.


Re: dovecot-fts-solr Solr9 support

2022-05-17 Thread Shawn Heisey

On 5/17/22 11:32, PGNet Dev wrote:
Something that is missing from the current instructions is how to 
initiate a FULL reindex of all data in the dovecot install.


Beyond looping over each $acct

 doveadm fts rescan -u ${acct}
 doveadm index  -u ${acct} -q '*'


I hadn't seen the fts rescan before.  That was what I was missing to 
make things really clean.  Before I was deleting all the dovecot.*index* 
files, and now I don't need to do that.  This is my new script, with the 
old way commented out:


---
#!/bin/sh
DOVECOT_SOLR_URL_BASE="http://localhost:8983/solr/dovecot;
#MAIL_ROOT=/var/vmail

# DO NOT MODIFY BELOW
# WITHOUT GOOD REASON
#
DEL_ALL_QUERY_XML="*:*"
service dovecot stop
curl \
  "${DOVECOT_SOLR_URL_BASE}/update?commit=true=true" \
  -H "Content-Type: text/xml" \
  --data-binary "${DEL_ALL_QUERY_XML}"
#find ${MAIL_ROOT} -name "dovecot.*index*" -print0 | xargs -0 rm -f
service dovecot start
doveadm force-resync -A '*'
doveadm fts rescan -A
doveadm index -A -q '*'
---

The script stops Dovecot, wipes out the Solr index, then restarts 
Dovecot and does the doveadm commands necessary for a full reindex of 
all mailboxes, without specifying them one by one.  The force-resync 
probably isn't required, but I figure it can't hurt. I've tested this 
new version a few times.  Good thing a full reindex only takes about ten 
minutes for my system.


Thanks,
Shawn



[Rocky Linux 8.6] expire plugin file disappeared

2022-05-17 Thread Masakazu Hirose
Hi,

Rocky Linux Dovecot no longer reads the expired plugin from the
library directory.

I use Rocky Linux packages. Rocky or Redhat may fail to package.
"/usr/lib64/dovecot/lib20_expire_plugin.so" seems to have disappeared
in the new package.

This may not be relevant to the Dovecot project.


# /var/log/messages
May 18 08:21:22 xxx dovecot[3508407]: imap(yyy): Error: Plugin
'expire' not found from directory /usr/lib64/dovecot

# cat /etc/redhat-release
Rocky Linux release 8.6 (Green Obsidian)

# rpm -qa | grep dovecot
dovecot-2.3.16-2.el8.x86_64
dovecot-mysql-2.3.16-2.el8.x86_64



Thank you,
Masakazu


Re: Preventing deletion of mails in some directories?

2022-05-17 Thread Robert L Mathews

On 5/17/22 1:12 PM, Philip Rhoades wrote:

I can't get the system "chattr" to do what I want so I am wondering if 
there is some way to prevent deletion of mails in the INBOX and the Sent 
folders?


Have you looked at ACLs:

https://doc.dovecot.org/configuration_manual/acl/#acl

--
Robert L Mathews


Re: Preventing deletion of mails in some directories?

2022-05-17 Thread Phillip Odam
Hi Phil

Have you taken a look at dovecot’s namespaces?
https://doc.dovecot.org/configuration_manual/shared_mailboxes/public_shared/

No idea personally, just searched for it now based on your question.

When you mention chattr I assume you’re referring to setting the immutable
bit / flag eg. https://www.tecmint.com/chattr-command-examples/amp/

Only reason I can off the top of my head think this wouldn’t work is that
the file system type you’re using doesn’t support it.

A third option would be to dual mount the file system, second time in
readonly mode and use a second instance of dovecot to point at the second
location... just a tad yuck

Phillip

On Tuesday, May 17, 2022, Philip Rhoades  wrote:

> People,
>
> I can't get the system "chattr" to do what I want so I am wondering if
> there is some way to prevent deletion of mails in the INBOX and the Sent
> folders?
>
> Renaming and moving files needs to be possible for Maildir functions and
> also for me - so I only need deletion prevention . .
>
> Is this possible from Dovecot?
>
> Thanks,
>
> Phil.
> --
> Philip Rhoades
>
> PO Box 896
> Cowra  NSW  2794
> Australia
> E-mail:  p...@pricom.com.au
>


Re: Can sync/migrate all mail from remote imap account except the main "INBOX"

2022-05-17 Thread Darren Mobley
Thanks for the replies, Paul and Sami !

So if I understand correctly, because the local server has the following config:


  prefix = INBOX.

  separator = .


doveadm-sync is reading the INBOX as INBOX.INBOX


1 OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT 
SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND 
URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED 
I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH 
LIST-STATUS BINARY MOVE SNIPPET=FUZZY PREVIEW=FUZZY PREVIEW STATUS=SIZE 
SAVEDATE NAMESPACE LITERAL+ NOTIFY SPECIAL-USE COMPRESS=DEFLATE QUOTA] Logged in

2 list "" "*"

* LIST (\HasChildren) "." INBOX

* LIST (\HasNoChildren \UnMarked \Junk) "." INBOX.spam

* LIST (\HasNoChildren \UnMarked \Sent) "." INBOX.Sent

* LIST (\HasNoChildren \UnMarked) "." "INBOX.Travel Deals"

* LIST (\HasNoChildren \UnMarked) "." INBOX.Templates

* LIST (\HasNoChildren \UnMarked) "." INBOX.Spam

* LIST (\HasNoChildren \UnMarked) "." INBOX.Queue

* LIST (\HasChildren \UnMarked) "." INBOX.Mailspring

* LIST (\HasNoChildren \UnMarked) "." INBOX.Mailspring.Snoozed

* LIST (\HasNoChildren \UnMarked) "." "INBOX.Commercial Spam"

* LIST (\HasNoChildren \UnMarked \Archive) "." INBOX.Archive

* LIST (\HasNoChildren \UnMarked \Trash) "." INBOX.Trash

* LIST (\HasNoChildren \UnMarked \Drafts) "." INBOX.Drafts

2 OK List completed (0.002 + 0.000 + 0.001 secs).

3 logout

* BYE Logging out

3 OK Logout completed (0.001 + 0.000 secs).

So adding "-o imapc_list_prefix=INBOX" to the doveadm command line should fix 
that, I would think ?

When I tested, the version without the new args:


May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox INBOX: 
Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Ignore 
nonexistent mailbox GUID c92f64f79f0d1ed01e6d5b314f04886c with -1 sync

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain S: We don't 
have mailbox c92f64f79f0d1ed01e6d5b314f04886c

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain M: Ignoring 
missing remote box GUID c92f64f79f0d1ed01e6d5b314f04886c

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Archive: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.INBOX.Archive: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox e94acd62db4233e3f7add6d6159b1d11

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Drafts: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.INBOX.Drafts: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox 004ef77f6a9c3669bcb43012f3a43855

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.INBOX.Junk: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.INBOX.Junk: Mailbox opened

May 17 16:18:39 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox 4849549b42c9c7de02f5e49cfa8ae258

versus with the new args:


May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox INBOX: 
Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Ignore 
nonexistent mailbox GUID c92f64f79f0d1ed01e6d5b314f04886c with -1 sync

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain S: We don't 
have mailbox c92f64f79f0d1ed01e6d5b314f04886c

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain M: Ignoring 
missing remote box GUID c92f64f79f0d1ed01e6d5b314f04886c

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Archive: Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Archive: Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox e94acd62db4233e3f7add6d6159b1d11

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Drafts: Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.Drafts: Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox 004ef77f6a9c3669bcb43012f3a43855

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox 
INBOX.INBOX.Junk: Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: Mailbox INBOX.Junk: 
Mailbox opened

May 17 16:19:33 dsync(mailto:saywhat...@letest.tld): Debug: brain S: Skipping 
unchanged mailbox 4849549b42c9c7de02f5e49cfa8ae258

So it does seem to have an affect, but the INBOX is still not populated.

Since I can't change the config on these servers, and I'm running out of time, 
I'll probably just do something like imapsync to get the migrations going.

I appreciate the help!
Thanks,
Darren








 

dovecot virtual users with sendmail, my solution

2022-05-17 Thread Christopher McCrory
Hello...

I wanted to use dovecot virtual users with sendmail. As you probably know,
this doesn't work by default.  The more scalable solution is probably to
use LDAP, but I really don't like it.  This is how I did it
https://github.com/chrismcc-gmail/dovecot-virtual-sendmail

Basically I abused glibc's db feature in /etc/nsswitch

in /var/db/Makefile something like this:

$(VAR_DB)/passwd.db: /etc/dovecot/usersfile
  @printf %s "$(patsubst %.db,%,$(@F))... "
  @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
  /^[ \t]*$$/ { next } \
  /^[ \t]*#/ { next } \
  /^root/ { next } \
  /^[^#]/ { printf ".%s ", $$1; \
printf "%s:x:65534:65534:%s:/home/vmail/%s:/sbin/nologin\n", $$1, $$1, $$1;
\
}' $^ | \
  $(MAKEDB) -o $@ -
@echo "done."

make -C /var/db
getent passwd ; shows
...
virtualuser:x:65534:65534:virtualuser:/home/vmail/virtualuser:/sbin/nologin
othervuser:x:65534:65534:othervuser:/home/vmail/othervuser:/sbin/nologin

A longer explanation and more info is in the github repository
It takes about 10 minutes to go from new clean server to working email
server with this
I've been running this in production for about a week now without any
problems.

Question:
Has anyone else done this? I don't see any downsides, but I might be
missing something.


-- 
Christopher McCrory
To the optimist, the glass is half full.
To the pessimist, the glass is half empty.
To the engineer, the glass is twice as big as it needs to be.


Preventing deletion of mails in some directories?

2022-05-17 Thread Philip Rhoades

People,

I can't get the system "chattr" to do what I want so I am wondering if 
there is some way to prevent deletion of mails in the INBOX and the Sent 
folders?


Renaming and moving files needs to be possible for Maildir functions and 
also for me - so I only need deletion prevention . .


Is this possible from Dovecot?

Thanks,

Phil.
--
Philip Rhoades

PO Box 896
Cowra  NSW  2794
Australia
E-mail:  p...@pricom.com.au


Re: dovecot-fts-solr Solr9 support

2022-05-17 Thread PGNet Dev

On 5/17/22 12:17 PM, Shawn Heisey wrote:

I had made the change to CaffeineCache quite a while back.


iiuc, solr8x still has support for *LRUCache classes, as well as CaffeineCache.

in my 8x installs, i'd simply never noticed related search problems ... only 
after my 9x install, with the full deprecation of legacy cache(s), did I notice 
these

...
/var/log/solr/solr.log.6:2022-05-17 10:08:09.402 ERROR (qtp1165791284-17) [ 
x:dovecot] o.a.s.s.CacheConfig Error instantiating cache => 
org.apache.solr.common.SolrException:  Error loading class 'solr.search.LRUCache'
/var/log/solr/solr.log.6:org.apache.solr.common.SolrException:  Error loading 
class 'solr.search.LRUCache'
/var/log/solr/solr.log.6:Caused by: java.lang.ClassNotFoundException: 
solr.search.LRUCache
/var/log/solr/solr.log.6:2022-05-17 10:09:13.534 ERROR (qtp1165791284-23) [ 
x:dovecot] o.a.s.s.CacheConfig Error instantiating cache => 
org.apache.solr.common.SolrException:  Error loading class 'solr.LRUCache'
/var/log/solr/solr.log.6:org.apache.solr.common.SolrException:  Error loading 
class 'solr.LRUCache'
/var/log/solr/solr.log.6:Caused by: java.lang.ClassNotFoundException: 
solr.LRUCache
/var/log/solr/solr.log.6:2022-05-17 10:09:13.556 ERROR (qtp1165791284-23) [ 
x:dovecot] o.a.s.s.CacheConfig Error instantiating cache => 
org.apache.solr.common.SolrException:  Error loading class 'solr.FastLRUCache'
/var/log/solr/solr.log.6:org.apache.solr.common.SolrException:  Error loading 
class 'solr.FastLRUCache'
/var/log/solr/solr.log.6:Caused by: java.lang.ClassNotFoundException: 
solr.FastLRUCache
...


I can come up with a new config that should work in 8.x, 9.x, and the current 
dev branch by almost anyone.


CaffeineCache  _should_ be a solution for both series.
I'm just starting to do a bit of testing, but so far, indexing/search with 
Caffeine seems quicker, at least.
I do not yet know in which case(s) CaffeineCache is _not_ an appropriate 
solution.


I should probably see if I can write some end to end instructions for 
installing Solr and configuring dovecot to use it.


Having something well-vetted and doc'd will be useful.



Something that is missing from the current instructions is how to initiate a 
FULL reindex of all data in the dovecot install.


Beyond looping over each $acct

 doveadm fts rescan -u ${acct}
 doveadm index  -u ${acct} -q '*'

?


Re: dovecot-fts-solr Solr9 support

2022-05-17 Thread Shawn Heisey

On 5/17/22 09:02, PGNet Dev wrote:


Modifying the config to use CaffeineCache

cp solr-config-7.7.0.xml solr-config-9.0.0.xml
perl -pi -e '\
 s|solr.FastLRUCache|solr.CaffeineCache|g; \
 s|solr.LRUCache|solr.CaffeineCache|g; \
 s|solr.search.LRUCache|solr.search.CaffeineCache|g;' \
solr-config-9.0.0.xml

appears to do the trick.
Atm, indexing & search -- both manually triggered, and on delivery 
receipt to Dovecot store -- is working with no errors (yet).


Yesterday I upgraded my Solr install for dovecot from 8.11.2-SNAPSHOT to 
10.0.0-SNAPSHOT.  It is still working and the config did not need 
further changes from what I already had.


I have been customizing my solrconfig.xml and managed-schema files ... I 
had made the change to CaffeineCache quite a while back.  I have also 
changed the analyzer chain in the schema to use a contrib component, so 
my config won't be directly usable -- it requires loading some extra 
jars.  When I upgraded, I did need to change the extra jars that were 
loaded.


I can come up with a new config that should work in 8.x, 9.x, and the 
current dev branch by almost anyone.


I should probably see if I can write some end to end instructions for 
installing Solr and configuring dovecot to use it.  Something that is 
missing from the current instructions is how to initiate a FULL reindex 
of all data in the dovecot install.


Thanks,
Shawn



Re: Dovecot and RFC6856

2022-05-17 Thread Michael Slusarz
> On 05/17/2022 6:00 AM Tan Mientras  wrote:
> 
> Does dovecot also implement RFC8656? Will the same happen if we migrate to 
> dovecot? Any plans for future adoption of that RFC?
> 
EAI/UTF-8 support (RFC 6530 is the better, generalized document to point at) 
has been on the TODO list for a long time for Dovecot.  It simply has not yet 
risen to be a priority over other things we are working on.

michael



dovecot-fts-solr Solr9 support

2022-05-17 Thread PGNet Dev

I run

dovecot-2.3.18

, & am deploying Solr search with 'dovecot-fts-solr'

I run Solr standalone.

When creating a dedicated 'dovecot' core, cp'ing from Dovecot's included solr 
schemas

ls -al /usr/share/doc/dovecot/solr-*
-rw-r--r-- 1 root root  12K Dec  3 06:48 
/usr/share/doc/dovecot/solr-config-7.7.0.xml
-rw-r--r-- 1 root root 2.7K Dec  3 06:48 
/usr/share/doc/dovecot/solr-schema-7.7.0.xml
-rw-r--r-- 1 root root 2.9K Dec  3 06:48 
/usr/share/doc/dovecot/solr-schema.xml

is tested only for Solr 7.7.0

https://doc.dovecot.org/configuration_manual/fts/solr/
"The steps described in this page are tested for Solr 7.7.0. For 
other versions, this these steps may need to be adjusted."

which, per solr docs

https://solr.apache.org/downloads.html

About versions and support
Version Description
9.x Current major version for feature 
releases (STABLE)
8.11.x  Previous major version may sometimes 
receive critical bugfix releases
10  Next major version, yet to be released 
(UNSTABLE)
<8.11   All older versions are End Of Life (EOL)

is EOL'd and unsupported.

In the dovecot 7.7.0 schema, FastLRUCache/LRUCache are used as the caching 
class(es),

grep class=.*LRU  /usr/share/doc/dovecot/solr-config-7.7.0.xml
 

Re: Can sync/migrate all mail from remote imap account except the main "INBOX"

2022-05-17 Thread Sami Ketola


> On 13. May 2022, at 22.17, Darren Mobley  wrote:
> May 13 13:28:17 dsync(saywhat...@letest.tld ): 
> Debug: brain M: Local mailbox tree: INBOX 
> guid=980aa92b41a37e62cd0f537c03e1 uid_validity=1652466497 
> May 13 13:28:17 dsync(saywhat...@letest.tld ): 
> Debug: brain S: Local mailbox tree: INBOX.INBOX 
> guid= uid_validity=0 

So your remote has INBOX and INBOX.INBOX. This is quite special case for imapc 
connector and cannot be solved easily. I did hit this once at a customer when I 
was doing migrations for them.
This was few years a go and unfortunately I cannot remember how the problem was 
solved. I remember that it required TWO separate dsync runs to migrate INBOX 
separately and remaining folders in another run.
I wrote a workaround to the migration framework to monitor the migration logs 
and then apply workarounds if end user and this strange INBOX.INBOX setup.

Unfortunately that is all I can remember about it and I've since left Open 
Xchange and do not have an access to my old migration toolkit bits and command 
line documentations.

Sami



Possible to increase connection limit for one user only?

2022-05-17 Thread Kurt Fitzner
I run a medium-sized virtual domain email server for about 15 domains.  I also 
use it myself and have 3 or 4 devices using imap.   I am often using a VPN to 
connect to my home network, which makes all my connections appear to come from 
one IP.

I want to increase mail_max_userip_connections just for myself only so I'm not 
opening up my server to abuse.  Is this possible?

Dovecot and RFC6856

2022-05-17 Thread Tan Mientras
Hi.

Just after upgrading *courier* from an old version, we are receiving
warning messages instead of mails stating:
"This E-mail message was determined to be Unicode-formatted but your E-mail
reader does not support Unicode E-mail." warnings. It looks much like:

*https://bugzilla.mozilla.org/show_bug.cgi?id=1571672
*
https://talk.plesk.com/threads/messages-with-unicode-unable-to-pick-up-via-imap-after-upgrade.353908/

it seems, malformed mails (they showed errors before migration, but they
were shown at least!) are handled incorrectly by thunderbird and the only
option is to *revert backwards or migrate to dovecot*.

*Does dovecot also implement RFC8656*? Will the same happen if we migrate
to dovecot? Any plans for future adoption of that RFC?


Re: Shared mailboxes, users with dots and a bug in subscriptions

2022-05-17 Thread Tobias Stein
Hi,

Thanks for your support.

So a workaround would involve the migration from the flat to an hierarchical 
LAYOUT=fs, 
change the hierarchy separator to „/‟ and the namespace separator to a rarely 
used symbol 
like „§‟. Okay, that actually sounds like a nightmare to me.

> But this would not resolve the actual bug, that subscriptions
> are not split and persisted correctly.
> In the end i would just be forced to use :LAYOUT=fs
> to mitigate the bug, even if i like the flat layout. :-)

What do you think about accepting the miss-behaviour and fixing the splitting 
function in 
"subscription-file.c" ? :-D

Best regards
Tobias
--
Rockstable IT UG (haftungsbeschränkt)
Löhrstr. 19
04105 Leipzig

Sitz der Gesellschaft: Leipzig
Registergericht: Amtsgericht Leipzig, HRB 36289
Geschäftsführer: Tobias Stein
USt-IdNr.: DE324059204
https://www.rockstable.it/

Free Software Foundation Europe - Was ist Freie Software?
https://fsfe.org/freesoftware/freesoftware.de.html
Public Money? Public Code!
https://publiccode.eu/de/

Am Donnerstag, 28. Januar 2021, 16:06:46 CEST schrieb Aki Tuomi:
> > On 28/01/2021 16:55 Tobias Stein  wrote:
> > 
> > 
> > Hi Aki,
> > 
> > Thanks for your prompt reply! :-)
> > And because i classically forgot to attach
> > the dovecot-sysreport, i'll deliver it now. :-)
> > 
> > 
> > Yes, you're right. Setting :LAYOUT=fs would be a workaround.
> > I'd also have to migrate every
> > single mailbox to the new hierarchical layout.
> > The hierarchical separator list->sep would
> > indeed change to „/‟ and the subscriptions
> > would be split differently.
> > 
> > Please correct me when i'm wrong, but
> > the namespace/separator would have to be changed too,
> > to prevent splitting on another "wrong" position.
> > The current
> > shared/root@example com/testsubtest
> > would become to
> > shared  r...@example.comtestsubtest.
> > Which is also wrong because there is no user shared.
> > So the namespace separator could be set to again something
> > different (from „auth_username_chars‟ + "/+")
> > like „^°!§%&=?;:#¹²³‟ which all would be ugly.
> > And with namespace/sep set to „°‟ leading to the form
> > shared°r...@example.com°testsubtest.
> > 
> > But this would not resolve the actual bug, that subscriptions
> > are not split and persisted correctly.
> > In the end i would just be forced to use :LAYOUT=fs
> > to mitigate the bug, even if i like the flat layout. :-)
> > 
> > I think there should be a default, which is valid
> > for a common deployment with all features working.
> > Maildir++ for sure is a great choice for this,
> > but the implementation has a flaw:
> > a hard-coded „separator‟, which collides with
> > the DNS label delimiter, when storing subscriptions.
> > 

signature.asc
Description: This is a digitally signed message part.