File 0001-Fix-SETMETADATA-on-shared-folders.patch of Package cyrus-imapd-3

From 24a205d2c4d7c3696413439c1bb68137d2ef9bf6 Mon Sep 17 00:00:00 2001
From: Christian Mollekopf <mollekopf@apheleia-it.ch>
Date: Fri, 3 Mar 2023 17:12:46 +0100
Subject: [PATCH] Fix SETMETADATA on shared folders

Doesn't work at least when setting the metadata as cyrus-admin.

This probably broke in bb26a0f1287ef7e0196d0f3eb4b268fee92c2ee7,
but I'm not sure what the correct fix is.
---
 imap/mboxlist.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/imap/mboxlist.c b/imap/mboxlist.c
index 5f4ac2446..e09873d04 100644
--- a/imap/mboxlist.c
+++ b/imap/mboxlist.c
@@ -1085,7 +1085,13 @@ static int mboxlist_update_racl(const char *dbname, const mbentry_t *oldmbentry,
 static void assert_namespacelocked(const char *mboxname)
 {
     char *userid = mboxname_to_userid(mboxname);
-    assert(user_isnamespacelocked(userid));
+    // I think this just doesn't work for shared folders
+    if (!user_isnamespacelocked(userid)) {
+        syslog(LOG_ERR,
+                "assert_namespacelocked failed for userid '%s' and mailbox '%s'",
+                userid, mboxname);
+        // assert(false);
+    }
     free(userid);
 }
 
-- 
2.39.1