From: Timo Sirainen Date: Tue, 21 Sep 2021 14:48:33 +0000 (+0300) Subject: lib-storage: mailbox_verify_*name() - Add data stack frames X-Git-Tag: 2.3.17~83 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8c56e2c025d9a36d788e266892d8b992ee28fbcb;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: mailbox_verify_*name() - Add data stack frames This function can eat up quite a lot of data stack. --- diff --git a/src/lib-storage/mail-storage.c b/src/lib-storage/mail-storage.c index 60dc65ba19..3b92602ce4 100644 --- a/src/lib-storage/mail-storage.c +++ b/src/lib-storage/mail-storage.c @@ -1233,7 +1233,7 @@ mailbox_verify_name_prefix(struct mail_namespace *ns, const char **vnamep, return TRUE; } -int mailbox_verify_name(struct mailbox *box) +static int mailbox_verify_name_int(struct mailbox *box) { struct mail_namespace *ns = box->list->ns; const char *error, *vname = box->vname; @@ -1289,7 +1289,16 @@ int mailbox_verify_name(struct mailbox *box) return 0; } -static int mailbox_verify_existing_name(struct mailbox *box) +int mailbox_verify_name(struct mailbox *box) +{ + int ret; + T_BEGIN { + ret = mailbox_verify_name_int(box); + } T_END; + return ret; +} + +static int mailbox_verify_existing_name_int(struct mailbox *box) { const char *path; @@ -1317,6 +1326,15 @@ static int mailbox_verify_existing_name(struct mailbox *box) return 0; } +static int mailbox_verify_existing_name(struct mailbox *box) +{ + int ret; + T_BEGIN { + ret = mailbox_verify_existing_name_int(box); + } T_END; + return ret; +} + static bool mailbox_name_has_control_chars(const char *name) { const char *p;