From: Timo Sirainen Date: Wed, 16 Dec 2009 18:48:16 +0000 (-0500) Subject: Avoid using PATH_MAX. X-Git-Tag: 2.0.beta2~116 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=48ca4c43ebca6fa3eee217bd4439cba5b5376dd4;p=thirdparty%2Fdovecot%2Fcore.git Avoid using PATH_MAX. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/shared/shared-list.c b/src/lib-storage/index/shared/shared-list.c index bdb890d1f1..35f57ba8f1 100644 --- a/src/lib-storage/index/shared/shared-list.c +++ b/src/lib-storage/index/shared/shared-list.c @@ -305,7 +305,7 @@ struct mailbox_list shared_mailbox_list = { .name = "shared", .hierarchy_sep = '/', .props = 0, - .mailbox_name_max_length = PATH_MAX, + .mailbox_name_max_length = MAILBOX_LIST_NAME_MAX_LENGTH, { shared_list_alloc, diff --git a/src/lib-storage/list/mailbox-list-fs.c b/src/lib-storage/list/mailbox-list-fs.c index 26bcd073bb..c0f1eecd1c 100644 --- a/src/lib-storage/list/mailbox-list-fs.c +++ b/src/lib-storage/list/mailbox-list-fs.c @@ -417,7 +417,7 @@ struct mailbox_list fs_mailbox_list = { .name = MAILBOX_LIST_NAME_FS, .hierarchy_sep = '/', .props = 0, - .mailbox_name_max_length = PATH_MAX, + .mailbox_name_max_length = MAILBOX_LIST_NAME_MAX_LENGTH, { fs_list_alloc, diff --git a/src/lib-storage/list/mailbox-list-fs.h b/src/lib-storage/list/mailbox-list-fs.h index 9c1a299f62..95b5dba639 100644 --- a/src/lib-storage/list/mailbox-list-fs.h +++ b/src/lib-storage/list/mailbox-list-fs.h @@ -5,7 +5,7 @@ /* Don't allow creating too long mailbox names. They could start causing problems when they reach the limit. */ -#define FS_MAX_CREATE_MAILBOX_NAME_LENGTH (PATH_MAX/2) +#define FS_MAX_CREATE_MAILBOX_NAME_LENGTH (MAILBOX_LIST_NAME_MAX_LENGTH/2) struct fs_mailbox_list { struct mailbox_list list; diff --git a/src/lib-storage/list/mailbox-list-maildir-iter.c b/src/lib-storage/list/mailbox-list-maildir-iter.c index b586b34f10..4d91fbc6f9 100644 --- a/src/lib-storage/list/mailbox-list-maildir-iter.c +++ b/src/lib-storage/list/mailbox-list-maildir-iter.c @@ -196,7 +196,7 @@ maildir_fill_readdir(struct maildir_list_iterate_context *ctx, strcmp(ctx->ctx.list->name, MAILBOX_LIST_NAME_IMAPDIR) != 0 ? ctx->ctx.list->hierarchy_sep : '\0'; - mailbox = t_str_new(PATH_MAX); + mailbox = t_str_new(MAILBOX_LIST_NAME_MAX_LENGTH); while ((d = readdir(dirp)) != NULL) { const char *fname = d->d_name; diff --git a/src/lib-storage/list/mailbox-list-maildir.c b/src/lib-storage/list/mailbox-list-maildir.c index b8ffd61b77..b5bcb62c23 100644 --- a/src/lib-storage/list/mailbox-list-maildir.c +++ b/src/lib-storage/list/mailbox-list-maildir.c @@ -442,7 +442,7 @@ struct mailbox_list maildir_mailbox_list = { .name = MAILBOX_LIST_NAME_MAILDIRPLUSPLUS, .hierarchy_sep = '.', .props = MAILBOX_LIST_PROP_NO_MAILDIR_NAME, - .mailbox_name_max_length = PATH_MAX, + .mailbox_name_max_length = MAILBOX_LIST_NAME_MAX_LENGTH, { maildir_list_alloc, @@ -471,7 +471,7 @@ struct mailbox_list imapdir_mailbox_list = { .name = MAILBOX_LIST_NAME_IMAPDIR, .hierarchy_sep = '.', .props = MAILBOX_LIST_PROP_NO_MAILDIR_NAME, - .mailbox_name_max_length = PATH_MAX, + .mailbox_name_max_length = MAILBOX_LIST_NAME_MAX_LENGTH, { imapdir_list_alloc, diff --git a/src/lib-storage/list/mailbox-list-maildir.h b/src/lib-storage/list/mailbox-list-maildir.h index 8426131411..277f820c74 100644 --- a/src/lib-storage/list/mailbox-list-maildir.h +++ b/src/lib-storage/list/mailbox-list-maildir.h @@ -5,7 +5,7 @@ /* Don't allow creating too long mailbox names. They could start causing problems when they reach the limit. */ -#define MAILDIR_MAX_CREATE_MAILBOX_NAME_LENGTH (PATH_MAX/2) +#define MAILDIR_MAX_CREATE_MAILBOX_NAME_LENGTH (MAILBOX_LIST_NAME_MAX_LENGTH/2) struct maildir_mailbox_list { struct mailbox_list list; diff --git a/src/lib-storage/mailbox-list.h b/src/lib-storage/mailbox-list.h index dc0eef8d31..5cdacbe249 100644 --- a/src/lib-storage/mailbox-list.h +++ b/src/lib-storage/mailbox-list.h @@ -4,6 +4,12 @@ #include "mail-types.h" #include "mail-error.h" +#ifdef PATH_MAX +# define MAILBOX_LIST_NAME_MAX_LENGTH PATH_MAX +#else +# define MAILBOX_LIST_NAME_MAX_LENGTH 4096 +#endif + struct mail_namespace; struct mail_storage; struct mailbox_list;