From: Marco Bettini Date: Mon, 1 Aug 2022 10:04:15 +0000 (+0000) Subject: lib-storage: Factor in sanitize_box_name() X-Git-Tag: 2.4.0~3718 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=41e25ed8ba237a82c0e876bb23eda36f867b5151;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Factor in sanitize_box_name() --- diff --git a/src/lib-storage/fail-mailbox.c b/src/lib-storage/fail-mailbox.c index 07ace29231..2ba1b7a604 100644 --- a/src/lib-storage/fail-mailbox.c +++ b/src/lib-storage/fail-mailbox.c @@ -2,7 +2,6 @@ #include "lib.h" #include "array.h" -#include "str-sanitize.h" #include "mail-storage-private.h" #include "mailbox-list-private.h" #include "fail-mail-storage.h" diff --git a/src/lib-storage/list/mail-storage-list-index-rebuild.c b/src/lib-storage/list/mail-storage-list-index-rebuild.c index 1e4f4627e7..1d56eebc60 100644 --- a/src/lib-storage/list/mail-storage-list-index-rebuild.c +++ b/src/lib-storage/list/mail-storage-list-index-rebuild.c @@ -154,7 +154,7 @@ mail_storage_list_remove_duplicate(struct mail_storage_list_index_rebuild_ctx *c e_debug(ctx->storage->event, "Removing duplicate mailbox '%s' in favor of mailbox '%s'", - str_sanitize(delete_name, 128), str_sanitize(keep_name, 128)); + mailbox_name_sanitize(delete_name), mailbox_name_sanitize(keep_name)); if (mailbox_list_index_sync_delete(rebuild_ns->list_sync_ctx, delete_name, TRUE) < 0) { diff --git a/src/lib-storage/mail-storage-private.h b/src/lib-storage/mail-storage-private.h index 8b92aa88ea..c4b567aedc 100644 --- a/src/lib-storage/mail-storage-private.h +++ b/src/lib-storage/mail-storage-private.h @@ -4,6 +4,7 @@ #include "module-context.h" #include "unichar.h" #include "file-lock.h" +#include "str-sanitize.h" #include "mail-storage.h" #include "mail-storage-hooks.h" #include "mail-storage-settings.h" @@ -906,6 +907,11 @@ void mailbox_save_context_deinit(struct mail_save_context *ctx); void mailbox_sync_notify(struct mailbox *box, uint32_t uid, enum mailbox_sync_type sync_type); +static inline const char *mailbox_name_sanitize(const char *name) +{ + return str_sanitize(name, 128); +} + /* for unit testing */ int mailbox_verify_name(struct mailbox *box); diff --git a/src/lib-storage/mail-storage.c b/src/lib-storage/mail-storage.c index 559fdc55f3..d3d46afbe7 100644 --- a/src/lib-storage/mail-storage.c +++ b/src/lib-storage/mail-storage.c @@ -6,7 +6,6 @@ #include "llist.h" #include "mail-storage.h" #include "str.h" -#include "str-sanitize.h" #include "sha1.h" #include "unichar.h" #include "hex-binary.h" @@ -607,7 +606,8 @@ void mailbox_set_critical(struct mailbox *box, const char *fmt, ...) va_start(va, fmt); T_BEGIN { mail_storage_set_critical(box->storage, "Mailbox %s: %s", - box->vname, t_strdup_vprintf(fmt, va)); + mailbox_name_sanitize(box->vname), + t_strdup_vprintf(fmt, va)); } T_END; va_end(va); } @@ -1250,7 +1250,7 @@ static int mailbox_verify_name_int(struct mailbox *box) if (!mailbox_verify_name_prefix(box->list->ns, &vname, &error)) { mail_storage_set_error(box->storage, MAIL_ERROR_PARAMS, t_strdup_printf("Invalid mailbox name '%s': %s", - str_sanitize(vname, 80), error)); + mailbox_name_sanitize(vname), error)); return -1; }