diff options
author | Phil Pennock <pdp@exim.org> | 2011-08-27 16:19:48 -0700 |
---|---|---|
committer | Phil Pennock <pdp@exim.org> | 2011-08-27 16:19:48 -0700 |
commit | 555ae6af39312f43b1d38d8da05cf4368b933015 (patch) | |
tree | 8312376cfb2e4307c22ea83216b0952aa9c36832 /src | |
parent | 7f2a2a43f103bf22970a2b87ad8106f1a57b3d57 (diff) |
Make maildir_use_size_file expandable.
Patch from Heiko Schlittermann.
Fixes bug 1089
Diffstat (limited to 'src')
-rw-r--r-- | src/src/transports/appendfile.c | 11 | ||||
-rw-r--r-- | src/src/transports/appendfile.h | 1 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/src/transports/appendfile.c b/src/src/transports/appendfile.c index a9283f696..11c59bb0b 100644 --- a/src/src/transports/appendfile.c +++ b/src/src/transports/appendfile.c @@ -36,6 +36,10 @@ stored in the publicly visible instance block - these are flagged with the opt_public flag. */ optionlist appendfile_transport_options[] = { +#ifdef SUPPORT_MAILDIR + { "*expand_maildir_use_size_file", opt_stringptr, + (void *)offsetof(appendfile_transport_options_block, expand_maildir_use_size_file) }, +#endif { "*set_use_fcntl_lock",opt_bool | opt_hidden, (void *)offsetof(appendfile_transport_options_block, set_use_fcntl) }, { "*set_use_flock_lock",opt_bool | opt_hidden, @@ -103,7 +107,7 @@ optionlist appendfile_transport_options[] = { (void *)offsetof(appendfile_transport_options_block, maildir_retries) }, { "maildir_tag", opt_stringptr, (void *)offsetof(appendfile_transport_options_block, maildir_tag) }, - { "maildir_use_size_file", opt_bool, + { "maildir_use_size_file", opt_expand_bool, (void *)offsetof(appendfile_transport_options_block, maildir_use_size_file ) } , { "maildirfolder_create_regex", opt_stringptr, (void *)offsetof(appendfile_transport_options_block, maildirfolder_create_regex ) }, @@ -182,6 +186,7 @@ appendfile_transport_options_block appendfile_transport_option_defaults = { NULL, /* quota_warn_threshold */ NULL, /* mailbox_size_string */ NULL, /* mailbox_filecount_string */ + NULL, /* expand_maildir_use_size_file */ US"^(?:cur|new|\\..*)$", /* maildir_dir_regex */ NULL, /* maildir_tag */ NULL, /* maildirfolder_create_regex */ @@ -270,6 +275,10 @@ dummy = dummy; uid = uid; gid = gid; +if (ob->expand_maildir_use_size_file) + ob->maildir_use_size_file = expand_check_condition(ob->expand_maildir_use_size_file, + US"`maildir_use_size_file` in transport", tblock->name); + /* Loop for quota, quota_filecount, quota_warn_threshold, mailbox_size, mailbox_filecount */ diff --git a/src/src/transports/appendfile.h b/src/src/transports/appendfile.h index d0c0e7239..52dc3baca 100644 --- a/src/src/transports/appendfile.h +++ b/src/src/transports/appendfile.h @@ -21,6 +21,7 @@ typedef struct { uschar *quota_warn_threshold; uschar *mailbox_size_string; uschar *mailbox_filecount_string; + uschar *expand_maildir_use_size_file; uschar *maildir_dir_regex; uschar *maildir_tag; uschar *maildirfolder_create_regex; |