dovecot-2.0: Added mail_namespace_get_storage_name().

dovecot at dovecot.org dovecot at dovecot.org
Fri Jun 12 19:52:55 EEST 2009


details:   http://hg.dovecot.org/dovecot-2.0/rev/3111c362edff
changeset: 9466:3111c362edff
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Jun 12 12:52:03 2009 -0400
description:
Added mail_namespace_get_storage_name().

diffstat:

2 files changed, 18 insertions(+)
src/lib-storage/mail-namespace.c |   15 +++++++++++++++
src/lib-storage/mail-namespace.h |    3 +++

diffs (38 lines):

diff -r b09ad4858d22 -r 3111c362edff src/lib-storage/mail-namespace.c
--- a/src/lib-storage/mail-namespace.c	Fri Jun 12 12:50:27 2009 -0400
+++ b/src/lib-storage/mail-namespace.c	Fri Jun 12 12:52:03 2009 -0400
@@ -380,6 +380,21 @@ const char *mail_namespace_fix_sep(struc
 	return ret;
 }
 
+const char *mail_namespace_get_storage_name(struct mail_namespace *ns,
+					    const char *name)
+{
+	unsigned int len = strlen(ns->prefix);
+
+	if (len > 0) {
+		if (strncmp(ns->prefix, name, len) == 0)
+			name += len;
+		else {
+			i_assert(strcasecmp(name, "INBOX") == 0);
+		}
+	}
+	return mail_namespace_fix_sep(ns, name);
+}
+
 const char *mail_namespace_get_vname(struct mail_namespace *ns, string_t *dest,
 				     const char *name)
 {
diff -r b09ad4858d22 -r 3111c362edff src/lib-storage/mail-namespace.h
--- a/src/lib-storage/mail-namespace.h	Fri Jun 12 12:50:27 2009 -0400
+++ b/src/lib-storage/mail-namespace.h	Fri Jun 12 12:52:03 2009 -0400
@@ -88,6 +88,9 @@ void mail_namespace_destroy(struct mail_
 
 /* Update hierarchy separators in given name to real_sep characters. */
 const char *mail_namespace_fix_sep(struct mail_namespace *ns, const char *name);
+/* Skip namespace prefix and change hierarchy separators. */
+const char *mail_namespace_get_storage_name(struct mail_namespace *ns,
+					    const char *name);
 /* Write virtual mailbox name to dest and return it. Separators are changed to
    virtual ones and namespace prefix is inserted except for INBOX. */
 const char *mail_namespace_get_vname(struct mail_namespace *ns, string_t *dest,


More information about the dovecot-cvs mailing list