(and add .new/.wen to previous change).
lines that are added by ACLs. The blank line that separates the message header
from the body is not counted.
lines that are added by ACLs. The blank line that separates the message header
from the body is not counted.
As with the special case of &$message_size$&, during the expansion of the
appendfile transport's maildir_tag option in maildir format, the value of
&$message_linecount$& is the precise size of the number of newlines in the
file that has been written (minus one for the blank line between the
header and the body).
As with the special case of &$message_size$&, during the expansion of the
appendfile transport's maildir_tag option in maildir format, the value of
&$message_linecount$& is the precise size of the number of newlines in the
file that has been written (minus one for the blank line between the
header and the body).
Here is an example of the use of this variable in a DATA ACL:
.code
Here is an example of the use of this variable in a DATA ACL:
.code
file name (even though &%maildir_tag%& puts it there) because maildir MUAs
sometimes add other information onto the ends of message file names.
file name (even though &%maildir_tag%& puts it there) because maildir MUAs
sometimes add other information onto the ends of message file names.
+Section &<<SECID136>>& contains further information.
.option quota_warn_message appendfile string&!! "see below"
.option quota_warn_message appendfile string&!! "see below"
name to the point where the test &[stat()]& call fails with ENAMETOOLONG,
the tag is dropped and the maildir file is created with no tag.
name to the point where the test &[stat()]& call fails with ENAMETOOLONG,
the tag is dropped and the maildir file is created with no tag.
.vindex "&$message_size$&"
Tags can be used to encode the size of files in their names; see
&%quota_size_regex%& above for an example. The expansion of &%maildir_tag%&
.vindex "&$message_size$&"
Tags can be used to encode the size of files in their names; see
&%quota_size_regex%& above for an example. The expansion of &%maildir_tag%&
be deferred. The expanded tag may contain any printing characters except &"/"&.
Non-printing characters in the string are ignored; if the resulting string is
empty, it is ignored. If it starts with an alphanumeric character, a leading
be deferred. The expanded tag may contain any printing characters except &"/"&.
Non-printing characters in the string are ignored; if the resulting string is
empty, it is ignored. If it starts with an alphanumeric character, a leading
+colon is inserted; this default has not proven to be the path that popular
+maildir implementations have chosen (but changing it in Exim would break
+backwards compatibility).
+For one common implementation, you might set:
+.code
+maildir_tag = ,S=${message_size}
+.endd
+but you should check the documentation of the other software to be sure.
+
+It is advisable to also set &%quota_size_regex%& when setting &%maildir_tag%&
+as this allows Exim to extract the size from your tag, instead of having to
+&[stat()]& each message file.
+.wen
.section "Using a maildirsize file" "SECID136"
.section "Using a maildirsize file" "SECID136"