${msg_size}
Size of the current message V8.10 and later
The size of a message is considered to be the number
of bytes in its headers and body. That size can be
declared or calculated. It is predeclared with the
SIZE= MAIL
From:
ESMTP parameter:
MAIL From:<liu@td.co.jp> SIZE=45621
Immediately after sendmail reads
the size value from the SIZE=
parameter, it stores that value
in the ${msg_size}
macro. The value is stored
before checks for validity are made and so can
contain nonnumeric characters. If the message lacks
a SIZE=
parameter, the ${msg_size}
macro will be undefined
(NULL
).
The message size is calculated again after the entire
message has been read (either from standard input,
the queue, or via SMTP) and the value in ${msg_size}
is updated
with that new value. If an external Milter program
(Create Milter Support on page
1170) is called, the ${msg_size}
is updated again because
that program might have changed the size of the
message.
The ${msg_size}
macro can be useful in the check_data
rule set (check_data on page 705) which is
called just after the SMTP DATA
command and can be used to check
the size specified with SIZE=
. It can also be useful in the
check_compat
rule set (The check_compat Rule Set
on page 259) which is called just before delivery
and can be used to check the size of the received
message.
${msg_size}
is
transient. If it is defined in the configuration
file or in the command line, that definition can be
ignored by sendmail. Note that
a $&
prefix is necessary when ...
Get sendmail, 4th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.